diff --git a/.editorconfig b/.editorconfig index 6492fe0c6d..bb972a7778 100644 --- a/.editorconfig +++ b/.editorconfig @@ -6,13 +6,16 @@ charset = utf-8 end_of_line = lf insert_final_newline = true -[*.{js,php}] +[*.{js,php,vue,scss}] indent_style = tab insert_final_newline = true [Makefile] indent_style = tab +[renovate.json] +indent_style = tab + [*.yml] indent_style = space indent_size = 2 diff --git a/.github/ISSUE_TEMPLATE/bug.md b/.github/ISSUE_TEMPLATE/bug.md deleted file mode 100644 index dde4011fe5..0000000000 --- a/.github/ISSUE_TEMPLATE/bug.md +++ /dev/null @@ -1,100 +0,0 @@ ---- -name: 🐛 Bug -about: Have you encountered a bug? -title: '' -labels: bug, 0. to triage -assignees: '' -version: 0.1 ---- - - - -### Steps to reproduce -1. -2. -3. - -### Expected behaviour -Tell us what should happen - -### Actual behaviour -Tell us what happens instead - -### Calendar app -**Calendar app version:** (see apps admin page, e.g. 2.0.1) - -**CalDAV-clients used:** (Thunderbird Lightning, DAVx5, Evolution, macOS Calendar, etc) - -### Client configuration -**Browser:** (e.g. Firefox 48) - -**Operating system:** (e.g. Arch Linux) - -### Server configuration - -**Operating system**: (e.g. Debian 8) - -**Web server:** (e.g. Apache, Nginx,...) - -**Database:** (e.g. MariaDB, SQLite or PostgreSQL) - -**PHP version:** (e.g. 7.0.3) - -**Nextcloud Version:** (see admin page, e.g. 17.0.2) - -**Updated from an older installed version or fresh install:** - -**List of activated apps:** - -``` -If you have access to your command line run e.g.: -sudo -u www-data php occ app:list -from within your instance's installation folder -``` - -**Nextcloud configuration:** - -``` -If you have access to your command line run e.g.: -sudo -u www-data php occ config:list system -from within your instance's installation folder - -or - -Insert your config.php content here -Make sure to remove all sensitive content such as passwords. (e.g. database password, passwordsalt, secret, smtp password, …) -``` - -### Logs -#### Web server error log (e.g. /var/log/apache) -``` -Insert your webserver log here -``` - -#### Log file (data/nextcloud.log) -``` -Insert your nextcloud.log file here -``` - -#### Browser log -``` -Insert your browser log here, this could for example include: - -a) The javascript console log -b) The network log -c) ... -``` diff --git a/.github/ISSUE_TEMPLATE/bug.yml b/.github/ISSUE_TEMPLATE/bug.yml new file mode 100644 index 0000000000..3e3955d001 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/bug.yml @@ -0,0 +1,183 @@ +name: "Bug" +description: "Have you encountered a bug?" +labels: ["bug", "0 - to triage"] +body: + - type: markdown + attributes: + value: | + ### 👍Thanks for reporting issues back to Nextcloud! + This is the issue tracker of Nextcloud, if you have any support question please check out [the support on our website](https://nextcloud.com/support). + + This is the bug tracker for the web-calendar component. Find other components [in our Github Organisation](https://github.com/nextcloud/) + Everything that is related to the CalDAV server, meaning it does not only affect the web-calendar but also your mobile and desktop clients, belongs in [the Server repository](https://github.com/nextcloud/server). + + For reporting potential security issues please see [the security page on our website](https://nextcloud.com/security/). + + To make it possible for us to help you please fill out below information carefully. + + If you are a customer, please submit your issue directly in [the Nextcloud Portal](https://portal.nextcloud.com) so it gets resolved more quickly by our dedicated engineers. + + Note that Nextcloud is an open source project backed by Nextcloud GmbH. Most of our volunteers are home users and thus primarily care about issues that affect home users. Our paid engineers prioritize issues of our customers. If you are neither a home user nor a customer, consider paying somebody to fix your issue, do it yourself or become a customer. + - type: textarea + id: reproduce + attributes: + label: Steps to reproduce + description: | + Describe the steps to reproduce the bug. + The better your description is _(go 'here', click 'there'…)_ the fastest you'll get an _(accurate)_ answer. + value: | + 1. + 2. + 3. + validations: + required: true + - type: textarea + id: expected-behavior + attributes: + label: Expected behavior + description: Tell us what should happen + validations: + required: true + - type: textarea + id: actual-behavior + attributes: + label: Actual behaviour + description: | + Tell us what happens instead + validations: + required: true + - type: markdown + attributes: + value: "## Calendar app" + - type: input + id: calendar-app-version + attributes: + label: Calendar app version + description: | + See apps admin page, e.g. 3.5.3 + - type: input + id: CalDAV-clients-used + attributes: + label: CalDAV-clients used + description: e.g. Thunderbird Lightning, DAVx5, Evolution, macOS Calendar, etc... + - type: markdown + attributes: + value: "## Client configuration" + - type: input + id: browser + attributes: + label: Browser + description: e.g Firefox 56 + - type: input + id: client-os + attributes: + label: Client operating system + description: e.g. Arch Linux + - type: markdown + attributes: + value: "## Server configuration" + - type: input + id: server-os + attributes: + label: Server operating system + description: e.g. Arch Linux + - type: dropdown + id: webserver + attributes: + label: Web server + description: | + Select Webserver serving Nextcloud Server. + _Describe in the "Additional info" section if you chose "Other"._ + options: + - "Apache" + - "Nginx" + - "Other" + - type: dropdown + id: database + attributes: + label: Database engine version + description: | + Select Database engine serving Nextcloud Server. + _Describe in the "Additional info" section if you chose "Other"._ + options: + - "MySQL" + - "MariaDB" + - "PostgreSQL" + - "SQlite" + - "Oracle" + - "Other" + - type: dropdown + id: php + attributes: + label: PHP engine version + description: | + Select PHP engine version serving Nextcloud Server. + _Describe in the "Additional info" section if you chose "Other"._ + options: + - "PHP 7.4" + - "PHP 8.0" + - "PHP 8.1" + - "PHP 8.2" + - "Other" + - type: input + id: nextcloud-version + attributes: + label: Nextcloud version + description: see admin page, e.g. 24.0.0 + - type: dropdown + id: fresh-install-update + attributes: + label: Updated from an older installed version or fresh install + options: + - "Updated from an older version" + - "Fresh install" + - type: textarea + id: list-active-apps + attributes: + label: List of activated apps + description: | + If you have access to your command line run e.g.: + ``sudo -u www-data php occ app:list`` + from within your instance's installation folder + render: Text + - type: textarea + id: config + attributes: + label: Nextcloud configuration + description: | + Provide information about your configuration. + ``sudo -u www-data php occ config:list system`` + from within your instance's installation folder. + render: Text + - type: markdown + attributes: + value: "## Logs" + - type: textarea + id: log + attributes: + label: Web server error log + description: | + Insert your webserver log here + render: Text + - type: textarea + id: log-file + attributes: + label: Log file + description: | + Insert your nextcloud.log file here + render: Text + - type: textarea + id: browser-log + attributes: + label: Browser log + description: | + Insert your browser log here, this could for example include: + a) The javascript console log + b) The network log + c) ... + render: Text + - type: textarea + id: additional-info + attributes: + label: Additional info + description: Any additional information related to the issue (ex. browser console errors, software versions). diff --git a/.github/ISSUE_TEMPLATE/feature_request.md b/.github/ISSUE_TEMPLATE/feature_request.md deleted file mode 100644 index 3ada03e4a7..0000000000 --- a/.github/ISSUE_TEMPLATE/feature_request.md +++ /dev/null @@ -1,37 +0,0 @@ ---- -name: "\U0001F680 Feature Request" -about: You have a neat idea that should be implemented? -title: '' -labels: enhancement-proposed, 0. to triage -assignees: '' -version: 0.1 ---- - - - - -**Is your feature request related to a problem? Please describe.** -A clear and concise description of what the problem is. Ex. I'm always frustrated when [...] - -**Describe the solution you'd like** -A clear and concise description of what you want to happen. - -**Describe alternatives you've considered** -A clear and concise description of any alternative solutions or features you've considered. - -**Additional context** -Add any other context or screenshots about the feature request here. diff --git a/.github/ISSUE_TEMPLATE/feature_request.yml b/.github/ISSUE_TEMPLATE/feature_request.yml new file mode 100644 index 0000000000..480cb26d82 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/feature_request.yml @@ -0,0 +1,37 @@ +name: "Feature request" +description: "You have a neat idea that should be implemented?" +labels: ["enhancement", "0 - to triage"] +body: + - type: markdown + attributes: + value: | + ### 👍 Thanks for reporting issues back to Nextcloud! + This is the issue tracker of Nextcloud, if you have any support question please check out [support](https://nextcloud.com/support) + To make it possible for us to help you please fill out below information carefully. + + If you have any questions, head over to the [forums](https://help.nextcloud.com/c/apps/calendar). + Note that Nextcloud is an open source project backed by Nextcloud GmbH. Most of our volunteers are home users and thus primarily care about issues that affect home users. Our paid engineers prioritize issues of our customers. If you are neither a home user nor a customer, consider paying somebody to implement the feature or enhancement you'd like, do it yourself or [become a customer](https://nextcloud.com/enterprise/). + - type: textarea + id: description-problem + attributes: + label: Is your feature request related to a problem? Please describe. + description: | + A clear and concise description of what the problem is. Ex. I'm always frustrated when [...] + - type: textarea + id: description-solution + attributes: + label: Describe the solution you'd like + description: | + A clear and concise description of what you want to happen. + - type: textarea + id: description-alternatives + attributes: + label: Describe alternatives you've considered + description: | + A clear and concise description of any alternative solutions or features you've considered. + - type: textarea + id: additional-context + attributes: + label: Additional context + description: | + Add any other context or screenshots about the feature request here. diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md deleted file mode 100644 index 4ec1c1a20d..0000000000 --- a/.github/PULL_REQUEST_TEMPLATE.md +++ /dev/null @@ -1,43 +0,0 @@ -## Description - -Please give a brief summary of your changes and which issue they address. - -Fixes # (issue) - -### Type of change - -Please delete options that are not relevant. - -- [ ] Bug fix (non-breaking change which fixes an issue) -- [ ] New feature (non-breaking change which adds functionality) -- [ ] Breaking change (fix or feature that would cause existing functionality to not work as expected) -- [ ] This change requires a documentation update - -### How to test / use your changes? - -Please provide instructions how to test your changes - -1. Step A -2. Step B -3. Step C - -### UI Changes - -In case you changed, added or removed UI elements, please provide a set of before / after screenshots: - -| Before | After | -|:---------:|:------:| -|xxxxxxx|xxxxx| - - -### Checklist: - -- [ ] My code follows the style guidelines of this project -- [ ] I signed off my changes (`git commit -sm "Your commit message"`) -- [ ] I have performed a self-review of my own code -- [ ] I have commented my code, particularly in hard-to-understand areas -- [ ] I have made corresponding changes to the documentation -- [ ] My changes generate no new warnings -- [ ] I have added tests that prove my fix is effective or that my feature works -- [ ] New and existing unit tests pass locally with my changes - diff --git a/.github/dependabot.yml b/.github/dependabot.yml deleted file mode 100644 index d7a0653d9f..0000000000 --- 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/workflows/app-code-check.yml b/.github/workflows/app-code-check.yml deleted file mode 100644 index 8641c13274..0000000000 --- a/.github/workflows/app-code-check.yml +++ /dev/null @@ -1,32 +0,0 @@ -name: PHP AppCode Check - -on: - pull_request: - push: - branches: - - master - -jobs: - unit-tests: - runs-on: ubuntu-latest - strategy: - matrix: - php-versions: ['7.4'] - nextcloud-versions: ['stable20'] - name: AppCode check - steps: - - name: Set up php${{ matrix.php-versions }} - uses: shivammathur/setup-php@master - with: - php-version: ${{ matrix.php-versions }} - extension-csv: ctype,curl,dom,gd,iconv,intl,json,mbstring,openssl,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: Checkout - uses: actions/checkout@master - with: - path: nextcloud/apps/calendar - - name: App Code check - working-directory: nextcloud - run: php occ app:check-code calendar diff --git a/.github/workflows/appstore-build-publish.yml b/.github/workflows/appstore-build-publish.yml new file mode 100644 index 0000000000..35167898db --- /dev/null +++ b/.github/workflows/appstore-build-publish.yml @@ -0,0 +1,167 @@ +# 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 + +name: Build and publish app release + +on: + release: + types: [published] + +env: + PHP_VERSION: 8.1 + +jobs: + build_and_publish: + runs-on: ubuntu-latest + + # Only allowed to be run on nextcloud-releases repositories + if: ${{ github.repository_owner == 'nextcloud-releases' }} + + steps: + - name: Check actor permission + uses: skjnldsv/check-actor-permission@e591dbfe838300c007028e1219ca82cc26e8d7c5 # v2.1 + 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@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 + with: + path: ${{ env.APP_NAME }} + + - name: Get appinfo data + id: appinfo + uses: skjnldsv/xpath-action@7e6a7c379d0e9abc8acaef43df403ab4fc4f770c # 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@0ce2ed60f6df073a62a77c0a4958dd0fc68e32e7 # v2.1 + id: versions + # Continue if no package.json + continue-on-error: true + with: + path: ${{ env.APP_NAME }} + fallbackNode: "^16" + fallbackNpm: "^7" + + - name: Set up node ${{ steps.versions.outputs.nodeVersion }} + # Skip if no package.json + if: ${{ steps.versions.outputs.nodeVersion }} + uses: actions/setup-node@5e21ff4d9bc1a8cf6de233a3057d20ec6b3fb69d # v3 + 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 }}" + + - name: Set up php ${{ env.PHP_VERSION }} + uses: shivammathur/setup-php@72ae4ccbe57f82bbe08411e84e2130bd4ba1c10f # v2 + with: + php-version: ${{ env.PHP_VERSION }} + coverage: none + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + + - name: Check composer.json + id: check_composer + uses: andstor/file-existence-action@20b4d2e596410855db8f9ca21e96fbe18e12930b # v2 + with: + files: "${{ env.APP_NAME }}/composer.json" + + - name: Install composer dependencies + if: steps.check_composer.outputs.files_exists == 'true' + run: | + cd ${{ env.APP_NAME }} + composer install --no-dev + + - name: Build ${{ env.APP_NAME }} + # Skip if no package.json + if: ${{ steps.versions.outputs.nodeVersion }} + run: | + cd ${{ env.APP_NAME }} + npm ci + npm run build + + - name: Check Krankerl config + id: krankerl + uses: andstor/file-existence-action@20b4d2e596410855db8f9ca21e96fbe18e12930b # v2 + 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.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' + run: | + cd ${{ env.APP_NAME }} + krankerl package + + - name: Package ${{ env.APP_NAME }} ${{ env.APP_VERSION }} with makefile + if: steps.krankerl.outputs.files_exists != 'true' + run: | + cd ${{ env.APP_NAME }} + make appstore + + - name: Checkout server ${{ fromJSON(steps.appinfo.outputs.result).nextcloud.min-version }} + continue-on-error: true + id: server-checkout + run: | + 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@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 + if: ${{ steps.server-checkout.outcome != 'success' }} + with: + submodules: true + repository: nextcloud/server + path: nextcloud + + - name: Sign app + run: | + # Extracting release + cd ${{ env.APP_NAME }}/build/artifacts + tar -xvf ${{ env.APP_NAME }}.tar.gz + cd ../../../ + # Setting up keys + 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 }} + # Rebuilding archive + cd ${{ env.APP_NAME }}/build/artifacts + tar -zcvf ${{ env.APP_NAME }}.tar.gz ${{ env.APP_NAME }} + + - name: Attach tarball to github release + uses: svenstaro/upload-release-action@2b9d2847a97b04d02ad5c3df2d3a27baa97ce689 # v2 + id: attach_to_release + with: + repo_token: ${{ secrets.GITHUB_TOKEN }} + file: ${{ env.APP_NAME }}/build/artifacts/${{ env.APP_NAME }}.tar.gz + asset_name: ${{ env.APP_NAME }}-${{ env.APP_VERSION }}.tar.gz + tag: ${{ github.ref }} + overwrite: true + + - name: Upload app to Nextcloud appstore + uses: nextcloud-releases/nextcloud-appstore-push-action@a011fe619bcf6e77ddebc96f9908e1af4071b9c1 # v1 + with: + app_name: ${{ env.APP_NAME }} + appstore_token: ${{ secrets.APPSTORE_TOKEN }} + download_url: ${{ steps.attach_to_release.outputs.browser_download_url }} + app_private_key: ${{ secrets.APP_PRIVATE_KEY }} diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml deleted file mode 100644 index 80cf2d4f3d..0000000000 --- a/.github/workflows/build.yml +++ /dev/null @@ -1,24 +0,0 @@ -name: Build - -on: - pull_request: - push: - branches: - - master - -jobs: - build: - runs-on: ubuntu-latest - name: Build - steps: - - uses: actions/checkout@master - - name: Set up Node - uses: actions/setup-node@v1 - with: - node-version: 12.x - - name: npm install - run: npm ci - - name: build - run: npm run build - env: - CI: true diff --git a/.github/workflows/fixup.yml b/.github/workflows/fixup.yml new file mode 100644 index 0000000000..9548d19f2d --- /dev/null +++ b/.github/workflows/fixup.yml @@ -0,0 +1,33 @@ +# 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 + +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: + if: github.event.pull_request.draft == false + + permissions: + pull-requests: write + name: Block fixup and squash commits + + runs-on: ubuntu-latest + + steps: + - name: Run check + uses: skjnldsv/block-fixup-merge-action@42d26e1b536ce61e5cf467d65fb76caf4aa85acf # v1 + 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 0000000000..7a2e9f0581 --- /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 +# +# Use lint-eslint together with lint-eslint-when-unrelated to make eslint a required check for GitHub actions +# https://docs.github.com/en/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/troubleshooting-required-status-checks#handling-skipped-but-required-checks + +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 0000000000..df349d9615 --- /dev/null +++ b/.github/workflows/lint-eslint.yml @@ -0,0 +1,62 @@ +# 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 +# +# Use lint-eslint together with lint-eslint-when-unrelated to make eslint a required check for GitHub actions +# https://docs.github.com/en/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/troubleshooting-required-status-checks#handling-skipped-but-required-checks + +name: Lint eslint + +on: + pull_request: + paths: + - '.github/workflows/**' + - 'src/**' + - 'appinfo/info.xml' + - 'package.json' + - 'package-lock.json' + - 'tsconfig.json' + - '.eslintrc.*' + - '.eslintignore' + - '**.js' + - '**.ts' + - '**.vue' + +permissions: + contents: read + +concurrency: + group: lint-eslint-${{ github.head_ref || github.run_id }} + cancel-in-progress: true + +jobs: + lint: + runs-on: ubuntu-latest + + name: eslint + + steps: + - name: Checkout + uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 + + - name: Read package.json node and npm engines version + uses: skjnldsv/read-package-engines-version-actions@0ce2ed60f6df073a62a77c0a4958dd0fc68e32e7 # v2.1 + id: versions + with: + fallbackNode: '^16' + fallbackNpm: '^7' + + - name: Set up node ${{ steps.versions.outputs.nodeVersion }} + uses: actions/setup-node@5e21ff4d9bc1a8cf6de233a3057d20ec6b3fb69d # v3 + 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 + run: npm ci + + - name: Lint + run: npm run lint diff --git a/.github/workflows/lint-info-xml.yml b/.github/workflows/lint-info-xml.yml new file mode 100644 index 0000000000..7b9e1c99cf --- /dev/null +++ b/.github/workflows/lint-info-xml.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 + +name: Lint info.xml + +on: + pull_request: + push: + branches: + - main + - master + - stable* + +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 + + name: info.xml lint + steps: + - name: Checkout + uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 + + - 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@39155a91429af431d65fafc21fa52ba5c4f5cb71 # v1.1 + 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 0000000000..d123fdeefa --- /dev/null +++ b/.github/workflows/lint-php-cs.yml @@ -0,0 +1,40 @@ +# 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 + +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@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 + + - name: Set up php + uses: shivammathur/setup-php@72ae4ccbe57f82bbe08411e84e2130bd4ba1c10f # v2 + with: + php-version: 8.1 + 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 0000000000..ca2149a241 --- /dev/null +++ b/.github/workflows/lint-php.yml @@ -0,0 +1,60 @@ +# 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 + +name: Lint php + +on: + pull_request: + push: + branches: + - main + - master + - stable* + +permissions: + contents: read + +concurrency: + group: lint-php-${{ github.head_ref || github.run_id }} + cancel-in-progress: true + +jobs: + php-lint: + runs-on: ubuntu-latest + strategy: + matrix: + php-versions: [ "7.4", "8.0", "8.1", "8.2" ] + + name: php-lint + + steps: + - name: Checkout + uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 + + - name: Set up php ${{ matrix.php-versions }} + uses: shivammathur/setup-php@72ae4ccbe57f82bbe08411e84e2130bd4ba1c10f # v2 + with: + php-version: ${{ matrix.php-versions }} + 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 + 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 e8329e14a1..0000000000 --- a/.github/workflows/lint.yml +++ /dev/null @@ -1,70 +0,0 @@ -name: Lint - -on: - pull_request: - push: - branches: - - master - -jobs: - xml-linters: - runs-on: ubuntu-latest - steps: - - name: Checkout - uses: actions/checkout@master - - 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.2', '7.3', '7.4', '8.0'] - name: php${{ matrix.php-versions }} lint - steps: - - name: Checkout - uses: actions/checkout@master - - 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@master - - name: Set up Node - uses: actions/setup-node@v1 - with: - node-version: 12.x - - 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@master - - 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-test.yml b/.github/workflows/npm-test.yml index ba4b72bf9c..fa6b654976 100644 --- a/.github/workflows/npm-test.yml +++ b/.github/workflows/npm-test.yml @@ -1,10 +1,5 @@ name: JS Tests - -on: - pull_request: - push: - branches: - - master +on: pull_request jobs: jest: @@ -12,16 +7,24 @@ jobs: strategy: matrix: - node-versions: [12.x] + node-version: [16, 18] + npm-version: [8] + include: + - node-version: 14 + npm-version: 7 + + name: node${{ matrix.node-version }} - name: node${{ matrix.node-versions }} steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@f43a0e5ff2bd294095638e18286ca9a3d1956744 # v3 - - name: Set up node ${{ matrix.node-versions }} - uses: actions/setup-node@v1 + - name: Set up node ${{ matrix.node-version }} + uses: actions/setup-node@5e21ff4d9bc1a8cf6de233a3057d20ec6b3fb69d # v3 with: - node-versions: ${{ matrix.node-versions }} + node-version: ${{ matrix.node-version }} + + - name: Set up npm ${{ matrix.npm-version }} + run: npm i -g npm@${{ matrix.npm-version }} - name: Install dependencies run: npm ci @@ -30,9 +33,22 @@ jobs: run: npm run test:coverage - name: Upload coverage to Codecov - uses: codecov/codecov-action@v1 + uses: codecov/codecov-action@eaaf4bedf32dbdc6b720b63067d99c4d77d6047d # v3 with: token: ${{ secrets.CODECOV_TOKEN }} file: ./coverage/coverage-final.json flags: javascript fail_ci_if_error: true + + 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 5c7699dcc2..9bea387a54 100644 --- a/.github/workflows/package.yml +++ b/.github/workflows/package.yml @@ -1,32 +1,31 @@ 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@master + uses: actions/checkout@f43a0e5ff2bd294095638e18286ca9a3d1956744 # v3 - name: Set up Node - uses: actions/setup-node@v1 + uses: actions/setup-node@7c12f8017d5436eb855f1ed4399f037a36fbd9e8 # v2 with: - node-version: 12.x + node-version: 15 - name: Set up php$ - uses: shivammathur/setup-php@master + uses: shivammathur/setup-php@321f8d7d9abb7844b48c02c691274a99d2367205 with: - php-version: 7.4 - tools: composer:v1 + php-version: 8.0 + tools: composer extensions: ctype,curl,dom,gd,iconv,intl,json,mbstring,openssl,posix,sqlite,xml,zip,gmp coverage: none - 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@0b7f8abb1508181956e8e162db84b466c27e18ce # v3 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 40c49ac3e5..1bb5539df3 100644 --- a/.github/workflows/php-test.yml +++ b/.github/workflows/php-test.yml @@ -1,52 +1,40 @@ name: PHP Tests - -on: - pull_request: - push: - branches: - - master +on: pull_request jobs: unit-tests: runs-on: ubuntu-latest strategy: matrix: - php-versions: ['7.3', '7.4'] - nextcloud-versions: ['stable20', 'stable21', 'master'] + php-versions: ['8.0', '8.1', '8.2'] + nextcloud-versions: ['master', 'stable27', 'stable26'] include: - - php-versions: '7.2' - nextcloud-versions: 'stable20' - - php-versions: '8.0' - nextcloud-versions: 'stable21' - - php-versions: '8.0' - nextcloud-versions: 'master' + - php-versions: '7.4' + nextcloud-versions: 'stable25' + - php-versions: '8.1' + nextcloud-versions: 'stable25' 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@321f8d7d9abb7844b48c02c691274a99d2367205 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.2' }} + 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@master + 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: Downgrade phpunit for php7.2 - if: ${{ matrix.php-versions == '7.2' }} - working-directory: nextcloud/apps/calendar - run: composer update christophwurst/nextcloud_testing -W - name: Install dependencies working-directory: nextcloud/apps/calendar run: composer install @@ -55,5 +43,71 @@ jobs: run: composer run test - name: Upload coverage to Codecov if: ${{ matrix.nextcloud-versions == 'master' }} - working-directory: nextcloud/apps/calendar - run: curl -s https://codecov.io/bash | bash -s - -t ${{ secrets.CODECOV_TOKEN }} -F php -f clover.unit.xml -Z + uses: codecov/codecov-action@eaaf4bedf32dbdc6b720b63067d99c4d77d6047d # v3 + with: + token: ${{ secrets.CODECOV_TOKEN }} + file: nextcloud/apps/calendar/clover.unit.xml + flags: php + fail_ci_if_error: true + verbose: true + + integration-tests: + runs-on: ubuntu-latest + strategy: + matrix: + php-versions: [ '8.0', '8.1', '8.2' ] + nextcloud-versions: [ 'master'] + include: + - php-versions: '7.4' + nextcloud-versions: 'stable25' + - php-versions: '8.1' + nextcloud-versions: 'stable26' + - php-versions: '8.1' + nextcloud-versions: 'stable27' + 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@321f8d7d9abb7844b48c02c691274a99d2367205 + 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.2' }} + 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 0000000000..5976f5601e --- /dev/null +++ b/.github/workflows/pr-feedback.yml @@ -0,0 +1,29 @@ +name: 'Ask for feedback on PRs' +on: + schedule: + - cron: '30 1 * * *' + +jobs: + pr-feedback: + runs-on: ubuntu-22.04 + steps: + - name: The get-github-handles-from-website action + uses: marcelklehr/get-github-handles-from-website-action@a739600f6b91da4957f51db0792697afbb2f143c # v1.0.0 + id: scrape + with: + website: 'https://nextcloud.com/team/' + - uses: marcelklehr/pr-feedback-action@601109aa729eb4c8d6d0ece7567b9d4901db4aef + 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! + days-before-feedback: 14 + start-date: "2023-07-10" + exempt-authors: "${{ steps.scrape.outputs.users }},nextcloud-command" + exempt-bots: true diff --git a/.github/workflows/psalm-matrix.yml b/.github/workflows/psalm-matrix.yml new file mode 100644 index 0000000000..543958ac3a --- /dev/null +++ b/.github/workflows/psalm-matrix.yml @@ -0,0 +1,62 @@ +# 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 + +name: Static analysis + +on: + pull_request: + push: + branches: + - master + - main + - stable* + +concurrency: + group: psalm-${{ github.head_ref || github.run_id }} + cancel-in-progress: true + +jobs: + static-analysis: + runs-on: ubuntu-latest + strategy: + # do not stop on another job's failure + fail-fast: false + matrix: + ocp-version: [ 'dev-master', 'dev-stable27', 'dev-stable26', 'dev-stable25' ] + + name: Nextcloud ${{ matrix.ocp-version }} + steps: + - name: Checkout + uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 + + - name: Set up php + uses: shivammathur/setup-php@72ae4ccbe57f82bbe08411e84e2130bd4ba1c10f # v2 + with: + php-version: 8.0 + 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 + 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/.gitignore b/.gitignore index 8dc2ec4bb0..96289f168c 100644 --- a/.gitignore +++ b/.gitignore @@ -62,7 +62,8 @@ build/.sass-cache/ ### Composer ### composer.phar -vendor/ +/vendor/ +/vendor-bin/*/vendor # vim ex mode .vimrc @@ -93,7 +94,7 @@ CVS/* RCS/* /.project -.php_cs.cache +.php-cs-fixer.cache .phpunit.result.cache coverage/ diff --git a/.nextcloudignore b/.nextcloudignore index 20fdd3c153..c4cff8f51b 100644 --- a/.nextcloudignore +++ b/.nextcloudignore @@ -6,7 +6,8 @@ .gitlab-ci.yml .idea .nextcloudignore -.php_cs.dist +.php-cs-fixer.dist.php +.php-cs-fixer.cache .scrutinizer.yml .stylelintignore .stylelintrc @@ -24,8 +25,12 @@ package.json package-lock.json phpunit.unit.xml README.md +/psalm.xml screenshots src +stylelint.config.js tests timezones +/vendor/bin +/vendor-bin webpack.* diff --git a/.php_cs.dist b/.php-cs-fixer.dist.php similarity index 100% rename from .php_cs.dist rename to .php-cs-fixer.dist.php diff --git a/.stylelintignore b/.stylelintignore index a30f78560e..c01a6674ea 100644 --- a/.stylelintignore +++ b/.stylelintignore @@ -1 +1 @@ -/src/fonts +src/fonts \ No newline at end of file diff --git a/.stylelintrc b/.stylelintrc deleted file mode 100644 index 86a8cc60e7..0000000000 --- a/.stylelintrc +++ /dev/null @@ -1,35 +0,0 @@ -{ - "extends": "stylelint-config-recommended-scss", - "rules": { - "indentation": "tab", - "selector-type-no-unknown": null, - "number-leading-zero": null, - "rule-empty-line-before": [ - "always", - { - "ignore": [ - "after-comment", "inside-block" - ] - } - ], - "declaration-empty-line-before": [ - "never", - { - "ignore": [ - "after-declaration" - ] - } - ], - "comment-empty-line-before": null, - "selector-type-case": null, - "selector-list-comma-newline-after": null, - "no-descending-specificity": null, - "string-quotes": "single" - }, - "plugins": [ - "stylelint-scss" - ], - "ignoreFiles": [ - "css/public/*" - ] -} diff --git a/.tx/config b/.tx/config index 9a4394e89e..394f1b83e0 100644 --- a/.tx/config +++ b/.tx/config @@ -1,9 +1,10 @@ [main] -host = https://www.transifex.com -lang_map = bg_BG: bg, cs_CZ: cs, fi_FI: fi, hu_HU: hu, nb_NO: nb, sk_SK: sk, th_TH: th, ja_JP: ja +host = https://www.transifex.com +lang_map = ja_JP: ja, bg_BG: bg, cs_CZ: cs, fi_FI: fi, hu_HU: hu, nb_NO: nb, sk_SK: sk, th_TH: th -[nextcloud.calendar] +[o:nextcloud:p:nextcloud:r:calendar] file_filter = translationfiles//calendar.po source_file = translationfiles/templates/calendar.pot source_lang = en -type = PO +type = PO + diff --git a/CHANGELOG.md b/CHANGELOG.md index d2ec4dc067..ee7acf237a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,414 @@ + # Changelog +## 4.5.0 - unreleased +### Added +- Year grid view +- Talk rooms for appointments are back +- Location and description links clickable +- App config option to hide resources tab +### Changed +- Talk url now written to location +- "New event" button renamed to "Event" +- Categories extended to include system tags and already used categories +### Fixed +- Categories for public calendars + +## 4.4.4 – 2023–08-03 +### Fixed +- Navigation button positioning +- Navigation toggle overlap +- Long email addresses in sharing + +## 4.4.3 – 2023–06-29 +### Changed +- Frontend now uses NcSelect +### Fixed +- Empty events + +## 4.4.2 – 2023–06-12 +### Fixed +- Temporarily revert Talk room feature for appointments due to upgrade issues + +## 4.4.1 - 2023-06-09 +### Fixed +- Allow dynamic autoloading for classes added during upgrade + +## 4.4.0 - 2023-06-07 +### Added +- Create Talk rooms for appointments +### Changed +- Add back PHP 7.4 support +- Add save button to calendar settings +- Icon for appointment confirmation dialogue +- Include booking person's name in appointment event +- Add server details and ToS link to public sharing page +### Fixed +- Public sharing footer +- Date formatting in list view +- Import button alignment +- Use locale instead of language +- DAV urls for attachments +- Calendar booking notifications +- Calendar invitees buttons (width and space between) + +## 4.3.2 - 2023-04-06 +### Fixed +- Attachments folder +- Appointments default visibility +- Sidebar editor timezone +- Share indicator +- Date picker + +## 4.3.1 - 2023-03-22 +### Changed +- Webpack version + +## 4.3.0 - 2023-03-20 +### Added +- File attachments for calendar events +- Organizer booking emails +### Changed +- Lazy load dashboard component +- Wider input for recurrences +### Fixed +- Exception handing for booking controller +- Current day color sticker +- Calendar export button +- Share dialogue focus loss +- Disabling appointments +- Color picker + +## 4.2.2 - 2023-01-26 +### Fixed +- Disabling appointments feature +- can_subscribe_link fallback +- Save and edit methods in calendar modal + +## 4.2.1 - 2023-01-05 +### Fixed +- Reminder form field width +- Calendar export + +## 4.2.0 - 2022-12-29 +### Added +- Calendar sharing and settings modal +- Parameters to allow / disallow sharing via link +- Error handling for Widget SVG generation +### Changed +- Set round-icons: true for clients +### Fixed +- Equalize slot booking button width +- Trash bin buttons +- Black calendar icon on dashboard widget in dark mode +- Unclear field label for appointment config +- Typo in meditation.svg +- Duplicate location in booking email +- Widget search results returning past events +- Handling of EMail VALARMs + +## 4.1.1 - 2022-12-15 +### Fixed +- Disabled timezone popup +- Style for timezone popup +- Location in booking VEVENT +- Bottom part cut off for public calendar +- Lost app navigation styles +- Delete X-ALT-DESC property when changing description +- Clipboard copy + +## 4.1.0 - 2022-11-02 +### Added +- IButtonWidget and IIconWidget implementation +### Fixed +- Widget Icon in Dashboard +- Appointment detail styling for small screen +- Appointment overview page design + +## 4.0.1 - 2022-10-18 +### Changed +- Remove iconfont and associated dependecies +### Fixed +- Appointment overview page design +- Appointment details styling +- Title only added in week view + +## 4.0.0 - 2022-10-13 +### Added +- New design +- Primary light background to month, week and header +- Booking email with .ics for the event +### Changed +- Drop Nextcloud 22-24 support +- Remove unused icons and icon stylesheets +- Rename elements to items +- More information in booking confirmation email +- Appointments page redesign +### Fixed +- Some translation issues with whitespaces +- Padding of left sidebar header +- Cut off datetime picker in simple editor +- Contrast for day header +- Category Selection +- Missing background color for appoitments + +## 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 diff --git a/Makefile b/Makefile index 7cc29e20d7..6541f63baa 100644 --- a/Makefile +++ b/Makefile @@ -4,7 +4,7 @@ all: dev-setup lint build-js-production test test-php # Dev env management -dev-setup: clean npm-init +dev-setup: composer-install clean npm-init npm-init: npm ci @@ -13,6 +13,9 @@ composer-init: composer install --prefer-dist composer update --prefer-dist +composer-install: + composer install --prefer-dist + npm-update: npm update diff --git a/README.md b/README.md index 103dbfd11f..58e0538f16 100644 --- a/README.md +++ b/README.md @@ -1,11 +1,11 @@ # Nextcloud Calendar -[![Build Status](https://travis-ci.org/nextcloud/calendar.svg?branch=master)](https://travis-ci.org/nextcloud/calendar) -[![Coverage Status](https://coveralls.io/repos/github/nextcloud/calendar/badge.svg?branch=master)](https://coveralls.io/github/nextcloud/calendar?branch=master) +![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/screenshots/master/apps/Calendar/calendar_application.png) ## :blue_heart: :tada: Why is this so awesome? @@ -23,12 +23,13 @@ ## :hammer_and_wrench: Installation -In your Nextcloud, simply navigate to »Apps«, choose the category »Organization«, find the Calendar app and enable it. -Then open the Calendar app from the app menu. +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). + +Release tarballs are hosted at https://github.com/nextcloud-releases/calendar/releases. ## :satellite: Support -If you need assistance or want to ask a question about Calendar, you are welcome to [ask for support](https://help.nextcloud.com/c/apps/calendar) in our Forums or the [IRC-Channel](https://webchat.freenode.net/?channels=nextcloud-calendar). +If you need assistance or want to ask a question about Calendar, you are welcome to [ask for support](https://help.nextcloud.com/c/apps/calendar) in our Forums. If you have found a bug, feel free to open a new Issue on GitHub. Keep in mind, that this repository only manages the frontend. If you find bugs or have problems with the CalDAV-Backend, you should ask the team at [Nextcloud server](https://github.com/nextcloud/server) for help! @@ -42,30 +43,12 @@ If you find bugs or have problems with the CalDAV-Backend, you should ask the te ## Maintainers -- [Georg Ehrke](https://github.com/georgehrke) -- [Thomas Citharel](https://github.com/tcitworld) -- [and many more](https://github.com/nextcloud/calendar/graphs/contributors) - -If you’d like to join, just go through the [issue list](https://github.com/nextcloud/calendar/issues?utf8=✓&q=is%3Aopen+is%3Aissue+label%3A%22good+first+issue%22+) and fix some. :) -We’re also in [#nextcloud-calendar on freenode IRC](https://webchat.freenode.net/?channels=nextcloud-calendar). - -We’d like to thank [BrowserStack](https://www.browserstack.com) for providing us with a free subscription. - -## Nightly builds / Pre-releases - -Instead of setting everything up manually, you can just [download the nightly builds](https://nightly.portknox.net/calendar/?C=M;O=D) or [download a pre-release](https://github.com/nextcloud/calendar/releases) instead. -Nightly builds are updated every 24 hours, and are pre-configured with all the needed dependencies. - -1. Download -2. Extract the tar archive to 'path-to-nextcloud/apps' -3. Navigate to »Apps«, choose the category »Productivity«, find the Calendar app and enable it. - -The nightly builds are provided by [Portknox.net](https://portknox.net) - -When reporting issues, please mention the date in the tar archive's name. +* [Nextcloud Groupware team](https://github.com/nextcloud/groupware/#members) ## Build the app +Make sure you have all the [necessary prerequisites](https://docs.nextcloud.com/server/latest/admin_manual/installation/source_installation.html#prerequisites-for-manual-installation) for manual installs + ``` bash # set up and build for production make diff --git a/appinfo/info.xml b/appinfo/info.xml index f555cf31bd..17148a1ddd 100644 --- a/appinfo/info.xml +++ b/appinfo/info.xml @@ -15,32 +15,31 @@ * ☑️ Tasks! See tasks with a due date directly in the calendar * 🙈 **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. ]]> - 2.1.3 + 4.6.0-alpha.1 agpl - Georg Ehrke - Thomas Citharel + Anna Larch + Nextcloud Groupware Team Calendar - https://docs.nextcloud.com/server/latest/user_manual/en/pim/calendar.html + 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 https://github.com/nextcloud/calendar/ https://github.com/nextcloud/calendar/issues https://github.com/nextcloud/calendar.git - https://raw.githubusercontent.com/nextcloud/calendar/master/screenshots/view_week.png - https://raw.githubusercontent.com/nextcloud/calendar/master/screenshots/sidebar.png - https://raw.githubusercontent.com/nextcloud/calendar/master/screenshots/public_sharing.png - https://raw.githubusercontent.com/nextcloud/calendar/master/screenshots/sidebar_attendees.png - https://raw.githubusercontent.com/nextcloud/calendar/master/screenshots/sidebar_reminders.png + https://raw.githubusercontent.com/nextcloud/calendar/main/screenshots/week_new_event.png + https://raw.githubusercontent.com/nextcloud/calendar/main/screenshots/week_room_suggestion.png + https://raw.githubusercontent.com/nextcloud/calendar/main/screenshots/week_sidebar.png - + + - - - OCA\Calendar\RepairSteps\CurrentViewNameRepairStep - - + + OCA\Calendar\BackgroundJob\CleanUpOutdatedBookingsJob + calendar diff --git a/appinfo/routes.php b/appinfo/routes.php index 16878ec8be..533b426e4c 100644 --- a/appinfo/routes.php +++ b/appinfo/routes.php @@ -31,9 +31,16 @@ ['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'], + ['name' => 'booking#getBookableSlots', 'url' => '/appointment/{appointmentConfigId}/slots', 'verb' => 'GET'], + ['name' => 'booking#bookSlot', 'url' => '/appointment/{appointmentConfigId}/book', 'verb' => 'POST'], + ['name' => 'booking#confirmBooking', 'url' => '/appointment/confirm/{token}', 'verb' => 'GET'], // Public views ['name' => 'publicView#public_index_with_branding', 'url' => '/p/{token}', 'verb' => 'GET'], ['name' => 'publicView#public_index_with_branding', 'url' => '/p/{token}/{view}/{timeRange}', 'verb' => 'GET', 'postfix' => 'publicview.timerange'], @@ -51,5 +58,8 @@ ['name' => 'settings#setConfig', 'url' => '/v1/config/{key}', 'verb' => 'POST'], // Tools ['name' => 'email#sendEmailPublicLink', 'url' => '/v1/public/sendmail', 'verb' => 'POST'], + ], + 'resources' => [ + 'appointmentConfig' => ['url' => '/v1/appointment_configs'] ] ]; diff --git a/babel.config.js b/babel.config.js index 7dabfe46a2..8be4fc38bb 100644 --- a/babel.config.js +++ b/babel.config.js @@ -1,11 +1,3 @@ -module.exports = { - presets: [ - [ - '@babel/preset-env', - { - useBuiltIns: 'usage', - corejs: 3 - } - ] - ] -}; +const babelConfig = require('@nextcloud/babel-config') + +module.exports = babelConfig diff --git a/composer.json b/composer.json index 16f75ce110..d362797f4c 100644 --- a/composer.json +++ b/composer.json @@ -1,15 +1,44 @@ { - "require": { - "php": "^7.2|^8.0", - "nextcloud/coding-standard": "^0.5.0" + "config": { + "platform": { + "php": "7.4" + }, + "sort-packages": true, + "optimize-autoloader": true, + "autoloader-suffix": "Calendar", + "allow-plugins": { + "bamarni/composer-bin-plugin": true + } + }, + "autoload": { + "psr-4": { + "OCA\\Calendar\\": "lib/" + } }, - "require-dev": { - "christophwurst/nextcloud_testing": "0.12.4" + "require": { + "php": ">=7.4 <=8.2", + "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/*' -print0 | xargs -0 -n1 php -l", - "test": "phpunit --configuration phpunit.unit.xml --fail-on-warning" + "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: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 1096ebff70..bbecfb7e02 100644 --- a/composer.lock +++ b/composer.lock @@ -4,4230 +4,78 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "a3d1be3c6882ac506b76720a40f94bef", + "content-hash": "033087bf92c1ab2b4ec0fb3c4dd1ac7a", "packages": [ { - "name": "composer/semver", - "version": "3.2.4", + "name": "bamarni/composer-bin-plugin", + "version": "1.8.2", "source": { "type": "git", - "url": "https://github.com/composer/semver.git", - "reference": "a02fdf930a3c1c3ed3a49b5f63859c0c20e10464" + "url": "https://github.com/bamarni/composer-bin-plugin.git", + "reference": "92fd7b1e6e9cdae19b0d57369d8ad31a37b6a880" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/composer/semver/zipball/a02fdf930a3c1c3ed3a49b5f63859c0c20e10464", - "reference": "a02fdf930a3c1c3ed3a49b5f63859c0c20e10464", + "url": "https://api.github.com/repos/bamarni/composer-bin-plugin/zipball/92fd7b1e6e9cdae19b0d57369d8ad31a37b6a880", + "reference": "92fd7b1e6e9cdae19b0d57369d8ad31a37b6a880", "shasum": "" }, "require": { - "php": "^5.3.2 || ^7.0 || ^8.0" + "composer-plugin-api": "^2.0", + "php": "^7.2.5 || ^8.0" }, "require-dev": { - "phpstan/phpstan": "^0.12.54", - "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.2.4" - }, - "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": "2020-11-13T08:59:24+00:00" - }, - { - "name": "composer/xdebug-handler", - "version": "1.4.5", - "source": { - "type": "git", - "url": "https://github.com/composer/xdebug-handler.git", - "reference": "f28d44c286812c714741478d968104c5e604a1d4" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/composer/xdebug-handler/zipball/f28d44c286812c714741478d968104c5e604a1d4", - "reference": "f28d44c286812c714741478d968104c5e604a1d4", - "shasum": "" - }, - "require": { - "php": "^5.3.2 || ^7.0 || ^8.0", - "psr/log": "^1.0" - }, - "require-dev": { - "phpunit/phpunit": "^4.8.35 || ^5.7 || 6.5 - 8" - }, - "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/1.4.5" - }, - "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": "2020-11-13T08:04:11+00:00" - }, - { - "name": "doctrine/annotations", - "version": "1.11.1", - "source": { - "type": "git", - "url": "https://github.com/doctrine/annotations.git", - "reference": "ce77a7ba1770462cd705a91a151b6c3746f9c6ad" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/doctrine/annotations/zipball/ce77a7ba1770462cd705a91a151b6c3746f9c6ad", - "reference": "ce77a7ba1770462cd705a91a151b6c3746f9c6ad", - "shasum": "" - }, - "require": { - "doctrine/lexer": "1.*", - "ext-tokenizer": "*", - "php": "^7.1 || ^8.0" - }, - "require-dev": { - "doctrine/cache": "1.*", - "doctrine/coding-standard": "^6.0 || ^8.1", - "phpstan/phpstan": "^0.12.20", - "phpunit/phpunit": "^7.5 || ^9.1.5" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.11.x-dev" - } - }, - "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.11.1" - }, - "time": "2020-10-26T10:28:16+00:00" - }, - { - "name": "doctrine/lexer", - "version": "1.2.1", - "source": { - "type": "git", - "url": "https://github.com/doctrine/lexer.git", - "reference": "e864bbf5904cb8f5bb334f99209b48018522f042" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/doctrine/lexer/zipball/e864bbf5904cb8f5bb334f99209b48018522f042", - "reference": "e864bbf5904cb8f5bb334f99209b48018522f042", - "shasum": "" - }, - "require": { - "php": "^7.2 || ^8.0" - }, - "require-dev": { - "doctrine/coding-standard": "^6.0", - "phpstan/phpstan": "^0.11.8", - "phpunit/phpunit": "^8.2" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.2.x-dev" - } - }, - "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.1" - }, - "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": "2020-05-25T17:44:05+00:00" - }, - { - "name": "friendsofphp/php-cs-fixer", - "version": "v2.17.3", - "source": { - "type": "git", - "url": "https://github.com/FriendsOfPHP/PHP-CS-Fixer.git", - "reference": "bd32f5dd72cdfc7b53f54077f980e144bfa2f595" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/FriendsOfPHP/PHP-CS-Fixer/zipball/bd32f5dd72cdfc7b53f54077f980e144bfa2f595", - "reference": "bd32f5dd72cdfc7b53f54077f980e144bfa2f595", - "shasum": "" - }, - "require": { - "composer/semver": "^1.4 || ^2.0 || ^3.0", - "composer/xdebug-handler": "^1.2", - "doctrine/annotations": "^1.2", - "ext-json": "*", - "ext-tokenizer": "*", - "php": "^5.6 || ^7.0 || ^8.0", - "php-cs-fixer/diff": "^1.3", - "symfony/console": "^3.4.43 || ^4.1.6 || ^5.0", - "symfony/event-dispatcher": "^3.0 || ^4.0 || ^5.0", - "symfony/filesystem": "^3.0 || ^4.0 || ^5.0", - "symfony/finder": "^3.0 || ^4.0 || ^5.0", - "symfony/options-resolver": "^3.0 || ^4.0 || ^5.0", - "symfony/polyfill-php70": "^1.0", - "symfony/polyfill-php72": "^1.4", - "symfony/process": "^3.0 || ^4.0 || ^5.0", - "symfony/stopwatch": "^3.0 || ^4.0 || ^5.0" - }, - "require-dev": { - "johnkary/phpunit-speedtrap": "^1.1 || ^2.0 || ^3.0", - "justinrainbow/json-schema": "^5.0", - "keradus/cli-executor": "^1.4", - "mikey179/vfsstream": "^1.6", - "php-coveralls/php-coveralls": "^2.4.2", - "php-cs-fixer/accessible-object": "^1.0", - "php-cs-fixer/phpunit-constraint-isidenticalstring": "^1.2", - "php-cs-fixer/phpunit-constraint-xmlmatchesxsd": "^1.2.1", - "phpspec/prophecy-phpunit": "^1.1 || ^2.0", - "phpunit/phpunit": "^5.7.27 || ^6.5.14 || ^7.5.20 || ^8.5.13 || ^9.4.4 <9.5", - "phpunitgoodpractices/polyfill": "^1.5", - "phpunitgoodpractices/traits": "^1.9.1", - "sanmai/phpunit-legacy-adapter": "^6.4 || ^8.2.1", - "symfony/phpunit-bridge": "^5.1", - "symfony/yaml": "^3.0 || ^4.0 || ^5.0" - }, - "suggest": { - "ext-dom": "For handling output formats in XML", - "ext-mbstring": "For handling non-UTF8 characters.", - "php-cs-fixer/phpunit-constraint-isidenticalstring": "For IsIdenticalString constraint.", - "php-cs-fixer/phpunit-constraint-xmlmatchesxsd": "For XmlMatchesXsd constraint.", - "symfony/polyfill-mbstring": "When enabling `ext-mbstring` is not possible." - }, - "bin": [ - "php-cs-fixer" - ], - "type": "application", - "autoload": { - "psr-4": { - "PhpCsFixer\\": "src/" - }, - "classmap": [ - "tests/Test/AbstractFixerTestCase.php", - "tests/Test/AbstractIntegrationCaseFactory.php", - "tests/Test/AbstractIntegrationTestCase.php", - "tests/Test/Assert/AssertTokensTrait.php", - "tests/Test/IntegrationCase.php", - "tests/Test/IntegrationCaseFactory.php", - "tests/Test/IntegrationCaseFactoryInterface.php", - "tests/Test/InternalIntegrationCaseFactory.php", - "tests/Test/IsIdenticalConstraint.php", - "tests/TestCase.php" - ] - }, - "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/v2.17.3" - }, - "funding": [ - { - "url": "https://github.com/keradus", - "type": "github" - } - ], - "time": "2020-12-24T11:14:44+00:00" - }, - { - "name": "nextcloud/coding-standard", - "version": "v0.5.0", - "source": { - "type": "git", - "url": "https://github.com/nextcloud/coding-standard.git", - "reference": "742ed895ae76c10daf95e08488cfb3f554199f40" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/nextcloud/coding-standard/zipball/742ed895ae76c10daf95e08488cfb3f554199f40", - "reference": "742ed895ae76c10daf95e08488cfb3f554199f40", - "shasum": "" - }, - "require": { - "friendsofphp/php-cs-fixer": "^2.17", - "php": "^7.2|^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/v0.5.0" - }, - "time": "2021-01-11T14:15:58+00:00" - }, - { - "name": "php-cs-fixer/diff", - "version": "v1.3.1", - "source": { - "type": "git", - "url": "https://github.com/PHP-CS-Fixer/diff.git", - "reference": "dbd31aeb251639ac0b9e7e29405c1441907f5759" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/PHP-CS-Fixer/diff/zipball/dbd31aeb251639ac0b9e7e29405c1441907f5759", - "reference": "dbd31aeb251639ac0b9e7e29405c1441907f5759", - "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" - }, - { - "name": "SpacePossum" - } - ], - "description": "sebastian/diff v2 backport support for PHP5.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/v1.3.1" - }, - "time": "2020-10-14T08:39:05+00:00" - }, - { - "name": "psr/container", - "version": "1.0.0", - "source": { - "type": "git", - "url": "https://github.com/php-fig/container.git", - "reference": "b7ce3b176482dbbc1245ebf52b181af44c2cf55f" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/php-fig/container/zipball/b7ce3b176482dbbc1245ebf52b181af44c2cf55f", - "reference": "b7ce3b176482dbbc1245ebf52b181af44c2cf55f", - "shasum": "" - }, - "require": { - "php": ">=5.3.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.0.x-dev" - } - }, - "autoload": { - "psr-4": { - "Psr\\Container\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "PHP-FIG", - "homepage": "http://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/master" - }, - "time": "2017-02-14T16:28:37+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.3", - "source": { - "type": "git", - "url": "https://github.com/php-fig/log.git", - "reference": "0f73288fd15629204f9d42b7055f72dacbe811fc" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/php-fig/log/zipball/0f73288fd15629204f9d42b7055f72dacbe811fc", - "reference": "0f73288fd15629204f9d42b7055f72dacbe811fc", - "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": "http://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.3" - }, - "time": "2020-03-23T09:12:05+00:00" - }, - { - "name": "symfony/console", - "version": "v5.2.1", - "source": { - "type": "git", - "url": "https://github.com/symfony/console.git", - "reference": "47c02526c532fb381374dab26df05e7313978976" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/47c02526c532fb381374dab26df05e7313978976", - "reference": "47c02526c532fb381374dab26df05e7313978976", - "shasum": "" - }, - "require": { - "php": ">=7.2.5", - "symfony/polyfill-mbstring": "~1.0", - "symfony/polyfill-php73": "^1.8", - "symfony/polyfill-php80": "^1.15", - "symfony/service-contracts": "^1.1|^2", - "symfony/string": "^5.1" - }, - "conflict": { - "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" - }, - "require-dev": { - "psr/log": "~1.0", - "symfony/config": "^4.4|^5.0", - "symfony/dependency-injection": "^4.4|^5.0", - "symfony/event-dispatcher": "^4.4|^5.0", - "symfony/lock": "^4.4|^5.0", - "symfony/process": "^4.4|^5.0", - "symfony/var-dumper": "^4.4|^5.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": "Symfony Console Component", - "homepage": "https://symfony.com", - "keywords": [ - "cli", - "command line", - "console", - "terminal" - ], - "support": { - "source": "https://github.com/symfony/console/tree/v5.2.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": "2020-12-18T08:03:05+00:00" - }, - { - "name": "symfony/deprecation-contracts", - "version": "v2.2.0", - "source": { - "type": "git", - "url": "https://github.com/symfony/deprecation-contracts.git", - "reference": "5fa56b4074d1ae755beb55617ddafe6f5d78f665" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/5fa56b4074d1ae755beb55617ddafe6f5d78f665", - "reference": "5fa56b4074d1ae755beb55617ddafe6f5d78f665", - "shasum": "" - }, - "require": { - "php": ">=7.1" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.2-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/master" - }, - "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": "2020-09-07T11:33:47+00:00" - }, - { - "name": "symfony/event-dispatcher", - "version": "v5.2.1", - "source": { - "type": "git", - "url": "https://github.com/symfony/event-dispatcher.git", - "reference": "1c93f7a1dff592c252574c79a8635a8a80856042" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/1c93f7a1dff592c252574c79a8635a8a80856042", - "reference": "1c93f7a1dff592c252574c79a8635a8a80856042", - "shasum": "" - }, - "require": { - "php": ">=7.2.5", - "symfony/deprecation-contracts": "^2.1", - "symfony/event-dispatcher-contracts": "^2", - "symfony/polyfill-php80": "^1.15" - }, - "conflict": { - "symfony/dependency-injection": "<4.4" - }, - "provide": { - "psr/event-dispatcher-implementation": "1.0", - "symfony/event-dispatcher-implementation": "2.0" - }, - "require-dev": { - "psr/log": "~1.0", - "symfony/config": "^4.4|^5.0", - "symfony/dependency-injection": "^4.4|^5.0", - "symfony/error-handler": "^4.4|^5.0", - "symfony/expression-language": "^4.4|^5.0", - "symfony/http-foundation": "^4.4|^5.0", - "symfony/service-contracts": "^1.1|^2", - "symfony/stopwatch": "^4.4|^5.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": "Symfony EventDispatcher Component", - "homepage": "https://symfony.com", - "support": { - "source": "https://github.com/symfony/event-dispatcher/tree/v5.2.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": "2020-12-18T08:03:05+00:00" - }, - { - "name": "symfony/event-dispatcher-contracts", - "version": "v2.2.0", - "source": { - "type": "git", - "url": "https://github.com/symfony/event-dispatcher-contracts.git", - "reference": "0ba7d54483095a198fa51781bc608d17e84dffa2" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/0ba7d54483095a198fa51781bc608d17e84dffa2", - "reference": "0ba7d54483095a198fa51781bc608d17e84dffa2", - "shasum": "" - }, - "require": { - "php": ">=7.2.5", - "psr/event-dispatcher": "^1" - }, - "suggest": { - "symfony/event-dispatcher-implementation": "" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.2-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.2.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": "2020-09-07T11:33:47+00:00" - }, - { - "name": "symfony/filesystem", - "version": "v5.2.1", - "source": { - "type": "git", - "url": "https://github.com/symfony/filesystem.git", - "reference": "fa8f8cab6b65e2d99a118e082935344c5ba8c60d" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/filesystem/zipball/fa8f8cab6b65e2d99a118e082935344c5ba8c60d", - "reference": "fa8f8cab6b65e2d99a118e082935344c5ba8c60d", - "shasum": "" - }, - "require": { - "php": ">=7.2.5", - "symfony/polyfill-ctype": "~1.8" - }, - "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": "Symfony Filesystem Component", - "homepage": "https://symfony.com", - "support": { - "source": "https://github.com/symfony/filesystem/tree/v5.2.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": "2020-11-30T17:05:38+00:00" - }, - { - "name": "symfony/finder", - "version": "v5.2.1", - "source": { - "type": "git", - "url": "https://github.com/symfony/finder.git", - "reference": "0b9231a5922fd7287ba5b411893c0ecd2733e5ba" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/finder/zipball/0b9231a5922fd7287ba5b411893c0ecd2733e5ba", - "reference": "0b9231a5922fd7287ba5b411893c0ecd2733e5ba", - "shasum": "" - }, - "require": { - "php": ">=7.2.5" - }, - "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": "Symfony Finder Component", - "homepage": "https://symfony.com", - "support": { - "source": "https://github.com/symfony/finder/tree/v5.2.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": "2020-12-08T17:02:38+00:00" - }, - { - "name": "symfony/options-resolver", - "version": "v5.2.1", - "source": { - "type": "git", - "url": "https://github.com/symfony/options-resolver.git", - "reference": "87a2a4a766244e796dd9cb9d6f58c123358cd986" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/options-resolver/zipball/87a2a4a766244e796dd9cb9d6f58c123358cd986", - "reference": "87a2a4a766244e796dd9cb9d6f58c123358cd986", - "shasum": "" - }, - "require": { - "php": ">=7.2.5", - "symfony/deprecation-contracts": "^2.1", - "symfony/polyfill-php73": "~1.0", - "symfony/polyfill-php80": "^1.15" - }, - "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": "Symfony OptionsResolver Component", - "homepage": "https://symfony.com", - "keywords": [ - "config", - "configuration", - "options" - ], - "support": { - "source": "https://github.com/symfony/options-resolver/tree/v5.2.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": "2020-10-24T12:08:07+00:00" - }, - { - "name": "symfony/polyfill-ctype", - "version": "v1.22.1", - "source": { - "type": "git", - "url": "https://github.com/symfony/polyfill-ctype.git", - "reference": "c6c942b1ac76c82448322025e084cadc56048b4e" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/c6c942b1ac76c82448322025e084cadc56048b4e", - "reference": "c6c942b1ac76c82448322025e084cadc56048b4e", - "shasum": "" - }, - "require": { - "php": ">=7.1" - }, - "suggest": { - "ext-ctype": "For best performance" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "1.22-dev" - }, - "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" - } - }, - "autoload": { - "psr-4": { - "Symfony\\Polyfill\\Ctype\\": "" - }, - "files": [ - "bootstrap.php" - ] - }, - "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.22.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": "2021-01-07T16:49:33+00:00" - }, - { - "name": "symfony/polyfill-intl-grapheme", - "version": "v1.22.0", - "source": { - "type": "git", - "url": "https://github.com/symfony/polyfill-intl-grapheme.git", - "reference": "267a9adeb8ecb8071040a740930e077cdfb987af" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-intl-grapheme/zipball/267a9adeb8ecb8071040a740930e077cdfb987af", - "reference": "267a9adeb8ecb8071040a740930e077cdfb987af", - "shasum": "" - }, - "require": { - "php": ">=7.1" - }, - "suggest": { - "ext-intl": "For best performance" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "1.22-dev" - }, - "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" - } - }, - "autoload": { - "psr-4": { - "Symfony\\Polyfill\\Intl\\Grapheme\\": "" - }, - "files": [ - "bootstrap.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": "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.22.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": "2021-01-07T16:49:33+00:00" - }, - { - "name": "symfony/polyfill-intl-normalizer", - "version": "v1.22.0", - "source": { - "type": "git", - "url": "https://github.com/symfony/polyfill-intl-normalizer.git", - "reference": "6e971c891537eb617a00bb07a43d182a6915faba" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-intl-normalizer/zipball/6e971c891537eb617a00bb07a43d182a6915faba", - "reference": "6e971c891537eb617a00bb07a43d182a6915faba", - "shasum": "" - }, - "require": { - "php": ">=7.1" - }, - "suggest": { - "ext-intl": "For best performance" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "1.22-dev" - }, - "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" - } - }, - "autoload": { - "psr-4": { - "Symfony\\Polyfill\\Intl\\Normalizer\\": "" - }, - "files": [ - "bootstrap.php" - ], - "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.22.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": "2021-01-07T17:09:11+00:00" - }, - { - "name": "symfony/polyfill-mbstring", - "version": "v1.22.1", - "source": { - "type": "git", - "url": "https://github.com/symfony/polyfill-mbstring.git", - "reference": "5232de97ee3b75b0360528dae24e73db49566ab1" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/5232de97ee3b75b0360528dae24e73db49566ab1", - "reference": "5232de97ee3b75b0360528dae24e73db49566ab1", - "shasum": "" - }, - "require": { - "php": ">=7.1" - }, - "suggest": { - "ext-mbstring": "For best performance" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "1.22-dev" - }, - "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" - } - }, - "autoload": { - "psr-4": { - "Symfony\\Polyfill\\Mbstring\\": "" - }, - "files": [ - "bootstrap.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": "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.22.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": "2021-01-22T09:19:47+00:00" - }, - { - "name": "symfony/polyfill-php70", - "version": "v1.20.0", - "source": { - "type": "git", - "url": "https://github.com/symfony/polyfill-php70.git", - "reference": "5f03a781d984aae42cebd18e7912fa80f02ee644" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php70/zipball/5f03a781d984aae42cebd18e7912fa80f02ee644", - "reference": "5f03a781d984aae42cebd18e7912fa80f02ee644", - "shasum": "" - }, - "require": { - "php": ">=7.1" - }, - "type": "metapackage", - "extra": { - "branch-alias": { - "dev-main": "1.20-dev" - }, - "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" - } - }, - "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.0+ features to lower PHP versions", - "homepage": "https://symfony.com", - "keywords": [ - "compatibility", - "polyfill", - "portable", - "shim" - ], - "support": { - "source": "https://github.com/symfony/polyfill-php70/tree/v1.20.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": "2020-10-23T14:02:19+00:00" - }, - { - "name": "symfony/polyfill-php72", - "version": "v1.22.0", - "source": { - "type": "git", - "url": "https://github.com/symfony/polyfill-php72.git", - "reference": "cc6e6f9b39fe8075b3dabfbaf5b5f645ae1340c9" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php72/zipball/cc6e6f9b39fe8075b3dabfbaf5b5f645ae1340c9", - "reference": "cc6e6f9b39fe8075b3dabfbaf5b5f645ae1340c9", - "shasum": "" - }, - "require": { - "php": ">=7.1" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "1.22-dev" - }, - "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" - } - }, - "autoload": { - "psr-4": { - "Symfony\\Polyfill\\Php72\\": "" - }, - "files": [ - "bootstrap.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": "Symfony polyfill backporting some PHP 7.2+ features to lower PHP versions", - "homepage": "https://symfony.com", - "keywords": [ - "compatibility", - "polyfill", - "portable", - "shim" - ], - "support": { - "source": "https://github.com/symfony/polyfill-php72/tree/v1.22.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": "2021-01-07T16:49:33+00:00" - }, - { - "name": "symfony/polyfill-php73", - "version": "v1.22.0", - "source": { - "type": "git", - "url": "https://github.com/symfony/polyfill-php73.git", - "reference": "a678b42e92f86eca04b7fa4c0f6f19d097fb69e2" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php73/zipball/a678b42e92f86eca04b7fa4c0f6f19d097fb69e2", - "reference": "a678b42e92f86eca04b7fa4c0f6f19d097fb69e2", - "shasum": "" - }, - "require": { - "php": ">=7.1" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "1.22-dev" - }, - "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" - } - }, - "autoload": { - "psr-4": { - "Symfony\\Polyfill\\Php73\\": "" - }, - "files": [ - "bootstrap.php" - ], - "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.22.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": "2021-01-07T16:49:33+00:00" - }, - { - "name": "symfony/polyfill-php80", - "version": "v1.22.1", - "source": { - "type": "git", - "url": "https://github.com/symfony/polyfill-php80.git", - "reference": "dc3063ba22c2a1fd2f45ed856374d79114998f91" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/dc3063ba22c2a1fd2f45ed856374d79114998f91", - "reference": "dc3063ba22c2a1fd2f45ed856374d79114998f91", - "shasum": "" - }, - "require": { - "php": ">=7.1" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "1.22-dev" - }, - "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" - } - }, - "autoload": { - "psr-4": { - "Symfony\\Polyfill\\Php80\\": "" - }, - "files": [ - "bootstrap.php" - ], - "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.22.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": "2021-01-07T16:49:33+00:00" - }, - { - "name": "symfony/process", - "version": "v5.2.3", - "source": { - "type": "git", - "url": "https://github.com/symfony/process.git", - "reference": "313a38f09c77fbcdc1d223e57d368cea76a2fd2f" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/process/zipball/313a38f09c77fbcdc1d223e57d368cea76a2fd2f", - "reference": "313a38f09c77fbcdc1d223e57d368cea76a2fd2f", - "shasum": "" - }, - "require": { - "php": ">=7.2.5", - "symfony/polyfill-php80": "^1.15" - }, - "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.2.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": "2021-01-27T10:15:41+00:00" - }, - { - "name": "symfony/service-contracts", - "version": "v2.2.0", - "source": { - "type": "git", - "url": "https://github.com/symfony/service-contracts.git", - "reference": "d15da7ba4957ffb8f1747218be9e1a121fd298a1" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/service-contracts/zipball/d15da7ba4957ffb8f1747218be9e1a121fd298a1", - "reference": "d15da7ba4957ffb8f1747218be9e1a121fd298a1", - "shasum": "" - }, - "require": { - "php": ">=7.2.5", - "psr/container": "^1.0" - }, - "suggest": { - "symfony/service-implementation": "" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.2-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/master" - }, - "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": "2020-09-07T11:33:47+00:00" - }, - { - "name": "symfony/stopwatch", - "version": "v5.2.1", - "source": { - "type": "git", - "url": "https://github.com/symfony/stopwatch.git", - "reference": "2b105c0354f39a63038a1d8bf776ee92852813af" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/stopwatch/zipball/2b105c0354f39a63038a1d8bf776ee92852813af", - "reference": "2b105c0354f39a63038a1d8bf776ee92852813af", - "shasum": "" - }, - "require": { - "php": ">=7.2.5", - "symfony/service-contracts": "^1.0|^2" - }, - "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": "Symfony Stopwatch Component", - "homepage": "https://symfony.com", - "support": { - "source": "https://github.com/symfony/stopwatch/tree/v5.2.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": "2020-11-01T16:14:45+00:00" - }, - { - "name": "symfony/string", - "version": "v5.2.1", - "source": { - "type": "git", - "url": "https://github.com/symfony/string.git", - "reference": "5bd67751d2e3f7d6f770c9154b8fbcb2aa05f7ed" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/string/zipball/5bd67751d2e3f7d6f770c9154b8fbcb2aa05f7ed", - "reference": "5bd67751d2e3f7d6f770c9154b8fbcb2aa05f7ed", - "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" - }, - "require-dev": { - "symfony/error-handler": "^4.4|^5.0", - "symfony/http-client": "^4.4|^5.0", - "symfony/translation-contracts": "^1.1|^2", - "symfony/var-exporter": "^4.4|^5.0" - }, - "type": "library", - "autoload": { - "psr-4": { - "Symfony\\Component\\String\\": "" - }, - "files": [ - "Resources/functions.php" - ], - "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": "Symfony String component", - "homepage": "https://symfony.com", - "keywords": [ - "grapheme", - "i18n", - "string", - "unicode", - "utf-8", - "utf8" - ], - "support": { - "source": "https://github.com/symfony/string/tree/v5.2.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": "2020-12-05T07:33:16+00:00" - } - ], - "packages-dev": [ - { - "name": "christophwurst/nextcloud_testing", - "version": "v0.12.4", - "source": { - "type": "git", - "url": "https://github.com/ChristophWurst/nextcloud_testing.git", - "reference": "9c189b01dbcc3508108f08c417de6aaea7005fb0" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/ChristophWurst/nextcloud_testing/zipball/9c189b01dbcc3508108f08c417de6aaea7005fb0", - "reference": "9c189b01dbcc3508108f08c417de6aaea7005fb0", - "shasum": "" - }, - "require": { - "php": "^7.2|^8.0", - "php-webdriver/webdriver": "^1.9", - "phpunit/phpunit": "^8.0|^9.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": "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": "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": "nikic/php-parser", - "version": "v4.10.4", - "source": { - "type": "git", - "url": "https://github.com/nikic/PHP-Parser.git", - "reference": "c6d052fc58cb876152f89f532b95a8d7907e7f0e" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/c6d052fc58cb876152f89f532b95a8d7907e7f0e", - "reference": "c6d052fc58cb876152f89f532b95a8d7907e7f0e", - "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.10.4" - }, - "time": "2020-12-20T10:01:03+00:00" - }, - { - "name": "phar-io/manifest", - "version": "2.0.1", - "source": { - "type": "git", - "url": "https://github.com/phar-io/manifest.git", - "reference": "85265efd3af7ba3ca4b2a2c34dbfc5788dd29133" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/phar-io/manifest/zipball/85265efd3af7ba3ca4b2a2c34dbfc5788dd29133", - "reference": "85265efd3af7ba3ca4b2a2c34dbfc5788dd29133", - "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/master" - }, - "time": "2020-06-27T14:33:11+00:00" - }, - { - "name": "phar-io/version", - "version": "3.0.4", - "source": { - "type": "git", - "url": "https://github.com/phar-io/version.git", - "reference": "e4782611070e50613683d2b9a57730e9a3ba5451" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/phar-io/version/zipball/e4782611070e50613683d2b9a57730e9a3ba5451", - "reference": "e4782611070e50613683d2b9a57730e9a3ba5451", - "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.0.4" - }, - "time": "2020-12-13T23:18:30+00:00" - }, - { - "name": "php-webdriver/webdriver", - "version": "1.9.0", - "source": { - "type": "git", - "url": "https://github.com/php-webdriver/php-webdriver.git", - "reference": "e3633154554605274cc9d59837f55a7427d72003" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/php-webdriver/php-webdriver/zipball/e3633154554605274cc9d59837f55a7427d72003", - "reference": "e3633154554605274cc9d59837f55a7427d72003", - "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" - }, - "replace": { - "facebook/webdriver": "*" - }, - "require-dev": { - "friendsofphp/php-cs-fixer": "^2.0", - "ondram/ci-detector": "^2.1 || ^3.5", - "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" - }, - "suggest": { - "ext-SimpleXML": "For Firefox profile creation" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "1.8.x-dev" - } - }, - "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.9.0" - }, - "time": "2020-11-19T15:21:05+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.2.2", - "source": { - "type": "git", - "url": "https://github.com/phpDocumentor/ReflectionDocBlock.git", - "reference": "069a785b2141f5bcf49f3e353548dc1cce6df556" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/069a785b2141f5bcf49f3e353548dc1cce6df556", - "reference": "069a785b2141f5bcf49f3e353548dc1cce6df556", - "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" - }, - "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/master" - }, - "time": "2020-09-03T19:13:55+00:00" - }, - { - "name": "phpdocumentor/type-resolver", - "version": "1.4.0", - "source": { - "type": "git", - "url": "https://github.com/phpDocumentor/TypeResolver.git", - "reference": "6a467b8989322d92aa1c8bf2bebcc6e5c2ba55c0" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/6a467b8989322d92aa1c8bf2bebcc6e5c2ba55c0", - "reference": "6a467b8989322d92aa1c8bf2bebcc6e5c2ba55c0", - "shasum": "" - }, - "require": { - "php": "^7.2 || ^8.0", - "phpdocumentor/reflection-common": "^2.0" - }, - "require-dev": { - "ext-tokenizer": "*" - }, - "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.4.0" - }, - "time": "2020-09-17T18:55:26+00:00" - }, - { - "name": "phpspec/prophecy", - "version": "1.12.2", - "source": { - "type": "git", - "url": "https://github.com/phpspec/prophecy.git", - "reference": "245710e971a030f42e08f4912863805570f23d39" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/phpspec/prophecy/zipball/245710e971a030f42e08f4912863805570f23d39", - "reference": "245710e971a030f42e08f4912863805570f23d39", - "shasum": "" - }, - "require": { - "doctrine/instantiator": "^1.2", - "php": "^7.2 || ~8.0, <8.1", - "phpdocumentor/reflection-docblock": "^5.2", - "sebastian/comparator": "^3.0 || ^4.0", - "sebastian/recursion-context": "^3.0 || ^4.0" - }, - "require-dev": { - "phpspec/phpspec": "^6.0", - "phpunit/phpunit": "^8.0 || ^9.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.11.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.12.2" - }, - "time": "2020-12-19T10:15:11+00:00" - }, - { - "name": "phpunit/php-code-coverage", - "version": "9.2.5", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/php-code-coverage.git", - "reference": "f3e026641cc91909d421802dd3ac7827ebfd97e1" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/f3e026641cc91909d421802dd3ac7827ebfd97e1", - "reference": "f3e026641cc91909d421802dd3ac7827ebfd97e1", - "shasum": "" - }, - "require": { - "ext-dom": "*", - "ext-libxml": "*", - "ext-xmlwriter": "*", - "nikic/php-parser": "^4.10.2", - "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.5" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2020-11-28T06:44:49+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.2", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/phpunit.git", - "reference": "f661659747f2f87f9e72095bb207bceb0f151cb4" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/f661659747f2f87f9e72095bb207bceb0f151cb4", - "reference": "f661659747f2f87f9e72095bb207bceb0f151cb4", - "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.1", - "phar-io/version": "^3.0.2", - "php": ">=7.3", - "phpspec/prophecy": "^1.12.1", - "phpunit/php-code-coverage": "^9.2.3", - "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", - "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.2" - }, - "funding": [ - { - "url": "https://phpunit.de/donate.html", - "type": "custom" - }, - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2021-02-02T14:45:58+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.3", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/exporter.git", - "reference": "d89cc98761b8cb5a1a235a6b703ae50d34080e65" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/d89cc98761b8cb5a1a235a6b703ae50d34080e65", - "reference": "d89cc98761b8cb5a1a235a6b703ae50d34080e65", - "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": "http://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.3" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2020-09-28T05:24:23+00:00" - }, - { - "name": "sebastian/global-state", - "version": "5.0.2", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/global-state.git", - "reference": "a90ccbddffa067b51f574dea6eb25d5680839455" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/a90ccbddffa067b51f574dea6eb25d5680839455", - "reference": "a90ccbddffa067b51f574dea6eb25d5680839455", - "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.2" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2020-10-26T15:55:19+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" - } - ], - "time": "2020-09-28T06:45:17+00:00" - }, - { - "name": "sebastian/type", - "version": "2.3.1", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/type.git", - "reference": "81cd61ab7bbf2de744aba0ea61fae32f721df3d2" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/type/zipball/81cd61ab7bbf2de744aba0ea61fae32f721df3d2", - "reference": "81cd61ab7bbf2de744aba0ea61fae32f721df3d2", - "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.1" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2020-10-26T13:18:59+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" + "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": "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": "theseer/tokenizer", - "version": "1.2.0", - "source": { - "type": "git", - "url": "https://github.com/theseer/tokenizer.git", - "reference": "75a63c33a8577608444246075ea0af0d052e452a" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/theseer/tokenizer/zipball/75a63c33a8577608444246075ea0af0d052e452a", - "reference": "75a63c33a8577608444246075ea0af0d052e452a", - "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/master" - }, - "funding": [ - { - "url": "https://github.com/theseer", - "type": "github" - } - ], - "time": "2020-07-12T23:59:07+00:00" - }, - { - "name": "webmozart/assert", - "version": "1.9.1", - "source": { - "type": "git", - "url": "https://github.com/webmozarts/assert.git", - "reference": "bafc69caeb4d49c39fd0779086c03a3738cbb389" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/webmozarts/assert/zipball/bafc69caeb4d49c39fd0779086c03a3738cbb389", - "reference": "bafc69caeb4d49c39fd0779086c03a3738cbb389", - "shasum": "" + "class": "Bamarni\\Composer\\Bin\\BamarniBinPlugin" }, - "require": { - "php": "^5.3.3 || ^7.0 || ^8.0", - "symfony/polyfill-ctype": "^1.8" - }, - "conflict": { - "phpstan/phpstan": "<0.12.20", - "vimeo/psalm": "<3.9.1" - }, - "require-dev": { - "phpunit/phpunit": "^4.8.36 || ^7.5.13" - }, - "type": "library", "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.9.1" + "issues": "https://github.com/bamarni/composer-bin-plugin/issues", + "source": "https://github.com/bamarni/composer-bin-plugin/tree/1.8.2" }, - "time": "2020-07-08T17:02:28+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.2|^8.0" + "php": ">=7.4 <=8.2" }, "platform-dev": [], - "plugin-api-version": "2.0.0" + "platform-overrides": { + "php": "7.4" + }, + "plugin-api-version": "2.3.0" } diff --git a/composer/autoload.php b/composer/autoload.php new file mode 100644 index 0000000000..a075e1e880 --- /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 . + * + */ + +.appointment-config-modal { + padding: 2vw; + + &__form { + display: flex; + flex-direction: column; + width: 100%; + + fieldset { + padding: 20px 0; + + header { + font-size: 16px; + margin-bottom: 3px; + } + } + + .availability-select, .calendar-select { + display: flex; + flex-direction: column; + } + + &__row { + &--wrapped { + display: flex; + flex-wrap: wrap; + gap: 10px 50px; + + > div { + flex: 1 200px; + } + } + + // Rows that don't have their own vue components + &--local { + display: flex; + flex-direction: column; + } + } + + &__row + &__row { + margin-top: 10px; + } + + // Fix calendar picker styling + .multiselect__tags { + height: unset !important; + margin: 0 !important; + } + } + + &__submit-button { + margin-top: 20px; + } +} + +.app-config-modal-confirmation { + .empty-content { + margin-top: 0 !important; + margin-bottom: 20px; + } + + &__buttons { + display: flex; + justify-content: center; + gap: 0 10px; + } +} diff --git a/css/app-navigation.scss b/css/app-navigation.scss index ee94290bdd..c48ca69f83 100644 --- a/css/app-navigation.scss +++ b/css/app-navigation.scss @@ -8,6 +8,7 @@ * @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 @@ -28,16 +29,13 @@ .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; - padding: 8px; + margin: 0 0 var(--default-grid-baseline) 0; flex-grow: 1; } @@ -86,17 +84,21 @@ background-size: 10px; flex-grow: 0 !important; width: 34px; + padding: 0 6px !important; } } .app-navigation-header { - padding: 3px 3px 0 3px; + padding: calc(var(--default-grid-baseline, 4px) * 2); } .new-event-today-view-section { display: flex; - margin-left: 3px; - margin-right: 3px; + + // Fix margins from core + .button { + margin: 0 var(--default-grid-baseline) 0 0; + } .new-event { flex-grow: 5; @@ -111,6 +113,11 @@ } } +// Add background to navigation toggle to fix overlap with calendar elements +.app-navigation-toggle { + background-color: var(--color-main-background) !important; +} + .app-navigation { button.icon-share { opacity: 0.3 !important; @@ -143,23 +150,25 @@ } } - .app-navigation-entry.deleted { + .app-navigation-entry-wrapper.deleted { .app-navigation-entry__title { text-decoration: line-through; } } - .app-navigation-entry.open-sharing { - box-shadow: inset 4px 0 var(--color-primary) !important; + .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.disabled { + .app-navigation-entry-wrapper.disabled { .app-navigation-entry__title { color: var(--color-text-lighter) !important; } } - .app-navigation-entry .app-navigation-entry__children .app-navigation-entry { + .app-navigation-entry-wrapper .app-navigation-entry__children .app-navigation-entry { padding-left: 0 !important; .avatar { @@ -170,7 +179,8 @@ } .avatar.published { - background-color: var(--color-primary); + background-color: var(--color-primary-element); + color: white; } } @@ -179,6 +189,7 @@ .multiselect { width: 100%; + border-radius: var(--border-radius-large); &__content-wrapper { z-index: 200 !important; @@ -186,20 +197,6 @@ } } - .app-navigation-entry__icon-bullet-disabled { - display: block; - // there is 2 margins - padding: 15px; - div { - border: 1px solid var(--color-border-dark); - width: 15px; - height: 15px; - cursor: pointer; - transition: background 100ms ease-in-out; - border-radius: 50%; - } - } - .app-navigation-entry__utils { .action-checkbox__label { padding-right: 0 !important; @@ -234,10 +231,10 @@ ul { // Calendar list items / Subscription list items - > li.app-navigation-entry { + > li.app-navigation-entry-wrapper { div.sharing-section { - //box-shadow: inset 4px 0 var(--color-primary); + //box-shadow: inset 4px 0 var(--color-primary-element); //padding-left: 12px; //padding-right: 12px; //width: 100%; @@ -307,13 +304,16 @@ } } } - } - #app-settings { + .appointment-config-list { + .app-navigation-caption { + margin-top: 22px; + } - #app-settings-content { - overflow-y: visible !important; + .app-navigation-entry-link, + .app-navigation-entry-link * { + cursor: default; + } } - } } diff --git a/css/app-settings.scss b/css/app-settings.scss index bec64f9129..5e96ae0e64 100644 --- a/css/app-settings.scss +++ b/css/app-settings.scss @@ -26,9 +26,11 @@ .action-checkbox { line-height: unset !important; + white-space: unset !important; &__label::before { margin: 0 6px 3px 3px !important; + flex-shrink: 0; } } @@ -52,12 +54,29 @@ display: block; text-align: center; background-position-x: 8px; + position: relative; + + .material-design-icon { + position: absolute; + } } &--slotDuration, + &--defaultReminder { + display: table; + + label { + display: block; + } + + .multiselect { + display: block; + } + } + &--timezone { width: 100%; - + .multiselect { width: 100%; } @@ -67,7 +86,6 @@ .shortcut-overview-modal { .modal-container { - min-width: 600px; display: flex !important; flex-wrap: wrap; padding: 0 12px 12px 12px !important; @@ -110,3 +128,10 @@ } } } + +// Fix the shortcut overview on smaller screens +@media screen and (max-width: 800px) { + .shortcut-overview-modal .modal-container .shortcut-section { + width: 100%; + } +} diff --git a/css/app-sidebar.scss b/css/app-sidebar.scss index 0bc8652708..89b79288c1 100644 --- a/css/app-sidebar.scss +++ b/css/app-sidebar.scss @@ -4,6 +4,7 @@ * @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 @@ -21,7 +22,7 @@ */ .app-sidebar, -.event-popover .popover__inner { +.event-popover .event-popover__inner { .app-sidebar-header__figure { height: unset !important; } @@ -38,7 +39,7 @@ /** Hide the submit button for the title, because it does not trigger a save */ .app-sidebar-header__desc { - .rename-form { + .app-sidebar-header__maintitle-form { button { display: none; } @@ -47,8 +48,7 @@ .editor-invitee-list-empty-message, .editor-reminders-list-empty-message, - .editor-invitee-list-no-email-configured-message, - .repeat-option-set-summary-read-only { + .editor-invitee-list-no-email-configured-message { margin-top: 20px; &__icon { @@ -83,14 +83,29 @@ display: flex; flex-direction: column; justify-content: space-between; + overflow: unset !important; + max-height: unset !important; + height: auto !important; &__buttons { - padding-top: 14px; + position: fixed; + bottom: var(--body-container-margin);; + z-index: 2; + width: calc(27vw - 11px); + min-width: 300px - 11px; + max-width: 500px - 11px; + background-color: var(--color-main-background); + border-radius: 0 0 var(--body-container-radius) 0; + padding: 0 8px 6px 0; button { width: 100%; + height: 44px; } } + &__content { + margin-bottom: 120px; + } } .property-title-time-picker-loading-placeholder { @@ -128,7 +143,7 @@ .multiselect { width: 100%; - min-width: 75px !important; // Set a lower min-width + min-width: 100px !important; // Set a lower min-width } } @@ -173,7 +188,7 @@ .multiselect, input[type=number] { - min-width: 75px; + min-width: 100px; width: 25%; } } @@ -203,33 +218,13 @@ } } - &--summary { - display: flex; - justify-content: space-between; - line-height: 34px; - } - &__label { margin-right: auto; } } .repeat-option-warning { - display: flex; - align-items: center; - margin-top: 20px; - - &__icon { - height: 32px; - width: 32px; - min-width: 32px; - min-height: 32px; - background-size: 32px; - } - - &__info { - text-align: center; - } + text-align: center; } .property-title-time-picker { @@ -319,7 +314,7 @@ } } - .property-alarm-new { + .property-alarm-list { width: 100%; } @@ -329,24 +324,28 @@ min-height: 44px; &__icon { - width: 32px; - height: 32px; - background-color: var(--color-border-dark); - border-radius: 50%; + align-self: flex-start; + + &--hidden { + visibility: hidden; + } .icon { - opacity: .7; - height: 32px; - width: 32px; - background-size: 20px; + width: 34px; + height: 44px; + margin-left: -5px; + margin-right: 5px; + // TODO: enable me again if the other icons on the details tab have an opacity too + // opacity: .7; } } &__label { - padding: 0 8px; + padding: 0 7px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; + align-self: center; } &__options { @@ -357,74 +356,136 @@ } &__edit { - padding: 0 8px; display: flex; align-items: center; width: 100%; + min-width: 0; + padding-right: 8px; input[type=number] { width: 4em; } + .multiselect { + flex: 1 auto; + height: 34px; + min-width: 0; + } + + .mx-datepicker { + flex: 1 auto; + } + &--timed { - .multiselect { - width: 100%; - } } &--all-day { - justify-content: space-between; + flex-wrap: wrap; + margin-bottom: 5px; + gap: 0 5px; - .multiselect { - width: unset !important; // TODO - remove - min-width: 8em !important; + &__distance, + &__time { + display: flex; + flex: 1; + align-items: center; } - .before-at-label { - margin: 0 auto; + &__distance { + .multiselect { + width: 6em; + } } - .mx-datepicker { - width: 8em !important; + &__time { + &__before-at-label { + flex: 0 0 auto; + margin-right: 5px; + } + + .mx-datepicker { + width: 7em; + } } } &--absolute { .mx-datepicker { - width: 100% !important; + width: unset; } } } } - .invitees-search { + .property-repeat { + width: 100%; + + &__summary { + display: flex; + align-items: center; + margin-bottom: 5px; + + &__icon { + width: 34px; + height: 34px; + margin-left: -5px; + margin-right: 5px; + } + + &__content { + flex: 1 auto; + padding: 0 7px; + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; + } + } + + &__options { + margin-bottom: 5px; + } + } + + .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; - &--with-multiple-email, - &--single-email { - div:nth-child(1) { - color: var(--color-main-text) - } + &__availability { + color: var(--color-text-maxcontrast); } - &--with-multiple-email { - div:nth-child(2) { - color: var(--color-text-lighter); - line-height: 1; - } + 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; align-items: center; @@ -445,6 +506,17 @@ } } + .resource-search { + &__capacity { + display: flex; + align-items: center; + + &__actions { + margin-left: 5px; + } + } + } + .avatar-participation-status { position: relative; height: 38px; @@ -457,7 +529,6 @@ background-size: 10px; height: 15px; width: 15px; - box-shadow: 0 0 3px grey; border-radius: 50%; } @@ -483,19 +554,29 @@ .property-select, .property-color, .property-select-multiple, - .property-title { + .property-title, + .resource-capacity, + .resource-room-type { display: flex; width: 100%; align-items: flex-start; + margin-bottom: 5px; &__icon, &__info { height: 34px; width: 34px; - margin-top: 5px; + } + + &__icon { + &--hidden { + visibility: hidden; + } } &__info { + display: flex; + justify-content: center; opacity: .5; } @@ -514,18 +595,27 @@ textarea, input, div.multiselect { - width: 100% + width: 100%; + } + + textarea { + max-height: calc(100vh - 500px); + vertical-align: top; + margin: 0; } &--readonly { div { - width: 100%; + 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); outline: none; + overflow-y: scroll; + word-break: break-word; /* allows breaking on long URLs */ + max-height: 30vh; } a.linkified { @@ -547,6 +637,13 @@ } } + .property-select, + .property-select-multiple { + .multiselect { + min-width: unset !important; + } + } + .property-color { &__input { @@ -557,6 +654,7 @@ border-radius: var(--border-radius); height: 34px !important; width: 34px !important; + margin: 0; } } @@ -600,6 +698,10 @@ } } + .resource-room-type { + margin-bottom: 5px; + } + .illustration-header { max-height: 150px; height: 150px; @@ -628,10 +730,15 @@ } .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; + max-width: 480px; + width: 480px; padding: 5px 8px; .empty-content { @@ -645,34 +752,26 @@ 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; + margin: -5px 0 5px -8px; + width: 496px; border-top-left-radius: var(--border-radius); border-top-right-radius: var(--border-radius); } - .popover__inner { - max-width: unset !important; - } - .property-title-time-picker { margin-bottom: 12px; } .event-popover__buttons { margin-top: 8px; - display: flex; - - button { - width: 100%; - } } .event-popover__top-right-actions { + display: flex; + gap: var(--default-grid-baseline); position: absolute !important; - top: 0 !important; - right: 0 !important; + top: var(--default-grid-baseline) !important; + right: var(--default-grid-baseline) !important; z-index: 100 !important; opacity: .7 !important; border-radius: 22px !important; @@ -707,7 +806,6 @@ } .calendar-picker-option { - width: 100%; display: flex; align-items: center; @@ -747,6 +845,7 @@ } } +.resource-list-button-group, .invitees-list-button-group { width: 100%; display: flex; diff --git a/css/calendar.scss b/css/calendar.scss index 5f90fb0927..1f8eb00360 100644 --- a/css/calendar.scss +++ b/css/calendar.scss @@ -22,10 +22,11 @@ @import 'app-navigation.scss'; @import 'app-sidebar.scss'; @import 'app-settings.scss'; +@import 'app-modal.scss'; @import 'freebusy.scss'; @import 'fullcalendar.scss'; @import 'global.scss'; -@import 'icons.scss'; @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 0000000000..12b67671e0 --- /dev/null +++ b/css/dashboard.css @@ -0,0 +1,4 @@ +.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 642f6c9bc9..06ac3f1f13 100644 --- a/css/freebusy.scss +++ b/css/freebusy.scss @@ -30,18 +30,19 @@ .blocking-event-free-busy { border-color: red; border-style: solid; - border-left-width: 1px; - border-right-width: 1px; - background-color: transparent; + border-left-width: 2px; + border-right-width: 2px; + background-color: transparent !important; + opacity: 0.7 !important; z-index: 2; } .blocking-event-free-busy.blocking-event-free-busy--first-row { - border-top-width: 1px; + border-top-width: 2px; } .blocking-event-free-busy.blocking-event-free-busy--last-row { - border-bottom-width: 1px; + border-bottom-width: 2px; } .loading-indicator { @@ -54,7 +55,6 @@ } .freebusy-caption { - display: flex; margin-top: 10px; &__calendar-user-types, @@ -64,18 +64,19 @@ } &__colors { - display: flex; - justify-content: space-between; - + width: 100%; + display:flex; + flex-wrap: wrap; .freebusy-caption-item { display: flex; align-items: center; + margin-right: 30px; &__color { height: 1em; width: 2em; display: block; - border: var(--color-border-dark); + border: 1px solid var(--color-border-dark); opacity: 0.8; } diff --git a/css/fullcalendar.scss b/css/fullcalendar.scss index eeba3d0481..c905f61df7 100644 --- a/css/fullcalendar.scss +++ b/css/fullcalendar.scss @@ -4,6 +4,7 @@ * @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 @@ -21,16 +22,18 @@ */ /** 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; --fc-neutral-text-color: var(--color-text-lighter) !important; --fc-border-color: var(--color-border) !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-daygrid-event-dot-width: 10px !important; + + --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; @@ -38,11 +41,12 @@ --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; --fc-now-indicator-color: red; + --fc-list-event-hover-bg-color: var(--color-background-hover) !important; } .fc { @@ -57,6 +61,11 @@ color: var(--color-text-lighter) !important; } +// Remove dotted half-lines +.fc .fc-timegrid-slot-minor { + border-top-style: none !important; +} + // Center the date in month view .fc-daygrid-day-top { justify-content: center; @@ -74,24 +83,68 @@ .fc-day-today { &.fc-col-header-cell { 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-pill); + } + } + + .fc-event { + box-shadow: 0px 0px 0px 1px var(--color-primary-element-light) !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: 50%; } } +} + +// Fix list table +.fc-list-table td { + white-space: normal; + word-break: break-word; +} + +// 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; + background-clip: padding-box; + } +} - .fc-daygrid-day-number { - background: var(--color-primary); - color: var(--color-primary-text); - border-radius: 50%; - margin: 3px 3px 0 0; - width: 24px; - height: 24px; - text-align: center; - font-weight: bold !important; - padding: 1px 0 !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; } } @@ -126,10 +179,10 @@ top: 0; right: 0; &--light { - @include icon-color('reminder', 'calendar', '#fffffe', 1); + background-image: var(--icon-calendar-reminder-fffffe) } &--dark { - @include icon-color('reminder', 'calendar', '#000001', 1); + background-image: var(--icon-calendar-reminder-000001) } } } @@ -140,7 +193,7 @@ align-content: center; .fc-event-title-checkbox { - margin: 6px 4px 0 0; + margin: 4px 4px 0 0; line-height: 1; } } @@ -183,3 +236,46 @@ margin-top: 0 !important; } } + +// Fix week view +.fc-col-header-cell { + word-break: break-word; + white-space: normal; +} + +.fc-timeGridWeek-view { + .fc-daygrid-more-link { + word-break: break-all; + white-space: normal; + } + + .fc-event-main { + flex-wrap: wrap; + } +} + +.fc-v-event { + min-height: 4em; + + &.fc-timegrid-event-short { + min-height: 2em; + } + + .fc-event-title { + white-space: initial; + } +} + +// Fix Month view +.fc-dayGridMonth-view { + .fc-daygrid-more-link { + word-break: break-word; + white-space: normal; + } + .fc-daygrid-day-frame { + min-height: 150px !important; + } +} +.fc-daygrid-day-events { + position:relative !important; +} diff --git a/css/icons.scss b/css/icons.scss deleted file mode 100644 index 0cec667768..0000000000 --- a/css/icons.scss +++ /dev/null @@ -1,41 +0,0 @@ -/** - * 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 . - * - */ -@include icon-black-white('briefcase', 'calendar', 5); -@include icon-black-white('circle', 'calendar', 1); -@include icon-black-white('color-picker', 'calendar', 1); -@include icon-black-white('embed', 'calendar', 1); -@include icon-black-white('eye', 'calendar', 4); -@include icon-black-white('invitees-no-response', 'calendar', 5); -@include icon-black-white('leftarrow', 'calendar', 2); -@include icon-black-white('new-calendar', 'calendar', 2); -@include icon-black-white('new-calendar-with-task-list', 'calendar', 2); -@include icon-black-white('random', 'calendar', 1); -@include icon-black-white('reminder', 'calendar', 4); -@include icon-black-white('reminder-audio', 'calendar', 1); -@include icon-black-white('reminder-mail', 'calendar', 1); -@include icon-black-white('repeat', 'calendar', 1); -@include icon-black-white('rightarrow', 'calendar', 2); -@include icon-black-white('timezone', 'calendar', 1); -@include icon-black-white('view-day', 'calendar', 1); -@include icon-black-white('view-list', 'calendar', 1); -@include icon-black-white('view-module', 'calendar', 1); -@include icon-black-white('view-week', 'calendar', 1); diff --git a/css/import.scss b/css/import.scss index 290b52a2ac..06e3375d45 100644 --- a/css/import.scss +++ b/css/import.scss @@ -31,6 +31,11 @@ text-align: center; } + .import-modal__actions { + display: flex; + gap: 5px; + } + .import-modal-file-item { display: flex; padding-top: 10px; diff --git a/css/props-linkify-links.scss b/css/props-linkify-links.scss new file mode 100644 index 0000000000..42e94ac831 --- /dev/null +++ b/css/props-linkify-links.scss @@ -0,0 +1,25 @@ +.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; + margin-top: 1px !important; + 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::after { + content: ' ↗'; + } +} diff --git a/css/public.scss b/css/public.scss index b152151880..75e2b07069 100644 --- a/css/public.scss +++ b/css/public.scss @@ -4,6 +4,7 @@ * @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 @@ -24,16 +25,12 @@ color: #a9a9a9 !important; } -#body-public .content { - min-height: 100% !important; -} - .content.app-calendar.app-calendar-public-embedded { #embed-header { position: fixed; top: 0; left: 0; - height: 44px; + height: 50px; width: 100%; box-sizing: border-box; background-color: var(--color-main-background); @@ -46,6 +43,7 @@ .embed-header__date-section, .embed-header__share-section { display: flex; + gap: 5px; } .view-button-section { @@ -62,7 +60,7 @@ } .app-content { - margin-top: 44px + margin-top: 44px; //position: absolute !important; //top: 44px; //left: 0; @@ -71,3 +69,19 @@ //min-height: unset !important; } } + +#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 index 751bae4f66..8394f536df 100644 --- a/img/LICENSES.md +++ b/img/LICENSES.md @@ -1,51 +1,6 @@ # 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 aecda4e4de..0000000000 --- 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 0000000000..8b87413d40 --- /dev/null +++ b/img/calendar-dark.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/img/calendar.svg b/img/calendar.svg index 74d810cb7f..0942427fd7 100644 --- a/img/calendar.svg +++ b/img/calendar.svg @@ -1,6 +1,6 @@ - + - + diff --git a/img/circle.svg b/img/circle.svg deleted file mode 100644 index 0ebe00d475..0000000000 --- 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 776b7e7df3..0000000000 --- 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 30ac39eb97..0000000000 --- a/img/embed.svg +++ /dev/null @@ -1 +0,0 @@ - diff --git a/img/eye.svg b/img/eye.svg deleted file mode 100644 index 850c576e0a..0000000000 --- a/img/eye.svg +++ /dev/null @@ -1 +0,0 @@ - diff --git a/img/illustrations/art_museum.svg b/img/illustrations/art_museum.svg new file mode 100644 index 0000000000..25077fce14 --- /dev/null +++ b/img/illustrations/art_museum.svg @@ -0,0 +1 @@ +ready_to_print \ No newline at end of file diff --git a/img/illustrations/awards.svg b/img/illustrations/awards.svg new file mode 100644 index 0000000000..280335f1f1 --- /dev/null +++ b/img/illustrations/awards.svg @@ -0,0 +1 @@ +awards \ No newline at end of file diff --git a/img/illustrations/barbecue.svg b/img/illustrations/barbecue.svg new file mode 100644 index 0000000000..c7b1c03a42 --- /dev/null +++ b/img/illustrations/barbecue.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/img/illustrations/birthday_cake.svg b/img/illustrations/birthday_cake.svg new file mode 100644 index 0000000000..71841b509b --- /dev/null +++ b/img/illustrations/birthday_cake.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/img/illustrations/candidate.svg b/img/illustrations/candidate.svg new file mode 100644 index 0000000000..22305edf60 --- /dev/null +++ b/img/illustrations/candidate.svg @@ -0,0 +1 @@ +candidate \ No newline at end of file diff --git a/img/illustrations/certification.svg b/img/illustrations/certification.svg new file mode 100644 index 0000000000..93cc8481f5 --- /dev/null +++ b/img/illustrations/certification.svg @@ -0,0 +1 @@ +certification \ No newline at end of file diff --git a/img/illustrations/charts.svg b/img/illustrations/charts.svg new file mode 100644 index 0000000000..cada5e9071 --- /dev/null +++ b/img/illustrations/charts.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/img/illustrations/city_driver.svg b/img/illustrations/city_driver.svg new file mode 100644 index 0000000000..df0984e9cb --- /dev/null +++ b/img/illustrations/city_driver.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/img/illustrations/compose_music.svg b/img/illustrations/compose_music.svg new file mode 100644 index 0000000000..bd519efba0 --- /dev/null +++ b/img/illustrations/compose_music.svg @@ -0,0 +1 @@ +compose music \ No newline at end of file diff --git a/img/illustrations/dog_walking.svg b/img/illustrations/dog_walking.svg new file mode 100644 index 0000000000..278040b5ed --- /dev/null +++ b/img/illustrations/dog_walking.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/img/illustrations/farm_girl.svg b/img/illustrations/farm_girl.svg new file mode 100644 index 0000000000..10d11772f8 --- /dev/null +++ b/img/illustrations/farm_girl.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/img/illustrations/gardening.svg b/img/illustrations/gardening.svg new file mode 100644 index 0000000000..06500219bb --- /dev/null +++ b/img/illustrations/gardening.svg @@ -0,0 +1 @@ +Gardening \ No newline at end of file diff --git a/img/illustrations/gift.svg b/img/illustrations/gift.svg new file mode 100644 index 0000000000..05f0bb506a --- /dev/null +++ b/img/illustrations/gift.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/img/illustrations/medidation.svg b/img/illustrations/meditation.svg similarity index 100% rename from img/illustrations/medidation.svg rename to img/illustrations/meditation.svg diff --git a/img/illustrations/outdoor_adventure.svg b/img/illustrations/outdoor_adventure.svg new file mode 100644 index 0000000000..5a42d3aa28 --- /dev/null +++ b/img/illustrations/outdoor_adventure.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/img/illustrations/pay_online.svg b/img/illustrations/pay_online.svg new file mode 100644 index 0000000000..162e816a5d --- /dev/null +++ b/img/illustrations/pay_online.svg @@ -0,0 +1 @@ +pay_online \ No newline at end of file diff --git a/img/illustrations/personal_finance.svg b/img/illustrations/personal_finance.svg new file mode 100644 index 0000000000..48f6b4f2fa --- /dev/null +++ b/img/illustrations/personal_finance.svg @@ -0,0 +1 @@ +personal_finance \ No newline at end of file diff --git a/img/illustrations/reviewed_docs.svg b/img/illustrations/reviewed_docs.svg new file mode 100644 index 0000000000..1025f9681b --- /dev/null +++ b/img/illustrations/reviewed_docs.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/img/illustrations/subway.svg b/img/illustrations/subway.svg new file mode 100644 index 0000000000..1f46d9907f --- /dev/null +++ b/img/illustrations/subway.svg @@ -0,0 +1 @@ +subway \ No newline at end of file diff --git a/img/illustrations/sunlight.svg b/img/illustrations/sunlight.svg new file mode 100644 index 0000000000..bb694b18c5 --- /dev/null +++ b/img/illustrations/sunlight.svg @@ -0,0 +1 @@ +sunlight \ No newline at end of file diff --git a/img/illustrations/teaching.svg b/img/illustrations/teaching.svg new file mode 100644 index 0000000000..7d896561d3 --- /dev/null +++ b/img/illustrations/teaching.svg @@ -0,0 +1 @@ +teaching \ No newline at end of file diff --git a/img/illustrations/voting.svg b/img/illustrations/voting.svg new file mode 100644 index 0000000000..05a940b963 --- /dev/null +++ b/img/illustrations/voting.svg @@ -0,0 +1 @@ +voting \ No newline at end of file diff --git a/img/illustrations/wedding.svg b/img/illustrations/wedding.svg new file mode 100644 index 0000000000..9aed8ea552 --- /dev/null +++ b/img/illustrations/wedding.svg @@ -0,0 +1 @@ +wedding \ 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 1c2d30720e..0000000000 --- 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 440204a00d..0000000000 --- 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 676c3dfb5a..0000000000 --- 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 307d35c687..0000000000 --- a/img/new-calendar.svg +++ /dev/null @@ -1 +0,0 @@ - diff --git a/img/random.svg b/img/random.svg deleted file mode 100644 index d24181b80b..0000000000 --- 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 7c0f981fd5..0000000000 --- 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 14148ecc79..0000000000 --- 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 108eb4fc93..0000000000 --- a/img/reminder.svg +++ /dev/null @@ -1 +0,0 @@ - diff --git a/img/repeat.svg b/img/repeat.svg deleted file mode 100644 index 2ed9c37dba..0000000000 --- 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 0a87260439..0000000000 --- a/img/rightarrow.svg +++ /dev/null @@ -1 +0,0 @@ - diff --git a/img/timezone.svg b/img/timezone.svg deleted file mode 100644 index 86f7b0eae4..0000000000 --- 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 14545700ef..0000000000 --- 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 8f4a0410b4..0000000000 --- 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 f175a89d42..0000000000 --- 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 7eada6b534..0000000000 --- a/img/view-week.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/krankerl.toml b/krankerl.toml index 90a4b91e31..d0fb6c7d9b 100644 --- a/krankerl.toml +++ b/krankerl.toml @@ -1,6 +1,6 @@ [package] before_cmds = [ - "composer install --no-dev", + "composer install --no-dev -o", "npm install", "npm run build", ] diff --git a/l10n/af.js b/l10n/af.js index 7fe95c3c86..4515be4183 100644 --- a/l10n/af.js +++ b/l10n/af.js @@ -7,52 +7,79 @@ OC.L10N.register( "Open »%s«" : "Open »%s«", "Cheers!" : "Geluk!", "Calendar" : "Kalender", + "Confirm" : "Bevestig", + "Anniversary" : "Herdenking", + "Personal" : "Persoonlik", "A Calendar app for Nextcloud" : "'n Kalendertoep vir Nextcloud", "Today" : "Vandag", "Day" : "Dag", "Week" : "Week", "Month" : "Maand", "List" : "Lys", - "Download" : "Laai af", + "Preview" : "Voorskou", + "Copy link" : "Kopieer skakel", + "Edit" : "Wysig", "Delete" : "Skrap", + "New calendar" : "Nuwe kalender", + "Export" : "Voer uit", + "Name" : "Naam", + "Deleted" : "Geskrap", + "Restore" : "Herstel", + "Delete permanently" : "Skrap permanent", "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", - "can edit" : "kan wysig", - "New calendar" : "Nuwe kalender", + "Save" : "Stoor", "Filename" : "Lêernaam", "Cancel" : "Kanselleer", "Automatic" : "Outomaties", + "List view" : "Lysaansig", "Actions" : "Aksies", "Show week numbers" : "Toon weeknommers", + "Location" : "Ligging", + "Description" : "Beskrywing", + "Duration" : "Duur", + "to" : "aan", + "Add" : "Voeg by", + "Monday" : "Maandag", + "Tuesday" : "Dinsdag", + "Wednesday" : "Woensdag", + "Thursday" : "Donderdag", + "Friday" : "Vrydag", + "Saturday" : "Saterdag", + "Sunday" : "Sondag", + "Update" : "Werk by", + "Your email address" : "U e-posadres", "Notification" : "Kennisgewing", "Email" : "E-pos", + "Delete file" : "Skrap lêer", + "Available" : "Beskikbaar", + "Not available" : "Onbeskikbaar", "Unknown" : "Onbekend", + "Accept" : "Aanvaar", + "Tentative" : "Tentatief", "All day" : "Heeldag", + "Repeat" : "Herhaal", "never" : "nooit", "after" : "na", - "Repeat" : "Herhaal", - "Monday" : "Maandag", - "Summary" : "Opsomming", + "available" : "beskikbaar", "More" : "Nog", - "Save" : "Stoor", - "Update" : "Werk by", - "Personal" : "Persoonlik", + "Global" : "Globaal", + "Subscribe" : "Teken in", "Details" : "Details", "Attendees" : "Bywoners", - "Reminders" : "Herinneringe", + "Resources" : "Hulpbronne", "Close" : "Sluit", - "Anniversary" : "Herdenking", "Week {number} of {year}" : "Week {number} van {year}", "Daily" : "Daagliks", "Weekly" : "Weekliks", - "Location" : "Ligging", - "Description" : "Beskrywing", + "Other" : "Ander", + "Status" : "Status", "Confirmed" : "Bevestig", - "Tentative" : "Tentatief", "Categories" : "Kategorieë", + "Commuting" : "In die verkeer", "Mail" : "Pos", - "Play" : "Speel Af", - "Global" : "Globaal" + "Birthday" : "Verjaardag" }, "nplurals=2; plural=(n != 1);"); diff --git a/l10n/af.json b/l10n/af.json index d8758b8296..515d9b0720 100644 --- a/l10n/af.json +++ b/l10n/af.json @@ -5,52 +5,79 @@ "Open »%s«" : "Open »%s«", "Cheers!" : "Geluk!", "Calendar" : "Kalender", + "Confirm" : "Bevestig", + "Anniversary" : "Herdenking", + "Personal" : "Persoonlik", "A Calendar app for Nextcloud" : "'n Kalendertoep vir Nextcloud", "Today" : "Vandag", "Day" : "Dag", "Week" : "Week", "Month" : "Maand", "List" : "Lys", - "Download" : "Laai af", + "Preview" : "Voorskou", + "Copy link" : "Kopieer skakel", + "Edit" : "Wysig", "Delete" : "Skrap", + "New calendar" : "Nuwe kalender", + "Export" : "Voer uit", + "Name" : "Naam", + "Deleted" : "Geskrap", + "Restore" : "Herstel", + "Delete permanently" : "Skrap permanent", "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", - "can edit" : "kan wysig", - "New calendar" : "Nuwe kalender", + "Save" : "Stoor", "Filename" : "Lêernaam", "Cancel" : "Kanselleer", "Automatic" : "Outomaties", + "List view" : "Lysaansig", "Actions" : "Aksies", "Show week numbers" : "Toon weeknommers", + "Location" : "Ligging", + "Description" : "Beskrywing", + "Duration" : "Duur", + "to" : "aan", + "Add" : "Voeg by", + "Monday" : "Maandag", + "Tuesday" : "Dinsdag", + "Wednesday" : "Woensdag", + "Thursday" : "Donderdag", + "Friday" : "Vrydag", + "Saturday" : "Saterdag", + "Sunday" : "Sondag", + "Update" : "Werk by", + "Your email address" : "U e-posadres", "Notification" : "Kennisgewing", "Email" : "E-pos", + "Delete file" : "Skrap lêer", + "Available" : "Beskikbaar", + "Not available" : "Onbeskikbaar", "Unknown" : "Onbekend", + "Accept" : "Aanvaar", + "Tentative" : "Tentatief", "All day" : "Heeldag", + "Repeat" : "Herhaal", "never" : "nooit", "after" : "na", - "Repeat" : "Herhaal", - "Monday" : "Maandag", - "Summary" : "Opsomming", + "available" : "beskikbaar", "More" : "Nog", - "Save" : "Stoor", - "Update" : "Werk by", - "Personal" : "Persoonlik", + "Global" : "Globaal", + "Subscribe" : "Teken in", "Details" : "Details", "Attendees" : "Bywoners", - "Reminders" : "Herinneringe", + "Resources" : "Hulpbronne", "Close" : "Sluit", - "Anniversary" : "Herdenking", "Week {number} of {year}" : "Week {number} van {year}", "Daily" : "Daagliks", "Weekly" : "Weekliks", - "Location" : "Ligging", - "Description" : "Beskrywing", + "Other" : "Ander", + "Status" : "Status", "Confirmed" : "Bevestig", - "Tentative" : "Tentatief", "Categories" : "Kategorieë", + "Commuting" : "In die verkeer", "Mail" : "Pos", - "Play" : "Speel Af", - "Global" : "Globaal" + "Birthday" : "Verjaardag" },"pluralForm" :"nplurals=2; plural=(n != 1);" } \ No newline at end of file diff --git a/l10n/ar.js b/l10n/ar.js index f12f2d14cd..c3026819a9 100644 --- a/l10n/ar.js +++ b/l10n/ar.js @@ -1,87 +1,174 @@ OC.L10N.register( "calendar", { - "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 " : "تم ارسال البريد بنجاح", - "Hello," : "مرحبا %s،", + "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" : "الفعاليات القادمة", + "Upcoming events" : "الأحداث القادمة", + "More events" : "أحداث أخرى", + "No more events today" : "لا يوجد المزيد من الفعاليات اليوم", + "No upcoming 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" : "تأكيد", + "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) حجز موعداً معك.", + "Anniversary" : "ذكرى سنوية", + "Appointment" : "موعد", + "Business" : "عمل", + "Education" : "تعليم", + "Holiday" : "عطلة", + "Meeting" : "اجتماع", + "Miscellaneous" : "متنوع", + "Non-working hours" : "ساعات خارج العمل", + "Not in office" : "خارج المكتب", + "Personal" : "شخصي", + "Phone call" : "مكالمة هاتفية", + "Sick day" : "اجازة مرضية", + "Special occasion" : "حدث خاص", + "Travel" : "سفر", + "Vacation" : "اجازة", + "Custom Categories" : "الفئات المخصصة", + "Collaborative Tags" : "الوسوم التشاركية", + "Standard Categories" : " الفئات القياسية", "A Calendar app for Nextcloud" : "تطبيق التقويم لـ نكست كلاود", - "Previous day" : "اليوم الماضي", - "Previous week" : "الاسبوع الماضي", + "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 الخاص بنكست كلاود. يمكنك مزامنة الأحداث بسهولة بين مختلف الأجهزة مع نكست كلاود و تحريرها عبر الإنترنت. \n* 🚀 ** التكامل مع تطبيقات نكست كلاود الأخرى! مع تطبيق جهات الاتصال حاليًا و المزيد في المستقبل. تريد وضع مواعيد مباريات فريقك المفضل في التقويم الخاص بك؟ لا مشكلة! \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 day" : "غداً", + "Next week" : "الأسبوع القادم", + "Next year" : "العام القادم", "Next month" : "الشهر القادم", - "+ New event" : "+ فعالية جديدة", + "Event" : "حدث", + "Create new event" : "أنشيء حدثاً جديداً", "Today" : "اليوم", "Day" : "يوم", "Week" : "أسبوع", "Month" : "شهر", + "Year" : "السَّنة", "List" : "قائمة", - "Untitled calendar" : "تقويم بدون اسم", - "Edit name" : "تعديل الاسم", - "Saving name …" : "جاري حفظ الاسم   …", - "Edit color" : "تعديل اللون", - "Saving color …" : "جاري حفظ اللون    …", - "Copy private link" : "نسخ الرابط الخاص", - "Download" : "تنزيل", - "Unshare from me" : "أنت ألغيت المشاركة", + "Preview" : "مُعاينة", + "Copy link" : "إنسخ الرابط", + "Edit" : "تعديل", "Delete" : "حذف ", + "Appointment link was copied to clipboard" : "تمّ نسخ رابط الموعد في الحافظة", + "Appointment link could not be copied to clipboard" : "تعذّر نسخ رابط الموعد في الحافظة", + "Add new" : "إضافة جديد", + "Untitled calendar" : "تقويم بدون اسم", + "Shared with you by" : "مشاركة معك من قِبَل", + "Edit and share calendar" : "عدّل و شارك التقويم", + "Edit calendar" : "عدّل التقويم", + "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." : "حدث خطأ، لا يمكن تعديل لون التقويم.", - "Share link" : "رابط المشاركة", - "Publish calendar" : "نشر التقويم", - "Publishing calendar" : "جاري نشر التقويم", - "Copy public link" : "نسخ الرابط العام", - "Send link to calendar via email" : "ارسال رابط التقويم عبر البريد", - "Enter one address" : "ادخل عنوان بريدي واحد", - "Sending email …" : "جاري ارسال البريد  …", + "_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} ثواني"], + "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" : "أضف تقويم العطلات العامة", + "An error occurred, unable to create the calendar." : "حدث خطأ، يتعذّر إنشاء التقويم.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "يرجى ادخال رابطٍ صحيحٍ (يبدأ بـ https://, http://, webcals://, webcal://)", "Copy subscription link" : "نسخ رابط الاشتراك", - "Copying link …" : "جاري نسخ رابط  …", - "Copied link" : "تم نسخ الرابط", - "Could not copy link" : "لا يمكن نسخ الرابط", - "Copy embedding code" : "نسخ الكود المرفق", + "Copying link …" : "جارٍ نسخ رابط  …", + "Copied link" : "تمّ نسخ الرابط", + "Could not copy link" : "تعذّر نسخ الرابط", + "Export" : "تصدير", + "Calendar link copied to clipboard." : "تم نسخ رابط التقويم إلى الحافظة.", + "Calendar link could not be copied to clipboard." : "تعذّر نسخ رابط التقويم إلى الحافظة.", + "Trash bin" : "سلّة المُهملات", + "Loading deleted items." : "تحميل العناصر المحذوفة", + "You do not have any deleted items." : "لا توجد أي عناصر محذوفة", + "Name" : "الاسم", + "Deleted" : "تمّ حذفه", + "Restore" : "استعادة ", + "Delete permanently" : "حذف نهائي", + "Empty trash bin" : "تفريغ سلة المهملات", + "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?" : "هل ترغب حقّاً في تفريغ سلة المهملات؟", + "_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." : "لا يمكن تعديل ترتيب التقويم.", + "Internal link" : "رابط داخلي", + "A private link that can be used with external clients" : "رابط خاص يمكن استخدامه مع العملاء الخارجيين", + "Copy internal 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" : "حذف ارتباط المشاركة", + "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, 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" : "محاولة إلغاء نشر التقويم أخفقت", "can edit" : "يمكن التحرير", - "Unshare with {displayName}" : "الغاء المشاركة مع {displayName}", - "An error occurred, unable to change the unshare the calendar." : "حدث خطأ، لا يمكن تعديل نشر التقويم", + "Unshare with {displayName}" : "إلغاء المشاركة مع {displayName}", + "An error occurred while unsharing 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://)", - "Could not update calendar order." : "لا يمكن تحديث ترتيب التقويم.", + "Share with users or groups" : "شارك مع مستخدمين او مجموعات", + "No users or groups" : "لا يوجد مستخدمين أو مجموعات", + "Calendar name …" : "اسم التقويم ...", + "Share calendar" : "مُشاركة التقويم", + "Unshare from me" : "أنت ألغيت المشاركة", + "Save" : "حفظ", + "Failed to save calendar name and color" : "تعذّر حفظ اسم و لون التقويم", "Import calendars" : "استيراد التقويم", "Please select a calendar to import into …" : "يرجى اختيار تقويم للاستيراد اليه  …", "Filename" : "اسم الملف", "Calendar to import into" : "تقويم للاستيراد اليه", "Cancel" : "إلغاء", + "_Import calendar_::_Import calendars_" : ["استيراد التقويم","استيراد التقويم","استيراد التقويم","استيراد التقويم","استيراد التقويم","استيراد التقويم"], + "Default attachments location" : "موقع المُرفقات التلقائي", + "Select the default location for attachments" : "عيّن موقع المُرفقات التلقائي", + "Invalid location selected" : "الموقع المُختار غير صحيح", + "Attachments folder successfully saved." : "تمّ بنجاح حفظ مُجلّد المُرفقات", + "Error on saving attachments folder." : "خطأ في حفظ مُجلّد المُرفقات", + "{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 أحداث بنجاح","تم استيراد %n أحداث بنجاح","تم استيراد %n أحداث بنجاح","تم استيراد %n أحداث بنجاح"], "Automatic" : "تلقائي", "Automatic ({detected})" : "تلقائي ({detected})", "New setting was not saved successfully." : "لم يتم حفظ الاعدادات الجديدة.", @@ -94,21 +181,83 @@ 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" : "تكرار الحدث", "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" : "زيادات الوقت time increments", + "Default reminder" : "التذكير الافتراضي", "Copy primary CalDAV address" : "نسخ عنوان CalDAV الرئيسي", "Copy iOS/macOS CalDAV address" : "نسخ عنوان CalDAV لأجهزة الماك/الأيفون", + "Personal availability settings" : "إعدادات التواجد الشخصي", "Show keyboard shortcuts" : "اظهار اختصارات لوحة المفاتيح", - "Settings & import" : "الإعدادات و الإستيراد", + "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} دقيقة","{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 name" : "اسم الموعد", + "Location" : "الموقع", + "Create a Talk room" : "أنشِيءْ غرفة محادثة", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "سيتم إنشاء رابط خاص بكل موعد محجوز و سيتم إرساله عبر البريد الإلكتروني للتأكيد", + "Description" : "الوصف", + "Visibility" : "الرؤية Visibility", + "Duration" : "المدة الزمنية", + "Increments" : "الزيادات", + "Additional calendars to check for conflicts" : "تقاويم إضافية للتحقّق من وجود تعارضات", + "Pick time ranges where appointments are allowed" : "إختر النطاقات الزمنية التي يُسمح فيها بالمواعيد", + "to" : "إلى", + "Delete slot" : "حذف فُرَضَةٍ slot زمنية", + "No times set" : "لم يتم تحديد أي أوقات", + "Add" : "إضافة", + "Monday" : "الإثنين", + "Tuesday" : "الثلاثاء", + "Wednesday" : "الأربعاء", + "Thursday" : "الخميس", + "Friday" : "الجمعة", + "Saturday" : "السبت", + "Sunday" : "الأحد", + "Add time before and after the event" : "أضف مُهلة زمنية قبل وبعد الحدث", + "Before the event" : "قبل الحدث", + "After the event" : "بعد الحدث", + "Planning restrictions" : "قيود التخطيط", + "Minimum time before next available slot" : "أقل زمن قبل الفُرْضَة الزمنية slot التالية", + "Max slots per day" : "أقصى عدد من الفُرَض slots في اليوم", + "Limit how far in the future appointments can be booked" : "تقييد أبعد تاريخ في المستقبل يمكن حجز مواعيد فيه ", + "Create appointment" : "إنشاء موعد", + "Edit appointment" : "تعديل موعد", + "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" : "تذكير", "before at" : "قبل", "Notification" : "تنبيه", "Email" : "البريد الإلكتروني", @@ -120,210 +269,308 @@ OC.L10N.register( "Save time" : "حفظ الوقت", "Remove reminder" : "حذف التذكير", "on" : "في", - "at" : "في", + "at" : "عند", "+ Add reminder" : "+ اضافة تذكير", - "No reminders yet" : "لا يوجد تذكير بعد", - "Availability of attendees, resources and rooms" : "متوفرين من الحضور والموارد والغرف", - "Busy (tentative)" : "مشغول (حاليا)", + "Add reminder" : "أضف تذكيراً", + "_second_::_seconds_" : ["ثانية","ثانية","ثانية","ثواني","ثواني","ثوانٍ"], + "_minute_::_minutes_" : ["دقائق","دقيقة","دقائق","دقائق","دقائق","دقائق"], + "_hour_::_hours_" : ["ساعات","ساعة","ساعات","ساعات","ساعات","ساعات"], + "_day_::_days_" : ["أيام","يوم","أيام","أيام","أيام","أيام"], + "_week_::_weeks_" : ["أسابيع","أسبوع","أسابيع","أسابيع","أسابيع","أسابيع"], + "No attachments" : "لا توجد مُرفقات", + "Add from Files" : "إضِف من الملفات", + "Upload from device" : "إرفع من الجهاز", + "Delete file" : "إحذف الملف", + "Choose a file to add as attachment" : "إختر ملفّاً لإضافته كمرفق", + "Choose a file to share as a link" : "إختر ملفاً لمشاركته كرابط", + "Attachment {name} already exist!" : "المُرفَق {name} موجودٌ سلفاً!", + "_{count} attachment_::_{count} attachments_" : ["{count} مرفقات","{count} مرفق","{count} مرفقات","{count} مرفقات","{count} مرفقات","{count} مرفقات"], + "Invitation accepted" : "تمّ قبول الدعوة", + "Available" : "مُتوفر", + "Suggested" : "مُقترح", + "Participation marked as tentative" : "المُشاركة مبدئية", + "Accepted {organizerName}'s invitation" : "قَبِلَ دعوة {organizerName}", + "Not available" : "غير متوفر", + "Invitation declined" : "الدعوة لم تُقبل", + "Declined {organizerName}'s invitation" : "رفض دعوة {organizerName}", + "Invitation is delegated" : "الدعوة تمّ تفويضها", + "Checking availability" : "تحقّق من التواجد", + "Invitation sent" : "تمّ إرسال الدعوة", + "Has not responded to {organizerName}'s invitation yet" : "لم يَرُدَّ على دعوة {organizerName} بعدُ", + "Availability of attendees, resources and rooms" : "توافر الحضور والموارد والغرف", + "{organizer} (organizer)" : "{organizer} (مُنظِّم)", + "Free" : "مُتاحٌ", + "Busy (tentative)" : "مشغولٌ (حاليّاً)", "Busy" : "مشغول", "Out of office" : "خارج المكتب", "Unknown" : "غير معروف", - "{name} accepted your invitation." : "{name} قبل دعوتك.", - "{name} accepted {organizerName}'s invitation." : "{name} قبل الدعوة من {organizerName}.", - "{name} declined your invitation." : "{name} رفض دعوتك.", - "{name} declined {organizerName}'s invitation." : "{name} رفض الدعوة من {organizerName}.", - "{name} has delegated their invitation." : "{name} اعاد توجيه الدعوة.", - "{name} marked their participation as tentative." : "{name} وضعوا علامة مشاركتهم على أنها مؤقتة.", - "{name} did not respond to your invitation yet." : "{name} لم يرد على دعوتك بعد.", - "{name} did not respond to {organizerName}'s invitation yet." : "{name} لم يرد على دعوة {organizerName} بعد.", - "Create Talk room for this event" : "انشاء غرفة تحدث لهذه الفعالية.", - "Show busy times" : "اظهار الاوقات الممتلئة", - "Successfully appended link to talk room to description." : "تم اضافة الرابط في وصف غرفة التحدث بنجاح.", - "Error creating Talk room" : "خطأ في انشاء غرفة تحدث", - "Send e-mail" : "ارسال بريد", + "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" : "إظهار الأوقات المشغولة", + "No attendees yet" : "لا يوجد حضورٌ بعدُ", + "You don't own this calendar, so you cannot add attendees to this event" : "بما أنك لا تمتلك هذا التقويم، فلا يمكنك إضافة مَدعُوِّين لهذا الحدث", + "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" : "غير مشارك", - "Remove attendee" : "طرد الحاضر", - "Search for e-mails, users, contacts, resources or rooms" : "البحث باستخدام البريد، الاعضاء، جهات الاتصال، الموارد والغرف", - "No match found" : "لا يوجد تطابق", - "No attendees 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" : "اليوم بأكمله", - "Can not 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}", + "Remove attendee" : "إلغاء شخص من قائمة الحضور", + "Search for emails, users or contacts" : "إبحث عن إيميلات، مستخدمين، أو جهات اتصال", + "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" : "طوال اليوم", + "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}", + "Repeat" : "كرّر", "End repeat" : "نهاية التكرار", - "Select to end repeat" : "اختر نهاية التكرار", + "Select to end repeat" : "إختر نهاية التكرار", "never" : "بتاتاً", "on date" : "في تاريخ", "after" : "بعد", - "This event is the recurrence-exception of a recurrence-set. You can not add a recurrence-rule to it." : "هذه الفعالية تكرار استثنائي من تعيين التكرار. لا يمكن اضافة قانون تكرار لها.", - "first" : "اول", + "_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." : "تغيير قانون التكرار يتم تعيينه لهذا ولظهور المستقبل فقط.", - "Repeat" : "التكرار", + "last" : "الأخير", + "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" : "في الـ", - "Monday" : "الإثنين", - "weekday" : "ايام الاسبوع", + "_month_::_months_" : ["شهور","شهر","شهور","شهور","شهور","شهور"], + "_year_::_years_" : ["سنه","سنه","سنه","سنوات","سنوات","سنوات"], + "weekday" : "أيام الاسبوع", "weekend day" : "يوم نهاية الاسبوع", - "Summary" : "المُلخَّص", + "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." : "لا يدعم نكست كلاود تعريف التكرار لهذا الحدث بشكل كامل. إذا قمت بتحرير خيارات التكرار، فقد تفقد بعض التكرارات.", + "Suggestions" : "مُقترحات", + "No rooms or resources yet" : "لا توجد غرفٌ لحجزها بعدُ", + "Add resource" : "إضافة مورِد", + "Has a projector" : "فيها عارض ضوئي projector", + "Has a whiteboard" : "فيها لوحة whiteboard", + "Wheelchair accessible" : "مهيّأةٌ لكراسي المعاقين", + "Remove resource" : "إِلْغِ مورداً", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatCapacity} مقاعد","{seatCapacity} مقعد","{seatCapacity} مقاعد","{seatCapacity} مقاعد","{seatCapacity} مقاعد","{seatCapacity} مقاعد"], + "Projector" : "عارض ضوئي projector", + "Whiteboard" : "لوحة Whiteboard", + "Search for resources or rooms" : "البحث عن موارد أو غُرَف", + "available" : "مُتاحٌ", + "unavailable" : "غير مُتاحٍ", + "Room type" : "نوع الغرفة", + "Any" : "أيّ", + "Minimum seating capacity" : "الحد الأدنى لسعة الجلوس", "More" : "المزيد", - "Save" : "حفظ", - "Update" : "حدث", - "Update this occurrence" : "تغيير هذا الظهور", - "Update this and all future" : "تغيير هذا والمستقبل", + "Update this occurrence" : "تحديث هذا الحدوث", + "Update this and all future" : "تغيير هذه و المستقبلية الأخرى", "Public calendar does not exist" : "التقويم العام غير موجود", - "Maybe the share was deleted or has expired?" : "لربما المشاركة محذوفة أو منتهية؟", - "Please select a timezone:" : "يرجى اختيار المنطقة الزمنية:", - "Pick a time" : "اختر وقت", - "Pick a date" : "اختر تاريخ", + "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 timezone" : "ابحث عن منطقة زمنية", - "Personal" : "شخصي", - "No more events today" : "لا يوجد المزيد من الفعاليات اليوم", - "No upcoming events" : "ليس هناك فعاليات قادمة", - "Create a new event" : "انشاء فعالية جديدة", + "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" : "أكتب للبحث في المنطقة الزمنية ", + "Global" : "عالمي", + "Public holiday calendars" : "تقاويم العطلات العامة", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "يتم توفير تقاويم العطلات العامة من موقع ثندربرد Thunderbird. سوف يتم تنزيل بيانات التقويم من {website}", + "By {authors}" : "من قِبَل {authors}", + "Subscribed" : "مُشترِك subscribed", + "Subscribe" : "إشترك subscribe", + "Holidays in {region}" : "العطلات الرسمية في {region}", + "An error occurred, unable to create the public holiday calendar." : "حدث خطأ، غير قادر على إنشاء تقويم العطللات العامة.", + "Select date" : "إختر التاريخ", + "Select slot" : "إختر الفُرضة الزمنية", + "No slots available" : "لا توجد أي فُرَضةٍ slot مٌتاحةٍ", + "Could not fetch slots" : "تعذّر جلب الفٌرْضَة الزمنية slot", + "The slot for your appointment has been confirmed" : "تمّ تأكيد الفُرَضَة solt المُخصّصة لموعدك", + "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" : "شاهد كل الفُرَض slots المتاحة", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "فُرَضة موعدك من {startDate} إلى {endDate} لم تعُد متاحةً.", + "Please book a different slot:" : "من فضلك، إختر فُرَضةً slot أخرى:", + "Book an appointment with {name}" : "إحجز موعداً مع {name}", + "No public appointments found for {name}" : "لم يُمكن إيجاد أي مواعيد عامة لـ {name}", + "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. يرجى تغيير منطقتك الزمنية في الإعدادات، والإبلاغ عن هذه المشكلة.", + "Create a new event" : "إنشاء حدث جديد", "[Today]" : "[اليوم]", "[Tomorrow]" : "[الغد]", "[Yesterday]" : "[امس]", "[Last] dddd" : "[اخر] dddd", "Event does not exist" : "الفعالية غير موجودة", + "Duplicate" : "تكرار", "Delete this occurrence" : "حذف هذا الظهور", "Delete this and all future" : "حذف هذا الظهور والجميع في الستقبل", "Details" : "التفاصيل", + "Managing shared access" : "إدارة الوصول المُشترَك", + "Deny access" : "منع الوصول", + "Invite" : "يدعو", "Attendees" : "المشاركون", - "Reminders" : "تذكيرات", + "Resources" : "الموارد", + "_User requires access to your file_::_Users require access to your file_" : ["يحتاج المستخدمون إلى الوصول إلى ملفك","يحتاج المستخدم إلى الوصول إلى ملفك","يحتاج المستخدمون إلى الوصول إلى ملفك","يحتاج المستخدمون إلى الوصول إلى ملفك","يحتاج المستخدمون إلى الوصول إلى ملفك","يحتاج المستخدمون إلى الوصول إلى ملفك"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["تتطلب المرفقات وصولاً مشتركًا","يتطلب المرفق وصولاً مشتركًا","تتطلب المرفقات وصولاً مشتركًا","تتطلب المرفقات وصولاً مشتركًا","تتطلب المرفقات وصولاً مشتركًا","تتطلب المرفقات وصولاً مشتركًا"], "Close" : "إغلاق", "Show more details" : "اظهار المزيد من التفاصيل", "Subscribe to {name}" : "اشتراك مع {name}", - "Download {name}" : "تحميل {name}", - "Anniversary" : "ذكرى سنوية", - "Appointment" : "موعد", - "Business" : "عمل", - "Education" : "تعليم", - "Holiday" : "اجازة", - "Meeting" : "اجتماع", - "Miscellaneous" : "متنوع", - "Non-working hours" : "ساعات خارج العمل", - "Not in office" : "خارج المكتب", - "Phone call" : "مكالمة هاتفية", - "Sick day" : "اجازة مرضية", - "Special occasion" : "حدث خاص", - "Travel" : "سفر", - "Vacation" : "اجازة", + "Export {name}" : "تصدير {name}", "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}", + "Week {number} of {year}" : "الأسبوع {number} من {year}", "Does not repeat" : "لا يتكرر", "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 {ordinalNumber} {byDaySet}" : "في {monthNames} في الـ {ordinalNumber} {byDaySet}", "until {untilDate}" : "حتى {untilDate}", - "Untitled event" : "فعالية بدون اسم", + "_%n time_::_%n times_" : ["%n مرات","%n مرة","%n مرات","%n مرات","%n مرات","%n مرات"], + "Untitled event" : "حدث بدون اسم", "Untitled task" : "مهمة بدون اسم", "Please ask your administrator to enable the Tasks App." : "تواصل مع مسؤول النظام لاستخدام تطبيق المهام.", - "prev" : "السابق", - "next" : "التالي", - "prev year" : "العام السابق", - "next year" : "العام القادم", - "today" : "اليوم", - "list" : "قائمة", - "all-day" : "طوال اليوم", + "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" : "لربما انحذفت، أو الحروف غير مطابقة في الرابط", + "No events to display" : "لا توجد أحداث", + "_+%n more_::_+%n more_" : ["+ %n أكثر","+ %n أكثر","+ %n أكثر","+ %n أكثر","+ %n أكثر","+ %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" : "غرفة مناقشة", + "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." : "ظهور الفعالية في التقويم المشارك مع الآخرين.", - "Location" : "الموقع", - "Add a location" : "اضافة موقع", - "Description" : "الوصف", - "Add a description" : "اضافة وصف", + "When shared show full event" : "عرض الحدث كاملاً عند مشاركته", + "When shared show only busy" : "عرض \"مشغول\" busy فقط عند مشاركته", + "When shared hide this event" : "إخفاء هذا الحدث عند مشاركته", + "The visibility of this event in shared calendars." : "ظهور الحدث في التقاويم المشتركة.", + "Add a location" : "إضافة موقع", + "Add a description" : "إضافة وصف", "Status" : "الحالة", "Confirmed" : "مؤكَّد", - "Tentative" : "مؤقت", "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." : "ضع هذه الفعالية في الاعتبار عندما تكون معلومات الحالة متوفر/ مشغول.", - "Free" : "متوفر", + "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" : "لحظة راحة", + "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" : "حدث خطأ أثناء جلب بيانات الملف", + "Chat room for event" : "غرفة محادثة للحدث", + "An error occurred, unable to delete the calendar." : "حدث خطأ، لا يمكن حذف التقويم.", + "Imported {filename}" : "إستيراد {filename}", + "This is an event reminder." : "هذا تذكيرٌ بحدثٍ", + "Meditation" : "تأمُّل", + "Relaxing" : "مُستَرخٍ", "Relax" : "راحة", + "Break" : "فاصل", + "Commute" : "الطريق", + "Commuting" : "تجوال", + "Shuttle" : "خدمة النقل", + "Invoice" : "فاتورة", + "Finance" : "اقتصاد", + "Bank" : "مصرف", + "Money" : "نقود", + "Wedding" : "عُرْسٌ", + "Dog" : "كلب", + "Concert" : "حفل ", + "Festival" : "مهرجان", + "Theater" : "مسرح", + "Theatre" : "مسرح", "Presentation" : "عرض تقديمي", - "Present" : "حاضر", - "Camping" : "تخيم", + "Talk" : "التحدث", + "Speech" : "خطاب", + "Deadline" : "آخر أجلٍ", + "Submission" : "إرسال", + "Reporting" : "كتابة تقارير", + "Camping" : "تخييم", "Camp" : "مخيم", - "Movie" : "فلم", + "Election" : "انتخاب", + "Voting" : "تصويت", + "Vote" : "تصويت", + "Barbecue" : "حفل شواء", + "Barbeque" : "حفل شواء", + "Garden" : "حديقة", + "Farm" : "مزرعة", + "Movie" : "شريط سينمائي", "Cinema" : "سينما", - "Graduation" : "تخرج", + "Graduation" : "حفل تخرُّج", "Brainstorm" : "عصف ذهني", + "Review" : "مراجعة", + "Audit" : "مراجعة", + "Inspection" : "فحص", + "Proofreading" : "تصحيح لغوي", "Baseball" : "بيسبول", "Meet" : "اجتماع", "Planning" : "تخطيط", "Pointing" : "تشكيل", - "Retrospective" : "استعادة احداث", - "Review" : "مراجعة", + "Retrospective" : "إستعادة أحداث", "Office" : "مكتب", - "Contributor week" : "اسبوع المساهم", - "Party" : "حفله", - "Celebration" : "احتفال", + "Contributor week" : "اسبوع المساهمة", "Mail" : "البريد", "Soccer" : "كرة قدم امريكية", "Football" : "كرة قدم", - "Gaming" : "العاب", - "Play" : "تشغيل", - "Game" : "لعبة", - "Drive" : "سياقه", + "Gaming" : "ألعاب", + "Drive" : "يسوق", + "Driving" : "سياقة", "Bicycle" : "ركوب دراجة", "Cycle" : "دراجة هوائية", + "Cycling" : "ركوب الدراجات", "Biking" : "ركوب الدراجة", + "Bike" : "دراجة", "Podcast" : "تدوين صوتي", "Basketball" : "كرة سلة", "Fishing" : "صيد", @@ -334,53 +581,65 @@ OC.L10N.register( "Museum" : "متحف", "Pilates" : "يوغا", "Park" : "حديقة", + "Walk" : "مشيٌ", "Studying" : "دراسة", "Doctor" : "دكتور", "Health" : "صحة", "Dentist" : "طبيب أسنان", + "Hospital" : "مستشفى", "Interview" : "مقابلة", "Training" : "تدريب", "Practice" : "ممارسة", "Sports" : "رياضة", - "Exercise" : "مناوره", + "Exercise" : "تمرين", "Work out" : "تمرين", "Working out" : "تمرين", "Gym" : "نادي رياضي", - "Barber" : "صالون الحلاقة", + "Barber" : "صالون حلاقة", "Haircut" : "قص شعر", + "Hairdresser" : "حلّاق", "Exam" : "اختبار", - "Working" : "جاري العمل", - "New Years Eve" : "بداية السنة", - "NYE" : "حفلة بداية السنة", - "Fireworks" : "العاب نارية", + "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" : "اجتماع فيديو", + "Video-conference" : "إجتماع فيديو", + "Conference-call" : "إجتماع صوتي", + "Video-call" : "مكالمة مرئية", + "Video-chat" : "دردشة مرئية", + "Video-meeting" : "إجتماع مرئي", "Call" : "اتصال", - "Calling" : "جاري الاتصال", - "Christmas" : "حفل ديسمبر", + "Calling" : "جارٍ الاتصال", + "Christmas" : "رأس السنة الميلادية", "Conference" : "مؤتمر", "Pizza" : "بيتزا", "Travelling" : "مسافر", + "Trip" : "رحلة", "Journey" : "رحلة", "Collaborate" : "يتعاون", "Pair" : "اقتران", "Lecture" : "محاضرة", "Seminar" : "ندوة", + "Teaching" : "تدريس", "Photograph" : "تصوير", - "Celebrate" : "احتفال", - "Shopping" : "تسوق", - "Skate" : "تزلج", - "Skateboard" : "لوح تزلج", - "Wine tasting" : "تذوق", - "Golf" : "الجولف", + "Party" : "حفلٌ", + "Celebration" : "احتفال", + "Celebrate" : "يحتفل", + "Birthday" : "عيد ميلاد", + "Shopping" : "تسوُّق", + "Groceries" : "مشتروات للمنزل", + "Skate" : "تزلُّج", + "Skateboard" : "تزلُّج لوحي", + "Wine tasting" : "تذوق مشروبات", + "Golf" : "جولف", "Dinner" : "عشاء", "Lunch" : "غداء", - "Global" : "عالمي" + "Appointment not found" : "الموعد غير موجود", + "User not found" : "المستخدم غير موجود" }, "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 70f3e4e89d..6eb87558c6 100644 --- a/l10n/ar.json +++ b/l10n/ar.json @@ -1,85 +1,172 @@ { "translations": { - "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 " : "تم ارسال البريد بنجاح", - "Hello," : "مرحبا %s،", + "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" : "الفعاليات القادمة", + "Upcoming events" : "الأحداث القادمة", + "More events" : "أحداث أخرى", + "No more events today" : "لا يوجد المزيد من الفعاليات اليوم", + "No upcoming 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" : "تأكيد", + "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) حجز موعداً معك.", + "Anniversary" : "ذكرى سنوية", + "Appointment" : "موعد", + "Business" : "عمل", + "Education" : "تعليم", + "Holiday" : "عطلة", + "Meeting" : "اجتماع", + "Miscellaneous" : "متنوع", + "Non-working hours" : "ساعات خارج العمل", + "Not in office" : "خارج المكتب", + "Personal" : "شخصي", + "Phone call" : "مكالمة هاتفية", + "Sick day" : "اجازة مرضية", + "Special occasion" : "حدث خاص", + "Travel" : "سفر", + "Vacation" : "اجازة", + "Custom Categories" : "الفئات المخصصة", + "Collaborative Tags" : "الوسوم التشاركية", + "Standard Categories" : " الفئات القياسية", "A Calendar app for Nextcloud" : "تطبيق التقويم لـ نكست كلاود", - "Previous day" : "اليوم الماضي", - "Previous week" : "الاسبوع الماضي", + "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 الخاص بنكست كلاود. يمكنك مزامنة الأحداث بسهولة بين مختلف الأجهزة مع نكست كلاود و تحريرها عبر الإنترنت. \n* 🚀 ** التكامل مع تطبيقات نكست كلاود الأخرى! مع تطبيق جهات الاتصال حاليًا و المزيد في المستقبل. تريد وضع مواعيد مباريات فريقك المفضل في التقويم الخاص بك؟ لا مشكلة! \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 day" : "غداً", + "Next week" : "الأسبوع القادم", + "Next year" : "العام القادم", "Next month" : "الشهر القادم", - "+ New event" : "+ فعالية جديدة", + "Event" : "حدث", + "Create new event" : "أنشيء حدثاً جديداً", "Today" : "اليوم", "Day" : "يوم", "Week" : "أسبوع", "Month" : "شهر", + "Year" : "السَّنة", "List" : "قائمة", - "Untitled calendar" : "تقويم بدون اسم", - "Edit name" : "تعديل الاسم", - "Saving name …" : "جاري حفظ الاسم   …", - "Edit color" : "تعديل اللون", - "Saving color …" : "جاري حفظ اللون    …", - "Copy private link" : "نسخ الرابط الخاص", - "Download" : "تنزيل", - "Unshare from me" : "أنت ألغيت المشاركة", + "Preview" : "مُعاينة", + "Copy link" : "إنسخ الرابط", + "Edit" : "تعديل", "Delete" : "حذف ", + "Appointment link was copied to clipboard" : "تمّ نسخ رابط الموعد في الحافظة", + "Appointment link could not be copied to clipboard" : "تعذّر نسخ رابط الموعد في الحافظة", + "Add new" : "إضافة جديد", + "Untitled calendar" : "تقويم بدون اسم", + "Shared with you by" : "مشاركة معك من قِبَل", + "Edit and share calendar" : "عدّل و شارك التقويم", + "Edit calendar" : "عدّل التقويم", + "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." : "حدث خطأ، لا يمكن تعديل لون التقويم.", - "Share link" : "رابط المشاركة", - "Publish calendar" : "نشر التقويم", - "Publishing calendar" : "جاري نشر التقويم", - "Copy public link" : "نسخ الرابط العام", - "Send link to calendar via email" : "ارسال رابط التقويم عبر البريد", - "Enter one address" : "ادخل عنوان بريدي واحد", - "Sending email …" : "جاري ارسال البريد  …", + "_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} ثواني"], + "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" : "أضف تقويم العطلات العامة", + "An error occurred, unable to create the calendar." : "حدث خطأ، يتعذّر إنشاء التقويم.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "يرجى ادخال رابطٍ صحيحٍ (يبدأ بـ https://, http://, webcals://, webcal://)", "Copy subscription link" : "نسخ رابط الاشتراك", - "Copying link …" : "جاري نسخ رابط  …", - "Copied link" : "تم نسخ الرابط", - "Could not copy link" : "لا يمكن نسخ الرابط", - "Copy embedding code" : "نسخ الكود المرفق", + "Copying link …" : "جارٍ نسخ رابط  …", + "Copied link" : "تمّ نسخ الرابط", + "Could not copy link" : "تعذّر نسخ الرابط", + "Export" : "تصدير", + "Calendar link copied to clipboard." : "تم نسخ رابط التقويم إلى الحافظة.", + "Calendar link could not be copied to clipboard." : "تعذّر نسخ رابط التقويم إلى الحافظة.", + "Trash bin" : "سلّة المُهملات", + "Loading deleted items." : "تحميل العناصر المحذوفة", + "You do not have any deleted items." : "لا توجد أي عناصر محذوفة", + "Name" : "الاسم", + "Deleted" : "تمّ حذفه", + "Restore" : "استعادة ", + "Delete permanently" : "حذف نهائي", + "Empty trash bin" : "تفريغ سلة المهملات", + "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?" : "هل ترغب حقّاً في تفريغ سلة المهملات؟", + "_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." : "لا يمكن تعديل ترتيب التقويم.", + "Internal link" : "رابط داخلي", + "A private link that can be used with external clients" : "رابط خاص يمكن استخدامه مع العملاء الخارجيين", + "Copy internal 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" : "حذف ارتباط المشاركة", + "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, 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" : "محاولة إلغاء نشر التقويم أخفقت", "can edit" : "يمكن التحرير", - "Unshare with {displayName}" : "الغاء المشاركة مع {displayName}", - "An error occurred, unable to change the unshare the calendar." : "حدث خطأ، لا يمكن تعديل نشر التقويم", + "Unshare with {displayName}" : "إلغاء المشاركة مع {displayName}", + "An error occurred while unsharing 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://)", - "Could not update calendar order." : "لا يمكن تحديث ترتيب التقويم.", + "Share with users or groups" : "شارك مع مستخدمين او مجموعات", + "No users or groups" : "لا يوجد مستخدمين أو مجموعات", + "Calendar name …" : "اسم التقويم ...", + "Share calendar" : "مُشاركة التقويم", + "Unshare from me" : "أنت ألغيت المشاركة", + "Save" : "حفظ", + "Failed to save calendar name and color" : "تعذّر حفظ اسم و لون التقويم", "Import calendars" : "استيراد التقويم", "Please select a calendar to import into …" : "يرجى اختيار تقويم للاستيراد اليه  …", "Filename" : "اسم الملف", "Calendar to import into" : "تقويم للاستيراد اليه", "Cancel" : "إلغاء", + "_Import calendar_::_Import calendars_" : ["استيراد التقويم","استيراد التقويم","استيراد التقويم","استيراد التقويم","استيراد التقويم","استيراد التقويم"], + "Default attachments location" : "موقع المُرفقات التلقائي", + "Select the default location for attachments" : "عيّن موقع المُرفقات التلقائي", + "Invalid location selected" : "الموقع المُختار غير صحيح", + "Attachments folder successfully saved." : "تمّ بنجاح حفظ مُجلّد المُرفقات", + "Error on saving attachments folder." : "خطأ في حفظ مُجلّد المُرفقات", + "{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 أحداث بنجاح","تم استيراد %n أحداث بنجاح","تم استيراد %n أحداث بنجاح","تم استيراد %n أحداث بنجاح"], "Automatic" : "تلقائي", "Automatic ({detected})" : "تلقائي ({detected})", "New setting was not saved successfully." : "لم يتم حفظ الاعدادات الجديدة.", @@ -92,21 +179,83 @@ "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" : "تكرار الحدث", "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" : "زيادات الوقت time increments", + "Default reminder" : "التذكير الافتراضي", "Copy primary CalDAV address" : "نسخ عنوان CalDAV الرئيسي", "Copy iOS/macOS CalDAV address" : "نسخ عنوان CalDAV لأجهزة الماك/الأيفون", + "Personal availability settings" : "إعدادات التواجد الشخصي", "Show keyboard shortcuts" : "اظهار اختصارات لوحة المفاتيح", - "Settings & import" : "الإعدادات و الإستيراد", + "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} دقيقة","{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 name" : "اسم الموعد", + "Location" : "الموقع", + "Create a Talk room" : "أنشِيءْ غرفة محادثة", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "سيتم إنشاء رابط خاص بكل موعد محجوز و سيتم إرساله عبر البريد الإلكتروني للتأكيد", + "Description" : "الوصف", + "Visibility" : "الرؤية Visibility", + "Duration" : "المدة الزمنية", + "Increments" : "الزيادات", + "Additional calendars to check for conflicts" : "تقاويم إضافية للتحقّق من وجود تعارضات", + "Pick time ranges where appointments are allowed" : "إختر النطاقات الزمنية التي يُسمح فيها بالمواعيد", + "to" : "إلى", + "Delete slot" : "حذف فُرَضَةٍ slot زمنية", + "No times set" : "لم يتم تحديد أي أوقات", + "Add" : "إضافة", + "Monday" : "الإثنين", + "Tuesday" : "الثلاثاء", + "Wednesday" : "الأربعاء", + "Thursday" : "الخميس", + "Friday" : "الجمعة", + "Saturday" : "السبت", + "Sunday" : "الأحد", + "Add time before and after the event" : "أضف مُهلة زمنية قبل وبعد الحدث", + "Before the event" : "قبل الحدث", + "After the event" : "بعد الحدث", + "Planning restrictions" : "قيود التخطيط", + "Minimum time before next available slot" : "أقل زمن قبل الفُرْضَة الزمنية slot التالية", + "Max slots per day" : "أقصى عدد من الفُرَض slots في اليوم", + "Limit how far in the future appointments can be booked" : "تقييد أبعد تاريخ في المستقبل يمكن حجز مواعيد فيه ", + "Create appointment" : "إنشاء موعد", + "Edit appointment" : "تعديل موعد", + "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" : "تذكير", "before at" : "قبل", "Notification" : "تنبيه", "Email" : "البريد الإلكتروني", @@ -118,210 +267,308 @@ "Save time" : "حفظ الوقت", "Remove reminder" : "حذف التذكير", "on" : "في", - "at" : "في", + "at" : "عند", "+ Add reminder" : "+ اضافة تذكير", - "No reminders yet" : "لا يوجد تذكير بعد", - "Availability of attendees, resources and rooms" : "متوفرين من الحضور والموارد والغرف", - "Busy (tentative)" : "مشغول (حاليا)", + "Add reminder" : "أضف تذكيراً", + "_second_::_seconds_" : ["ثانية","ثانية","ثانية","ثواني","ثواني","ثوانٍ"], + "_minute_::_minutes_" : ["دقائق","دقيقة","دقائق","دقائق","دقائق","دقائق"], + "_hour_::_hours_" : ["ساعات","ساعة","ساعات","ساعات","ساعات","ساعات"], + "_day_::_days_" : ["أيام","يوم","أيام","أيام","أيام","أيام"], + "_week_::_weeks_" : ["أسابيع","أسبوع","أسابيع","أسابيع","أسابيع","أسابيع"], + "No attachments" : "لا توجد مُرفقات", + "Add from Files" : "إضِف من الملفات", + "Upload from device" : "إرفع من الجهاز", + "Delete file" : "إحذف الملف", + "Choose a file to add as attachment" : "إختر ملفّاً لإضافته كمرفق", + "Choose a file to share as a link" : "إختر ملفاً لمشاركته كرابط", + "Attachment {name} already exist!" : "المُرفَق {name} موجودٌ سلفاً!", + "_{count} attachment_::_{count} attachments_" : ["{count} مرفقات","{count} مرفق","{count} مرفقات","{count} مرفقات","{count} مرفقات","{count} مرفقات"], + "Invitation accepted" : "تمّ قبول الدعوة", + "Available" : "مُتوفر", + "Suggested" : "مُقترح", + "Participation marked as tentative" : "المُشاركة مبدئية", + "Accepted {organizerName}'s invitation" : "قَبِلَ دعوة {organizerName}", + "Not available" : "غير متوفر", + "Invitation declined" : "الدعوة لم تُقبل", + "Declined {organizerName}'s invitation" : "رفض دعوة {organizerName}", + "Invitation is delegated" : "الدعوة تمّ تفويضها", + "Checking availability" : "تحقّق من التواجد", + "Invitation sent" : "تمّ إرسال الدعوة", + "Has not responded to {organizerName}'s invitation yet" : "لم يَرُدَّ على دعوة {organizerName} بعدُ", + "Availability of attendees, resources and rooms" : "توافر الحضور والموارد والغرف", + "{organizer} (organizer)" : "{organizer} (مُنظِّم)", + "Free" : "مُتاحٌ", + "Busy (tentative)" : "مشغولٌ (حاليّاً)", "Busy" : "مشغول", "Out of office" : "خارج المكتب", "Unknown" : "غير معروف", - "{name} accepted your invitation." : "{name} قبل دعوتك.", - "{name} accepted {organizerName}'s invitation." : "{name} قبل الدعوة من {organizerName}.", - "{name} declined your invitation." : "{name} رفض دعوتك.", - "{name} declined {organizerName}'s invitation." : "{name} رفض الدعوة من {organizerName}.", - "{name} has delegated their invitation." : "{name} اعاد توجيه الدعوة.", - "{name} marked their participation as tentative." : "{name} وضعوا علامة مشاركتهم على أنها مؤقتة.", - "{name} did not respond to your invitation yet." : "{name} لم يرد على دعوتك بعد.", - "{name} did not respond to {organizerName}'s invitation yet." : "{name} لم يرد على دعوة {organizerName} بعد.", - "Create Talk room for this event" : "انشاء غرفة تحدث لهذه الفعالية.", - "Show busy times" : "اظهار الاوقات الممتلئة", - "Successfully appended link to talk room to description." : "تم اضافة الرابط في وصف غرفة التحدث بنجاح.", - "Error creating Talk room" : "خطأ في انشاء غرفة تحدث", - "Send e-mail" : "ارسال بريد", + "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" : "إظهار الأوقات المشغولة", + "No attendees yet" : "لا يوجد حضورٌ بعدُ", + "You don't own this calendar, so you cannot add attendees to this event" : "بما أنك لا تمتلك هذا التقويم، فلا يمكنك إضافة مَدعُوِّين لهذا الحدث", + "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" : "غير مشارك", - "Remove attendee" : "طرد الحاضر", - "Search for e-mails, users, contacts, resources or rooms" : "البحث باستخدام البريد، الاعضاء، جهات الاتصال، الموارد والغرف", - "No match found" : "لا يوجد تطابق", - "No attendees 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" : "اليوم بأكمله", - "Can not 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}", + "Remove attendee" : "إلغاء شخص من قائمة الحضور", + "Search for emails, users or contacts" : "إبحث عن إيميلات، مستخدمين، أو جهات اتصال", + "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" : "طوال اليوم", + "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}", + "Repeat" : "كرّر", "End repeat" : "نهاية التكرار", - "Select to end repeat" : "اختر نهاية التكرار", + "Select to end repeat" : "إختر نهاية التكرار", "never" : "بتاتاً", "on date" : "في تاريخ", "after" : "بعد", - "This event is the recurrence-exception of a recurrence-set. You can not add a recurrence-rule to it." : "هذه الفعالية تكرار استثنائي من تعيين التكرار. لا يمكن اضافة قانون تكرار لها.", - "first" : "اول", + "_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." : "تغيير قانون التكرار يتم تعيينه لهذا ولظهور المستقبل فقط.", - "Repeat" : "التكرار", + "last" : "الأخير", + "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" : "في الـ", - "Monday" : "الإثنين", - "weekday" : "ايام الاسبوع", + "_month_::_months_" : ["شهور","شهر","شهور","شهور","شهور","شهور"], + "_year_::_years_" : ["سنه","سنه","سنه","سنوات","سنوات","سنوات"], + "weekday" : "أيام الاسبوع", "weekend day" : "يوم نهاية الاسبوع", - "Summary" : "المُلخَّص", + "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." : "لا يدعم نكست كلاود تعريف التكرار لهذا الحدث بشكل كامل. إذا قمت بتحرير خيارات التكرار، فقد تفقد بعض التكرارات.", + "Suggestions" : "مُقترحات", + "No rooms or resources yet" : "لا توجد غرفٌ لحجزها بعدُ", + "Add resource" : "إضافة مورِد", + "Has a projector" : "فيها عارض ضوئي projector", + "Has a whiteboard" : "فيها لوحة whiteboard", + "Wheelchair accessible" : "مهيّأةٌ لكراسي المعاقين", + "Remove resource" : "إِلْغِ مورداً", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatCapacity} مقاعد","{seatCapacity} مقعد","{seatCapacity} مقاعد","{seatCapacity} مقاعد","{seatCapacity} مقاعد","{seatCapacity} مقاعد"], + "Projector" : "عارض ضوئي projector", + "Whiteboard" : "لوحة Whiteboard", + "Search for resources or rooms" : "البحث عن موارد أو غُرَف", + "available" : "مُتاحٌ", + "unavailable" : "غير مُتاحٍ", + "Room type" : "نوع الغرفة", + "Any" : "أيّ", + "Minimum seating capacity" : "الحد الأدنى لسعة الجلوس", "More" : "المزيد", - "Save" : "حفظ", - "Update" : "حدث", - "Update this occurrence" : "تغيير هذا الظهور", - "Update this and all future" : "تغيير هذا والمستقبل", + "Update this occurrence" : "تحديث هذا الحدوث", + "Update this and all future" : "تغيير هذه و المستقبلية الأخرى", "Public calendar does not exist" : "التقويم العام غير موجود", - "Maybe the share was deleted or has expired?" : "لربما المشاركة محذوفة أو منتهية؟", - "Please select a timezone:" : "يرجى اختيار المنطقة الزمنية:", - "Pick a time" : "اختر وقت", - "Pick a date" : "اختر تاريخ", + "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 timezone" : "ابحث عن منطقة زمنية", - "Personal" : "شخصي", - "No more events today" : "لا يوجد المزيد من الفعاليات اليوم", - "No upcoming events" : "ليس هناك فعاليات قادمة", - "Create a new event" : "انشاء فعالية جديدة", + "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" : "أكتب للبحث في المنطقة الزمنية ", + "Global" : "عالمي", + "Public holiday calendars" : "تقاويم العطلات العامة", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "يتم توفير تقاويم العطلات العامة من موقع ثندربرد Thunderbird. سوف يتم تنزيل بيانات التقويم من {website}", + "By {authors}" : "من قِبَل {authors}", + "Subscribed" : "مُشترِك subscribed", + "Subscribe" : "إشترك subscribe", + "Holidays in {region}" : "العطلات الرسمية في {region}", + "An error occurred, unable to create the public holiday calendar." : "حدث خطأ، غير قادر على إنشاء تقويم العطللات العامة.", + "Select date" : "إختر التاريخ", + "Select slot" : "إختر الفُرضة الزمنية", + "No slots available" : "لا توجد أي فُرَضةٍ slot مٌتاحةٍ", + "Could not fetch slots" : "تعذّر جلب الفٌرْضَة الزمنية slot", + "The slot for your appointment has been confirmed" : "تمّ تأكيد الفُرَضَة solt المُخصّصة لموعدك", + "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" : "شاهد كل الفُرَض slots المتاحة", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "فُرَضة موعدك من {startDate} إلى {endDate} لم تعُد متاحةً.", + "Please book a different slot:" : "من فضلك، إختر فُرَضةً slot أخرى:", + "Book an appointment with {name}" : "إحجز موعداً مع {name}", + "No public appointments found for {name}" : "لم يُمكن إيجاد أي مواعيد عامة لـ {name}", + "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. يرجى تغيير منطقتك الزمنية في الإعدادات، والإبلاغ عن هذه المشكلة.", + "Create a new event" : "إنشاء حدث جديد", "[Today]" : "[اليوم]", "[Tomorrow]" : "[الغد]", "[Yesterday]" : "[امس]", "[Last] dddd" : "[اخر] dddd", "Event does not exist" : "الفعالية غير موجودة", + "Duplicate" : "تكرار", "Delete this occurrence" : "حذف هذا الظهور", "Delete this and all future" : "حذف هذا الظهور والجميع في الستقبل", "Details" : "التفاصيل", + "Managing shared access" : "إدارة الوصول المُشترَك", + "Deny access" : "منع الوصول", + "Invite" : "يدعو", "Attendees" : "المشاركون", - "Reminders" : "تذكيرات", + "Resources" : "الموارد", + "_User requires access to your file_::_Users require access to your file_" : ["يحتاج المستخدمون إلى الوصول إلى ملفك","يحتاج المستخدم إلى الوصول إلى ملفك","يحتاج المستخدمون إلى الوصول إلى ملفك","يحتاج المستخدمون إلى الوصول إلى ملفك","يحتاج المستخدمون إلى الوصول إلى ملفك","يحتاج المستخدمون إلى الوصول إلى ملفك"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["تتطلب المرفقات وصولاً مشتركًا","يتطلب المرفق وصولاً مشتركًا","تتطلب المرفقات وصولاً مشتركًا","تتطلب المرفقات وصولاً مشتركًا","تتطلب المرفقات وصولاً مشتركًا","تتطلب المرفقات وصولاً مشتركًا"], "Close" : "إغلاق", "Show more details" : "اظهار المزيد من التفاصيل", "Subscribe to {name}" : "اشتراك مع {name}", - "Download {name}" : "تحميل {name}", - "Anniversary" : "ذكرى سنوية", - "Appointment" : "موعد", - "Business" : "عمل", - "Education" : "تعليم", - "Holiday" : "اجازة", - "Meeting" : "اجتماع", - "Miscellaneous" : "متنوع", - "Non-working hours" : "ساعات خارج العمل", - "Not in office" : "خارج المكتب", - "Phone call" : "مكالمة هاتفية", - "Sick day" : "اجازة مرضية", - "Special occasion" : "حدث خاص", - "Travel" : "سفر", - "Vacation" : "اجازة", + "Export {name}" : "تصدير {name}", "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}", + "Week {number} of {year}" : "الأسبوع {number} من {year}", "Does not repeat" : "لا يتكرر", "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 {ordinalNumber} {byDaySet}" : "في {monthNames} في الـ {ordinalNumber} {byDaySet}", "until {untilDate}" : "حتى {untilDate}", - "Untitled event" : "فعالية بدون اسم", + "_%n time_::_%n times_" : ["%n مرات","%n مرة","%n مرات","%n مرات","%n مرات","%n مرات"], + "Untitled event" : "حدث بدون اسم", "Untitled task" : "مهمة بدون اسم", "Please ask your administrator to enable the Tasks App." : "تواصل مع مسؤول النظام لاستخدام تطبيق المهام.", - "prev" : "السابق", - "next" : "التالي", - "prev year" : "العام السابق", - "next year" : "العام القادم", - "today" : "اليوم", - "list" : "قائمة", - "all-day" : "طوال اليوم", + "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" : "لربما انحذفت، أو الحروف غير مطابقة في الرابط", + "No events to display" : "لا توجد أحداث", + "_+%n more_::_+%n more_" : ["+ %n أكثر","+ %n أكثر","+ %n أكثر","+ %n أكثر","+ %n أكثر","+ %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" : "غرفة مناقشة", + "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." : "ظهور الفعالية في التقويم المشارك مع الآخرين.", - "Location" : "الموقع", - "Add a location" : "اضافة موقع", - "Description" : "الوصف", - "Add a description" : "اضافة وصف", + "When shared show full event" : "عرض الحدث كاملاً عند مشاركته", + "When shared show only busy" : "عرض \"مشغول\" busy فقط عند مشاركته", + "When shared hide this event" : "إخفاء هذا الحدث عند مشاركته", + "The visibility of this event in shared calendars." : "ظهور الحدث في التقاويم المشتركة.", + "Add a location" : "إضافة موقع", + "Add a description" : "إضافة وصف", "Status" : "الحالة", "Confirmed" : "مؤكَّد", - "Tentative" : "مؤقت", "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." : "ضع هذه الفعالية في الاعتبار عندما تكون معلومات الحالة متوفر/ مشغول.", - "Free" : "متوفر", + "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" : "لحظة راحة", + "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" : "حدث خطأ أثناء جلب بيانات الملف", + "Chat room for event" : "غرفة محادثة للحدث", + "An error occurred, unable to delete the calendar." : "حدث خطأ، لا يمكن حذف التقويم.", + "Imported {filename}" : "إستيراد {filename}", + "This is an event reminder." : "هذا تذكيرٌ بحدثٍ", + "Meditation" : "تأمُّل", + "Relaxing" : "مُستَرخٍ", "Relax" : "راحة", + "Break" : "فاصل", + "Commute" : "الطريق", + "Commuting" : "تجوال", + "Shuttle" : "خدمة النقل", + "Invoice" : "فاتورة", + "Finance" : "اقتصاد", + "Bank" : "مصرف", + "Money" : "نقود", + "Wedding" : "عُرْسٌ", + "Dog" : "كلب", + "Concert" : "حفل ", + "Festival" : "مهرجان", + "Theater" : "مسرح", + "Theatre" : "مسرح", "Presentation" : "عرض تقديمي", - "Present" : "حاضر", - "Camping" : "تخيم", + "Talk" : "التحدث", + "Speech" : "خطاب", + "Deadline" : "آخر أجلٍ", + "Submission" : "إرسال", + "Reporting" : "كتابة تقارير", + "Camping" : "تخييم", "Camp" : "مخيم", - "Movie" : "فلم", + "Election" : "انتخاب", + "Voting" : "تصويت", + "Vote" : "تصويت", + "Barbecue" : "حفل شواء", + "Barbeque" : "حفل شواء", + "Garden" : "حديقة", + "Farm" : "مزرعة", + "Movie" : "شريط سينمائي", "Cinema" : "سينما", - "Graduation" : "تخرج", + "Graduation" : "حفل تخرُّج", "Brainstorm" : "عصف ذهني", + "Review" : "مراجعة", + "Audit" : "مراجعة", + "Inspection" : "فحص", + "Proofreading" : "تصحيح لغوي", "Baseball" : "بيسبول", "Meet" : "اجتماع", "Planning" : "تخطيط", "Pointing" : "تشكيل", - "Retrospective" : "استعادة احداث", - "Review" : "مراجعة", + "Retrospective" : "إستعادة أحداث", "Office" : "مكتب", - "Contributor week" : "اسبوع المساهم", - "Party" : "حفله", - "Celebration" : "احتفال", + "Contributor week" : "اسبوع المساهمة", "Mail" : "البريد", "Soccer" : "كرة قدم امريكية", "Football" : "كرة قدم", - "Gaming" : "العاب", - "Play" : "تشغيل", - "Game" : "لعبة", - "Drive" : "سياقه", + "Gaming" : "ألعاب", + "Drive" : "يسوق", + "Driving" : "سياقة", "Bicycle" : "ركوب دراجة", "Cycle" : "دراجة هوائية", + "Cycling" : "ركوب الدراجات", "Biking" : "ركوب الدراجة", + "Bike" : "دراجة", "Podcast" : "تدوين صوتي", "Basketball" : "كرة سلة", "Fishing" : "صيد", @@ -332,53 +579,65 @@ "Museum" : "متحف", "Pilates" : "يوغا", "Park" : "حديقة", + "Walk" : "مشيٌ", "Studying" : "دراسة", "Doctor" : "دكتور", "Health" : "صحة", "Dentist" : "طبيب أسنان", + "Hospital" : "مستشفى", "Interview" : "مقابلة", "Training" : "تدريب", "Practice" : "ممارسة", "Sports" : "رياضة", - "Exercise" : "مناوره", + "Exercise" : "تمرين", "Work out" : "تمرين", "Working out" : "تمرين", "Gym" : "نادي رياضي", - "Barber" : "صالون الحلاقة", + "Barber" : "صالون حلاقة", "Haircut" : "قص شعر", + "Hairdresser" : "حلّاق", "Exam" : "اختبار", - "Working" : "جاري العمل", - "New Years Eve" : "بداية السنة", - "NYE" : "حفلة بداية السنة", - "Fireworks" : "العاب نارية", + "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" : "اجتماع فيديو", + "Video-conference" : "إجتماع فيديو", + "Conference-call" : "إجتماع صوتي", + "Video-call" : "مكالمة مرئية", + "Video-chat" : "دردشة مرئية", + "Video-meeting" : "إجتماع مرئي", "Call" : "اتصال", - "Calling" : "جاري الاتصال", - "Christmas" : "حفل ديسمبر", + "Calling" : "جارٍ الاتصال", + "Christmas" : "رأس السنة الميلادية", "Conference" : "مؤتمر", "Pizza" : "بيتزا", "Travelling" : "مسافر", + "Trip" : "رحلة", "Journey" : "رحلة", "Collaborate" : "يتعاون", "Pair" : "اقتران", "Lecture" : "محاضرة", "Seminar" : "ندوة", + "Teaching" : "تدريس", "Photograph" : "تصوير", - "Celebrate" : "احتفال", - "Shopping" : "تسوق", - "Skate" : "تزلج", - "Skateboard" : "لوح تزلج", - "Wine tasting" : "تذوق", - "Golf" : "الجولف", + "Party" : "حفلٌ", + "Celebration" : "احتفال", + "Celebrate" : "يحتفل", + "Birthday" : "عيد ميلاد", + "Shopping" : "تسوُّق", + "Groceries" : "مشتروات للمنزل", + "Skate" : "تزلُّج", + "Skateboard" : "تزلُّج لوحي", + "Wine tasting" : "تذوق مشروبات", + "Golf" : "جولف", "Dinner" : "عشاء", "Lunch" : "غداء", - "Global" : "عالمي" + "Appointment not found" : "الموعد غير موجود", + "User not found" : "المستخدم غير موجود" },"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 075163343b..cdd25d102a 100644 --- a/l10n/ast.js +++ b/l10n/ast.js @@ -2,61 +2,38 @@ OC.L10N.register( "calendar", { "Hello," : "Hola,", - "We wanted to inform you that %s has published the calendar »%s«." : "Quiximos informate de que %s espublizó'l calendariu «%s»", - "Open »%s«" : "Abrir «%s»", - "Cheers!" : "¡Salú!", "Calendar" : "Calendariu", + "%1$s - %2$s" : "%1$s - %2$s", + "Date:" : "Data:", "Today" : "Güei", - "Day" : "Día", - "Week" : "Selmana", - "Month" : "Mes", - "Download" : "Baxar", + "Year" : "Añu", "Delete" : "Desaniciar", - "Share link" : "Share link", - "Share with users or groups" : "Compartir con usuarios y grupos", - "can edit" : "pue editar", - "New calendar" : "Calendariu nuevu", - "Filename" : "Nome de ficheru", - "Cancel" : "Encaboxar", - "Automatic" : "Automáticu", + "Trash bin" : "Papelera", + "Name" : "Nome", + "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", "Actions" : "Aiciones", - "Show week numbers" : "Amosar númberos de la selmana", - "Settings & import" : "Axustes ya importación", - "Notification" : "Avisu", - "Email" : "email", - "Unknown" : "Desconozse", - "All day" : "Tol día", - "never" : "enxamás", - "after" : "dempués", - "Repeat" : "Repitir", + "_{duration} minute_::_{duration} minutes_" : ["{duration} minutu","{duration} minutos"], + "0 minutes" : "0 minutos", + "Description" : "Descripción", + "Duration" : "Duración", "Monday" : "Llunes", - "Summary" : "Sumariu", + "Tuesday" : "Martes", + "Wednesday" : "Miércoles", + "Thursday" : "Xueves", + "Friday" : "Vienres", + "Saturday" : "Sábadu", + "Sunday" : "Domingu", + "Accept" : "Aceptar", + "Decline" : "Refugar", "More" : "Más", - "Save" : "Guardar", - "Update" : "Anovar", - "Personal" : "Personal", + "Time:" : "Hora:", + "[Today]" : "[Güei]", + "[Tomorrow]" : "[Mañana]", + "[Yesterday]" : "[Ayeri]", + "Event does not exist" : "L'eventu nun esiste", "Details" : "Detalles", - "Attendees" : "Asistentes", - "Reminders" : "Recordatorios", - "Close" : "Zarrar", - "Anniversary" : "Aniversariu", - "Week {number} of {year}" : "Selmana {number} del {year}", - "Daily" : "Caldía", - "Weekly" : "Selmanalmente", - "today" : "güei", - "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", - "Location" : "Llocalización", - "Description" : "Descripción", - "Status" : "Estáu", - "Confirmed" : "Confirmáu", - "Tentative" : "Tentativa", - "Categories" : "Estayes", - "Presentation" : "Presentación", - "Office" : "Oficina", - "Mail" : "Corréu", - "Play" : "Reproducir", - "Global" : "Global" + "Resources" : "Recursos", + "%n more" : "%n más" }, "nplurals=2; plural=(n != 1);"); diff --git a/l10n/ast.json b/l10n/ast.json index f09cda06c6..4a860dde64 100644 --- a/l10n/ast.json +++ b/l10n/ast.json @@ -1,60 +1,37 @@ { "translations": { "Hello," : "Hola,", - "We wanted to inform you that %s has published the calendar »%s«." : "Quiximos informate de que %s espublizó'l calendariu «%s»", - "Open »%s«" : "Abrir «%s»", - "Cheers!" : "¡Salú!", "Calendar" : "Calendariu", + "%1$s - %2$s" : "%1$s - %2$s", + "Date:" : "Data:", "Today" : "Güei", - "Day" : "Día", - "Week" : "Selmana", - "Month" : "Mes", - "Download" : "Baxar", + "Year" : "Añu", "Delete" : "Desaniciar", - "Share link" : "Share link", - "Share with users or groups" : "Compartir con usuarios y grupos", - "can edit" : "pue editar", - "New calendar" : "Calendariu nuevu", - "Filename" : "Nome de ficheru", - "Cancel" : "Encaboxar", - "Automatic" : "Automáticu", + "Trash bin" : "Papelera", + "Name" : "Nome", + "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", "Actions" : "Aiciones", - "Show week numbers" : "Amosar númberos de la selmana", - "Settings & import" : "Axustes ya importación", - "Notification" : "Avisu", - "Email" : "email", - "Unknown" : "Desconozse", - "All day" : "Tol día", - "never" : "enxamás", - "after" : "dempués", - "Repeat" : "Repitir", + "_{duration} minute_::_{duration} minutes_" : ["{duration} minutu","{duration} minutos"], + "0 minutes" : "0 minutos", + "Description" : "Descripción", + "Duration" : "Duración", "Monday" : "Llunes", - "Summary" : "Sumariu", + "Tuesday" : "Martes", + "Wednesday" : "Miércoles", + "Thursday" : "Xueves", + "Friday" : "Vienres", + "Saturday" : "Sábadu", + "Sunday" : "Domingu", + "Accept" : "Aceptar", + "Decline" : "Refugar", "More" : "Más", - "Save" : "Guardar", - "Update" : "Anovar", - "Personal" : "Personal", + "Time:" : "Hora:", + "[Today]" : "[Güei]", + "[Tomorrow]" : "[Mañana]", + "[Yesterday]" : "[Ayeri]", + "Event does not exist" : "L'eventu nun esiste", "Details" : "Detalles", - "Attendees" : "Asistentes", - "Reminders" : "Recordatorios", - "Close" : "Zarrar", - "Anniversary" : "Aniversariu", - "Week {number} of {year}" : "Selmana {number} del {year}", - "Daily" : "Caldía", - "Weekly" : "Selmanalmente", - "today" : "güei", - "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", - "Location" : "Llocalización", - "Description" : "Descripción", - "Status" : "Estáu", - "Confirmed" : "Confirmáu", - "Tentative" : "Tentativa", - "Categories" : "Estayes", - "Presentation" : "Presentación", - "Office" : "Oficina", - "Mail" : "Corréu", - "Play" : "Reproducir", - "Global" : "Global" + "Resources" : "Recursos", + "%n more" : "%n más" },"pluralForm" :"nplurals=2; plural=(n != 1);" } \ No newline at end of file diff --git a/l10n/az.js b/l10n/az.js index cc2d08a37d..5fc0442cba 100644 --- a/l10n/az.js +++ b/l10n/az.js @@ -3,35 +3,53 @@ OC.L10N.register( { "Cheers!" : "Şərəfə!", "Calendar" : "Təqvim", + "Personal" : "Şəxsi", "Today" : "Bu gün", "Day" : "Gün", "Week" : "Həftə", "Month" : "Ay", - "Download" : "Yüklə", + "Copy link" : "linki nüsxələ", + "Edit" : "Dəyişiklik et", "Delete" : "Sil", + "New calendar" : "Yeni təqvim", + "Export" : "Çıxarış", + "Name" : "Ad", + "Deleted" : "Silinib", + "Restore" : "Geri qaytar", + "Delete permanently" : "Həmişəlik sil", "Share link" : "Linki yayımla", "can edit" : "dəyişmək olar", - "New calendar" : "Yeni təqvim", + "Save" : "Saxla", "Cancel" : "Dayandır", "Automatic" : "Avtomatik", "Actions" : "İşlər", + "Location" : "Yerləşdiyiniz ünvan", + "Description" : "Açıqlanma", + "to" : "doğru", + "Add" : "Əlavə etmək", + "Monday" : "Bazar ertəsi", + "Tuesday" : "Çərşənbə axşamı", + "Wednesday" : "Çərşənbə", + "Thursday" : "Cümə axşamı", + "Friday" : "Cümə", + "Saturday" : "Şənbə", + "Sunday" : "Bazar", + "Update" : "Yenilənmə", + "Your email address" : "Sizin email ünvanı", "Email" : "Email", - "never" : "heç vaxt", + "Choose a file to add as attachment" : "Əlavə ediləcək faylı seçin", + "Accept" : "Qəbul et", + "Send email" : "Email yolla", "Repeat" : "Təkrar", - "Monday" : "Bazar ertəsi", + "never" : "heç vaxt", "More" : "Daha da", - "Save" : "Saxla", - "Update" : "Yenilənmə", - "Personal" : "Şəxsi", "Details" : "Detallar", "Attendees" : "İştirakçılar", "Close" : "Bağla", "Daily" : "Günlük", "Weekly" : "Həftəlik", - "today" : "Bu gün", - "Location" : "Yerləşdiyiniz ünvan", - "Description" : "Açıqlanma", + "Other" : "Digər", "Mail" : "Məktub", - "Play" : "Oxu" + "Birthday" : "Ad günü" }, "nplurals=2; plural=(n != 1);"); diff --git a/l10n/az.json b/l10n/az.json index 5d63662e31..85aa76ecbd 100644 --- a/l10n/az.json +++ b/l10n/az.json @@ -1,35 +1,53 @@ { "translations": { "Cheers!" : "Şərəfə!", "Calendar" : "Təqvim", + "Personal" : "Şəxsi", "Today" : "Bu gün", "Day" : "Gün", "Week" : "Həftə", "Month" : "Ay", - "Download" : "Yüklə", + "Copy link" : "linki nüsxələ", + "Edit" : "Dəyişiklik et", "Delete" : "Sil", + "New calendar" : "Yeni təqvim", + "Export" : "Çıxarış", + "Name" : "Ad", + "Deleted" : "Silinib", + "Restore" : "Geri qaytar", + "Delete permanently" : "Həmişəlik sil", "Share link" : "Linki yayımla", "can edit" : "dəyişmək olar", - "New calendar" : "Yeni təqvim", + "Save" : "Saxla", "Cancel" : "Dayandır", "Automatic" : "Avtomatik", "Actions" : "İşlər", + "Location" : "Yerləşdiyiniz ünvan", + "Description" : "Açıqlanma", + "to" : "doğru", + "Add" : "Əlavə etmək", + "Monday" : "Bazar ertəsi", + "Tuesday" : "Çərşənbə axşamı", + "Wednesday" : "Çərşənbə", + "Thursday" : "Cümə axşamı", + "Friday" : "Cümə", + "Saturday" : "Şənbə", + "Sunday" : "Bazar", + "Update" : "Yenilənmə", + "Your email address" : "Sizin email ünvanı", "Email" : "Email", - "never" : "heç vaxt", + "Choose a file to add as attachment" : "Əlavə ediləcək faylı seçin", + "Accept" : "Qəbul et", + "Send email" : "Email yolla", "Repeat" : "Təkrar", - "Monday" : "Bazar ertəsi", + "never" : "heç vaxt", "More" : "Daha da", - "Save" : "Saxla", - "Update" : "Yenilənmə", - "Personal" : "Şəxsi", "Details" : "Detallar", "Attendees" : "İştirakçılar", "Close" : "Bağla", "Daily" : "Günlük", "Weekly" : "Həftəlik", - "today" : "Bu gün", - "Location" : "Yerləşdiyiniz ünvan", - "Description" : "Açıqlanma", + "Other" : "Digər", "Mail" : "Məktub", - "Play" : "Oxu" + "Birthday" : "Ad günü" },"pluralForm" :"nplurals=2; plural=(n != 1);" } \ No newline at end of file diff --git a/l10n/bg.js b/l10n/bg.js index a9ff3db90f..1baf751150 100644 --- a/l10n/bg.js +++ b/l10n/bg.js @@ -5,13 +5,53 @@ OC.L10N.register( "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 " : "Успешно изпратен имейл до", + "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" : "Предстоящи събития", + "More events" : "Повече събития", + "No more events today" : " Няма повече събития за днес", + "No upcoming 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\" 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 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) резервира среща с вас.", + "Anniversary" : "Годишнина", + "Appointment" : "Среща", + "Business" : "Бизнес", + "Education" : "Обучение", + "Holiday" : "Празник", + "Meeting" : "Среща", + "Miscellaneous" : "Разни", + "Non-working hours" : "Неработно време", + "Not in office" : "Не е в офиса", + "Personal" : "Лични", + "Phone call" : "Телефонен разговор", + "Sick day" : "Болничен ден", + "Special occasion" : "Специален повод", + "Travel" : "Пътуване", + "Vacation" : "Отпуска", + "Collaborative Tags" : "Съвместни Етикети", "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" : "Вчера", @@ -19,41 +59,68 @@ OC.L10N.register( "Previous month" : "Предишен месец", "Next day" : "Утре", "Next week" : "Следваща седмица", + "Next year" : "Следващата година", "Next month" : "Следващия месец", - "+ New event" : "Ново събитие", + "Event" : "Събитие", "Today" : "Днес", "Day" : "Ден", "Week" : "Седмица", "Month" : "Месец", + "Year" : "Година", "List" : "Списък", - "Untitled calendar" : "Нов календар", - "Edit name" : "Редактирай името", - "Saving name …" : "Запазване...", - "Edit color" : "Смени цвета", - "Saving color …" : "Запазване на цвета ...", - "Copy private link" : "Копирай скритата връзка", - "Download" : "Изтегляне", - "Unshare from me" : "Прекратяване на споделянето от мен", + "Preview" : "Визуализация", + "Copy link" : "Копиране на връзката", + "Edit" : "Редакция", "Delete" : "Изтриване", + "Appointment link was copied to clipboard" : "Връзката за среща е копирана в клипборда", + "Appointment link could not be copied to clipboard" : "Връзката за среща не можа да бъде копирана в клипборда", + "Add new" : "Добави нов", + "Untitled calendar" : "Нов календар", + "Shared with you by" : "Споделено с вас от", + "Edit and share calendar" : "Редактиране и споделяне на календар", + "Edit calendar" : "Редактиране на календар", + "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." : "Възникна грешка, невъзможност да се промени цвета на календара.", "_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} секундии"], + "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://)", + "Copy subscription link" : "Копиране на връзката за абониране", + "Copying link …" : "Копиране на връзката …", + "Copied link" : "Копирано!", + "Could not copy link" : "Връзката не можа да се копира", + "Export" : "Експорт /изнасям/", + "Calendar link copied to clipboard." : "Връзка за Календара е копирана в клипборда", + "Calendar link could not be copied to clipboard." : "Връзката за Календара не може да се копира в клипборда", + "Trash bin" : "Кошче за бклук", + "Loading deleted items." : "Зареждане на изтрити елементи.", + "You do not have any deleted items." : "Нямате изтрити елементи.", + "Name" : "Име", + "Deleted" : "Изтрито", + "Restore" : "Възстановяне", + "Delete permanently" : "Изтрий завинаги", + "Empty trash bin" : "Изпразване на кошчето за боклук", + "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?" : "Наистина ли искате да изпразните кошчето за боклук?", + "_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." : " Невъзможност да се актуализира записът в календара", "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" : "Кодът е копиран", @@ -65,32 +132,31 @@ OC.L10N.register( "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" : "Няма потребители или групи", "can edit" : "може да редактира", "Unshare with {displayName}" : "Прекратява споделянето с {displayName}", - "An error occurred, unable to change the unshare the calendar." : "Възникна грешка, невъзможност да се промени прекратяването на споделяне на календара.", + "An error occurred while unsharing 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://)", - "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_" : ["Импортиране на календар","Импортиране на календари"], - "{filename} is an unsupported file-type" : "{filename} е неподдържан тип файл", + "Default attachments location" : "Местоположение на прикачените файлове по подразбиране", + "Select the default location for attachments" : "Избор на местоположение на прикачените файлове по подразбиране", + "Invalid location selected" : "Избрано е невалидно местоположение", + "Attachments folder successfully saved." : "Папката с прикачени файлове е записана успешно.", + "Error on saving attachments folder." : "Грешка при запазване на папката с прикачени файлове.", "{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 събитие"], + "_Successfully imported %n event_::_Successfully imported %n events_" : ["Успешно импортиране на %n събития","Успешно импортиране на %n събития"], "Automatic" : "Автоматично", "Automatic ({detected})" : "Автоматично (detected})", "New setting was not saved successfully." : " Неуспешно запазване на новата настройка.", @@ -103,21 +169,82 @@ OC.L10N.register( "Day view" : "Дневен изглед", "Week view" : "Седмичен изглед", "Month view" : "Месечен изглед", + "List view" : "Списъчен изглед", "Actions" : "Действия", "Create event" : "Създай събитие", "Show shortcuts" : "Показване на преките пътища", + "Editor" : "Редактор", + "Close editor" : "Затваряне на редактора", + "Save edited event" : "Запиши редактираното събитие", + "Delete edited event" : "Изтриване на редактираното събитие", + "Duplicate event" : "Дублирано събитие", "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 reminder" : "Напомняне по подразбиране", "Copy primary CalDAV address" : "Копиране на основния CalDAV адрес", "Copy iOS/macOS CalDAV address" : "Копиране iOS/macOS CalDAV адрес", + "Personal availability settings" : "Настройки за лична достъпност", "Show keyboard shortcuts" : "Показване на клавишни комбинации", - "Settings & import" : "Настройки и внасяне", + "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} минути"], + "_{duration} day_::_{duration} days_" : ["{duration} дни","{duration} дни"], + "_{duration} week_::_{duration} weeks_" : ["{duration} минути","{duration} седмици"], + "_{duration} month_::_{duration} months_" : ["{duration} месеца","{duration} минути"], + "_{duration} year_::_{duration} years_" : ["{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 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" : "Вторник", + "Wednesday" : "Сряда", + "Thursday" : "Четвъртък", + "Friday" : "Петък", + "Saturday" : "Събота", + "Sunday" : "Неделя", + "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" : "Редактиране на среща", + "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" : "Напомняне", "before at" : "преди в", "Notification" : "Известие", "Email" : "Имейл", @@ -131,55 +258,79 @@ OC.L10N.register( "on" : "на", "at" : "в", "+ Add reminder" : "+ Добави напомняне", + "Add reminder" : "Добавяне на напомняне", "_second_::_seconds_" : ["секунда","секунди"], "_minute_::_minutes_" : ["минута","минути"], "_hour_::_hours_" : ["час","часове"], "_day_::_days_" : ["ден","дни"], "_week_::_weeks_" : ["седмица","седмици"], - "No reminders yet" : "Няма напомняния", + "No attachments" : "Няма прикачени файлове", + "Add from Files" : "Добавяне от файлове", + "Upload from device" : "Качване от устройство", + "Delete file" : "Изтриване на файл", + "Choose a file to add as attachment" : "Избери файл за прикачване", + "Choose a file to share as a link" : "Изберете файл, който да споделите като връзка", + "Attachment {name} already exist!" : " Прикаченият файл {name} вече съществува!", + "_{count} attachment_::_{count} attachments_" : ["{count} прикачени файлове","{count} прикачени файлове"], + "Invitation accepted" : "Поканата е приета", + "Available" : "Наличен.", + "Suggested" : "Препоръчан", + "Participation marked as tentative" : "Участието е отбелязано като условно", + "Accepted {organizerName}'s invitation" : "Поканата на {organizerName} е приета", + "Not available" : "Не е наличен", + "Invitation declined" : "Поканата е отхвърлена", + "Declined {organizerName}'s invitation" : "Поканата на {organizerName} е отхвърлена", + "Invitation is delegated" : "Поканата е делегирана", + "Checking availability" : "Проверка на наличността", + "Invitation sent" : "Изпратена е покана", + "Has not responded to {organizerName}'s invitation yet" : "Все още няма отговор на поканата на {organizerName}", "Availability of attendees, resources and rooms" : "Наличие на присъстващи, ресурси и стаи", + "{organizer} (organizer)" : "{organizer} (organizer)", + "Free" : " Свободни", "Busy (tentative)" : "Зает (временно)", "Busy" : "Зает", "Out of office" : "Извън офиса", "Unknown" : "Непознат", - "{name} accepted your invitation." : "{name} е приел поканата ви.", - "{name} accepted {organizerName}'s invitation." : "{name} е приел поканата на {organizerName}.", - "{name} declined your invitation." : "{name} е отхвърлил поканата ви.", - "{name} declined {organizerName}'s invitation." : "{name} е отхвърлил поканата на {organizerName}.", - "{name} has delegated their invitation." : "{name} е делегирал поканата си.", - "{name} marked their participation as tentative." : "{name} е означил участието си като условно.", - "{name} did not respond to your invitation yet." : "{name} още не е отговорил на поканата ви.", - "{name} did not respond to {organizerName}'s invitation yet." : "{name} все още не е отговорил на поканата на {organizerName}.", + "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" : "Показване на натоварените часове", + "No attendees yet" : "Все още няма участващи", "Successfully appended link to talk room to description." : "Успешно добавена връзка към стаята за разговори от описанието.", "Error creating Talk room" : "Грешка при създаването на Стая за разговори", - "Send e-mail" : "Изпрати имейл", + "Send email" : "Изпрати е-мейл", "Chairperson" : "Председател", "Required participant" : "Необходим участник", "Optional participant" : " Участник по желание", "Non-participant" : "Неучастник", "Remove attendee" : "Премахване на участник", - "Search for e-mails, users, contacts, resources or rooms" : "Търсене на имейли, потребители, контакти, ресурси или стаи", + "Search for emails, users or contacts" : "Търсене на имейли, потребители или контакти", "No match found" : "Няма намерено съвпадение", - "No attendees yet" : "Все още няма участващи", "(organizer)" : "(организатор)", "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "За да изпращате покани и да обработвате отговори, [отваряне на връзка] добавете вашия имейл адрес в личните настройки [затваряне на връзка].", "Remove color" : "Премахване на цвят", "Event title" : "Заглавие на събитие", "All day" : "Цял ден", - "Can not 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 {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" : "никога", "on date" : "на дата", "after" : "след", "_time_::_times_" : ["пъти","пъти"], - "This event is the recurrence-exception of a recurrence-set. You can not 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" : "четвърти", @@ -187,25 +338,37 @@ OC.L10N.register( "second to last" : "предпоследен", "last" : "последен", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Промените в правилото за повторение ще се прилагат само за това и за всички бъдещи събития.", - "Repeat" : "Да се повтаря", "Repeat every" : "Повтаряй всеки", "By day of the month" : "От ден на месеца", "On the" : "На", "_month_::_months_" : ["месец","месеци"], "_year_::_years_" : ["година","години"], - "Monday" : "понеделник", "weekday" : "делничен ден", "weekend day" : "Почивен ден", - "Summary" : "Резюме", + "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" : "Препоръки", + "No rooms or resources yet" : "Все още няма стаи или ресурси", + "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" : "не е наличен", + "Room type" : "Тип стая", + "Any" : "Всяка", + "Minimum seating capacity" : "Минимален капацитет за сядане", "More" : "Още", - "Save" : "Запазване", - "Update" : "Обновяване", "Update this occurrence" : "Актуализиране на това събитие", "Update this and all future" : "Актуализиране на това и на всички бъдещи", "Public calendar does not exist" : "Публичният календар не съществува", "Maybe the share was deleted or has expired?" : "Може би споделянето е изтрито или е изтекло?", - "Please select a timezone:" : "Моля, изберете часова зона:", + "Please select a time zone:" : "Моля, изберете часова зона:", "Pick a time" : "Изберете час", "Pick a date" : "Изберете дата", "from {formattedDate}" : "от {formattedDate}", @@ -217,41 +380,47 @@ OC.L10N.register( "{formattedDate} at {formattedTime}" : " {formattedDate} в {formattedTime}", "Please enter a valid date" : "Моля да въведете валидна дата", "Please enter a valid date and time" : "Моля да въведете валидна дата и час", - "Type to search timezone" : "Въведете за търсене в часовата зона", - "Personal" : "Лични", - "The automatic timezone detection determined your timezone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your timezone manually in the calendar settings." : "Автоматичното разпознаване на часовата зона определи че вашата часова зона е UTC.\nТова най-вероятно е резултат от мерките за сигурност на вашия уеб браузър.\nМоля да зададете часовата зона ръчно в настройките на календара.", - "Your configured timezone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your timezone in the settings and report this issue." : "Конфигурираната от вас часова зона ({timezoneId}) не беше намерена. Връща се обратно към UTC.\nМоля да промените часовата зона в настройките ида докладвате за този проблем.", - "No more events today" : " Няма повече събития за днес", - "No upcoming events" : "Няма предстоящи събития", + "Type to search time zone" : "Въведете, за търсене на часова зона", + "Global" : "Глобални", + "Subscribed" : "Абониран", + "Subscribe" : "Абониране", + "Select 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}", + "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Моля, променете часовата си зона в настройките и докладвайте за този проблем.", "Create a new event" : "Създай ново събитие", "[Today]" : "[днес]", "[Tomorrow]" : "[утре]", "[Yesterday]" : "[вчера]", "[Last] dddd" : "[Последен] dddd", "Event does not exist" : "Събитието не съществува", + "Duplicate" : "Дубликат", "Delete this occurrence" : "Изтриване на това събитие", "Delete this and all future" : "Изтриване на това и на всички бъдещи ", "Details" : "Подробности", + "Managing shared access" : "Управление на споделения достъп", + "Deny access" : "Отказване на достъп", + "Invite" : "Покани", "Attendees" : "Участници", - "Reminders" : "Напомняне", + "Resources" : "Ресурси", + "_User requires access to your file_::_Users require access to your file_" : ["Потребителите трябва да имат достъп до вашия файл","Потребителите трябва да имат достъп до вашия файл"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Прикачени файлове, изискващи споделен достъп","Прикачени файлове, изискващи споделен достъп"], "Close" : "Затвори", "Show more details" : "Показване на повече подробности", "Subscribe to {name}" : "Абониране за {name}", - "Download {name}" : "Изтегляне на {name}", - "Anniversary" : "Годишнина", - "Appointment" : "Среща", - "Business" : "Бизнес", - "Education" : "Обучение", - "Holiday" : "Празник", - "Meeting" : "Среща", - "Miscellaneous" : "Разни", - "Non-working hours" : "Неработно време", - "Not in office" : "Не е в офиса", - "Phone call" : "Телефонен разговор", - "Sick day" : "Болничен ден", - "Special occasion" : "Специален повод", - "Travel" : "Пътуване", - "Vacation" : "Отпуска", + "Export {name}" : "Експортиране /изнасям/ на {name}", "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 week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%nседмица преди събитието в {formattedHourMinute}","%nседмица преди събитието в {formattedHourMinute}"], @@ -284,14 +453,7 @@ OC.L10N.register( "Untitled event" : "Събитие без заглавие", "Untitled task" : "Задача без заглавие", "Please ask your administrator to enable the Tasks App." : "Моля, помолете вашия администратор да активира приложението за Задачи.", - "prev" : " предишен", - "next" : "следващ", - "prev year" : "предишната година", - "next year" : "следващата година", - "today" : "днес", - "list" : "списък", "W" : "W", - "all-day" : "цял ден", "%n more" : "%n повече", "No events to display" : "Няма събития за показване", "_+%n more_::_+%n more_" : ["+","+%n повече"], @@ -299,62 +461,95 @@ OC.L10N.register( "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" : "Зала за семинари", + "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." : "Видимостта на това събитие в споделени календари.", - "Location" : "Местоположение", "Add a location" : "Добавяне на местоположение", - "Description" : "Описание", "Add a description" : "Добави описание", "Status" : "Състояние", "Confirmed" : "Потвърдено", - "Tentative" : "Несигурно", "Canceled" : "Отказано", "Confirmation about the overall status of the event." : "Потвърждение заобщото състояние на събитието.", "Show as" : "Показване като", "Take this event into account when calculating free-busy information." : " Това събитие да се вземе предвид при изчисляване на информация за заетостта.", - "Free" : " Свободни", "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" : "Възникна грешка при получаването на информация за файла", "Chat room for event" : "Чат стая за събитие", + "An error occurred, unable to delete the calendar." : "Възникна грешка, невъзможност да се изтрие календара.", "Imported {filename}" : "Импортирано {filename}", + "This is an event reminder." : "Това е напомняне за събитие.", "Meditation" : "Медитация", "Relaxing" : "Релаксиращ", "Relax" : "Почивка", + "Break" : "Прекъсване", + "Commute" : "Замяна", + "Commuting" : "Работно пътуване", + "Shuttle" : "Трансфер", + "Invoice" : "Фактура", + "Finance" : "Финанси", + "Bank" : "Банка", + "Money" : "Пари", + "Wedding" : "Сватба", + "Dog" : "Куче", + "Concert" : "Концерт", + "Festival" : "Фестивал", + "Theater" : "Театър", + "Theatre" : "Театър", "Presentation" : "Презентация", - "Present" : "Настояще", + "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" : "Ретроспективен", - "Review" : "Преглед", "Office" : "Офис", "Contributor week" : "Седмица на сътрудника", - "Party" : "Купон", - "Celebration" : "Празненство", "Mail" : "Поща", "Soccer" : "Футбол", "Football" : "Футбол", "Gaming" : "Игри", - "Play" : "Пусни", - "Game" : "Игра", "Drive" : "Шофиране", + "Driving" : "Шофиране", "Bicycle" : "Велосипед", "Cycle" : "Колело", + "Cycling" : "Колоездене", "Biking" : "Колоездене", + "Bike" : "Велосипед", "Podcast" : "Подкаст", "Basketball" : "Баскетбол", "Fishing" : "Риболов", @@ -365,10 +560,12 @@ OC.L10N.register( "Museum" : "Музей", "Pilates" : "Пилатес", "Park" : "Парк", + "Walk" : "Разходка", "Studying" : "Изучаване", "Doctor" : "Доктор", "Health" : "Здраве", "Dentist" : "Зъболекар", + "Hospital" : "Болница", "Interview" : "Интервю", "Training" : "Обучение", "Practice" : "Практика", @@ -379,7 +576,10 @@ OC.L10N.register( "Gym" : "Фитнес", "Barber" : "Бръснар", "Haircut" : "Подстрижка", + "Hairdresser" : "Фризьор", "Exam" : "Изпит", + "Written test" : "Писмен тест", + "Oral test" : "Устен изпит", "Working" : "Работа", "New Years Eve" : "Навечерието на Нова Година", "NYE" : "ННГ", @@ -398,20 +598,27 @@ OC.L10N.register( "Conference" : "Конференция", "Pizza" : "Пица", "Travelling" : "Пътуване", + "Trip" : "Пътуване", "Journey" : "Пътешествие", - "Collaborate" : "Сътрудействие", + "Collaborate" : "Сътрудничество", "Pair" : "Двойка", "Lecture" : "Лекция", "Seminar" : "Семинар", + "Teaching" : "Преподаване", "Photograph" : "Фотограф", + "Party" : "Купон", + "Celebration" : "Празненство", "Celebrate" : "Празнуване", + "Birthday" : "Рожден ден", "Shopping" : "Пазаруване", + "Groceries" : "Бакалия", "Skate" : "Каране на кънки", "Skateboard" : "Скейтборд", "Wine tasting" : "Дегустация на вино", "Golf" : "Голф", "Dinner" : "Вечеря", "Lunch" : "Обяд", - "Global" : "Глобални" + "Appointment not found" : "Срещата не е намерена", + "User not found" : "Потребителят не е намерен " }, "nplurals=2; plural=(n != 1);"); diff --git a/l10n/bg.json b/l10n/bg.json index 60c7b16233..b76bc02969 100644 --- a/l10n/bg.json +++ b/l10n/bg.json @@ -3,13 +3,53 @@ "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 " : "Успешно изпратен имейл до", + "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" : "Предстоящи събития", + "More events" : "Повече събития", + "No more events today" : " Няма повече събития за днес", + "No upcoming 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\" 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 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) резервира среща с вас.", + "Anniversary" : "Годишнина", + "Appointment" : "Среща", + "Business" : "Бизнес", + "Education" : "Обучение", + "Holiday" : "Празник", + "Meeting" : "Среща", + "Miscellaneous" : "Разни", + "Non-working hours" : "Неработно време", + "Not in office" : "Не е в офиса", + "Personal" : "Лични", + "Phone call" : "Телефонен разговор", + "Sick day" : "Болничен ден", + "Special occasion" : "Специален повод", + "Travel" : "Пътуване", + "Vacation" : "Отпуска", + "Collaborative Tags" : "Съвместни Етикети", "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" : "Вчера", @@ -17,41 +57,68 @@ "Previous month" : "Предишен месец", "Next day" : "Утре", "Next week" : "Следваща седмица", + "Next year" : "Следващата година", "Next month" : "Следващия месец", - "+ New event" : "Ново събитие", + "Event" : "Събитие", "Today" : "Днес", "Day" : "Ден", "Week" : "Седмица", "Month" : "Месец", + "Year" : "Година", "List" : "Списък", - "Untitled calendar" : "Нов календар", - "Edit name" : "Редактирай името", - "Saving name …" : "Запазване...", - "Edit color" : "Смени цвета", - "Saving color …" : "Запазване на цвета ...", - "Copy private link" : "Копирай скритата връзка", - "Download" : "Изтегляне", - "Unshare from me" : "Прекратяване на споделянето от мен", + "Preview" : "Визуализация", + "Copy link" : "Копиране на връзката", + "Edit" : "Редакция", "Delete" : "Изтриване", + "Appointment link was copied to clipboard" : "Връзката за среща е копирана в клипборда", + "Appointment link could not be copied to clipboard" : "Връзката за среща не можа да бъде копирана в клипборда", + "Add new" : "Добави нов", + "Untitled calendar" : "Нов календар", + "Shared with you by" : "Споделено с вас от", + "Edit and share calendar" : "Редактиране и споделяне на календар", + "Edit calendar" : "Редактиране на календар", + "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." : "Възникна грешка, невъзможност да се промени цвета на календара.", "_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} секундии"], + "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://)", + "Copy subscription link" : "Копиране на връзката за абониране", + "Copying link …" : "Копиране на връзката …", + "Copied link" : "Копирано!", + "Could not copy link" : "Връзката не можа да се копира", + "Export" : "Експорт /изнасям/", + "Calendar link copied to clipboard." : "Връзка за Календара е копирана в клипборда", + "Calendar link could not be copied to clipboard." : "Връзката за Календара не може да се копира в клипборда", + "Trash bin" : "Кошче за бклук", + "Loading deleted items." : "Зареждане на изтрити елементи.", + "You do not have any deleted items." : "Нямате изтрити елементи.", + "Name" : "Име", + "Deleted" : "Изтрито", + "Restore" : "Възстановяне", + "Delete permanently" : "Изтрий завинаги", + "Empty trash bin" : "Изпразване на кошчето за боклук", + "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?" : "Наистина ли искате да изпразните кошчето за боклук?", + "_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." : " Невъзможност да се актуализира записът в календара", "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" : "Кодът е копиран", @@ -63,32 +130,31 @@ "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" : "Няма потребители или групи", "can edit" : "може да редактира", "Unshare with {displayName}" : "Прекратява споделянето с {displayName}", - "An error occurred, unable to change the unshare the calendar." : "Възникна грешка, невъзможност да се промени прекратяването на споделяне на календара.", + "An error occurred while unsharing 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://)", - "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_" : ["Импортиране на календар","Импортиране на календари"], - "{filename} is an unsupported file-type" : "{filename} е неподдържан тип файл", + "Default attachments location" : "Местоположение на прикачените файлове по подразбиране", + "Select the default location for attachments" : "Избор на местоположение на прикачените файлове по подразбиране", + "Invalid location selected" : "Избрано е невалидно местоположение", + "Attachments folder successfully saved." : "Папката с прикачени файлове е записана успешно.", + "Error on saving attachments folder." : "Грешка при запазване на папката с прикачени файлове.", "{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 събитие"], + "_Successfully imported %n event_::_Successfully imported %n events_" : ["Успешно импортиране на %n събития","Успешно импортиране на %n събития"], "Automatic" : "Автоматично", "Automatic ({detected})" : "Автоматично (detected})", "New setting was not saved successfully." : " Неуспешно запазване на новата настройка.", @@ -101,21 +167,82 @@ "Day view" : "Дневен изглед", "Week view" : "Седмичен изглед", "Month view" : "Месечен изглед", + "List view" : "Списъчен изглед", "Actions" : "Действия", "Create event" : "Създай събитие", "Show shortcuts" : "Показване на преките пътища", + "Editor" : "Редактор", + "Close editor" : "Затваряне на редактора", + "Save edited event" : "Запиши редактираното събитие", + "Delete edited event" : "Изтриване на редактираното събитие", + "Duplicate event" : "Дублирано събитие", "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 reminder" : "Напомняне по подразбиране", "Copy primary CalDAV address" : "Копиране на основния CalDAV адрес", "Copy iOS/macOS CalDAV address" : "Копиране iOS/macOS CalDAV адрес", + "Personal availability settings" : "Настройки за лична достъпност", "Show keyboard shortcuts" : "Показване на клавишни комбинации", - "Settings & import" : "Настройки и внасяне", + "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} минути"], + "_{duration} day_::_{duration} days_" : ["{duration} дни","{duration} дни"], + "_{duration} week_::_{duration} weeks_" : ["{duration} минути","{duration} седмици"], + "_{duration} month_::_{duration} months_" : ["{duration} месеца","{duration} минути"], + "_{duration} year_::_{duration} years_" : ["{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 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" : "Вторник", + "Wednesday" : "Сряда", + "Thursday" : "Четвъртък", + "Friday" : "Петък", + "Saturday" : "Събота", + "Sunday" : "Неделя", + "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" : "Редактиране на среща", + "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" : "Напомняне", "before at" : "преди в", "Notification" : "Известие", "Email" : "Имейл", @@ -129,55 +256,79 @@ "on" : "на", "at" : "в", "+ Add reminder" : "+ Добави напомняне", + "Add reminder" : "Добавяне на напомняне", "_second_::_seconds_" : ["секунда","секунди"], "_minute_::_minutes_" : ["минута","минути"], "_hour_::_hours_" : ["час","часове"], "_day_::_days_" : ["ден","дни"], "_week_::_weeks_" : ["седмица","седмици"], - "No reminders yet" : "Няма напомняния", + "No attachments" : "Няма прикачени файлове", + "Add from Files" : "Добавяне от файлове", + "Upload from device" : "Качване от устройство", + "Delete file" : "Изтриване на файл", + "Choose a file to add as attachment" : "Избери файл за прикачване", + "Choose a file to share as a link" : "Изберете файл, който да споделите като връзка", + "Attachment {name} already exist!" : " Прикаченият файл {name} вече съществува!", + "_{count} attachment_::_{count} attachments_" : ["{count} прикачени файлове","{count} прикачени файлове"], + "Invitation accepted" : "Поканата е приета", + "Available" : "Наличен.", + "Suggested" : "Препоръчан", + "Participation marked as tentative" : "Участието е отбелязано като условно", + "Accepted {organizerName}'s invitation" : "Поканата на {organizerName} е приета", + "Not available" : "Не е наличен", + "Invitation declined" : "Поканата е отхвърлена", + "Declined {organizerName}'s invitation" : "Поканата на {organizerName} е отхвърлена", + "Invitation is delegated" : "Поканата е делегирана", + "Checking availability" : "Проверка на наличността", + "Invitation sent" : "Изпратена е покана", + "Has not responded to {organizerName}'s invitation yet" : "Все още няма отговор на поканата на {organizerName}", "Availability of attendees, resources and rooms" : "Наличие на присъстващи, ресурси и стаи", + "{organizer} (organizer)" : "{organizer} (organizer)", + "Free" : " Свободни", "Busy (tentative)" : "Зает (временно)", "Busy" : "Зает", "Out of office" : "Извън офиса", "Unknown" : "Непознат", - "{name} accepted your invitation." : "{name} е приел поканата ви.", - "{name} accepted {organizerName}'s invitation." : "{name} е приел поканата на {organizerName}.", - "{name} declined your invitation." : "{name} е отхвърлил поканата ви.", - "{name} declined {organizerName}'s invitation." : "{name} е отхвърлил поканата на {organizerName}.", - "{name} has delegated their invitation." : "{name} е делегирал поканата си.", - "{name} marked their participation as tentative." : "{name} е означил участието си като условно.", - "{name} did not respond to your invitation yet." : "{name} още не е отговорил на поканата ви.", - "{name} did not respond to {organizerName}'s invitation yet." : "{name} все още не е отговорил на поканата на {organizerName}.", + "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" : "Показване на натоварените часове", + "No attendees yet" : "Все още няма участващи", "Successfully appended link to talk room to description." : "Успешно добавена връзка към стаята за разговори от описанието.", "Error creating Talk room" : "Грешка при създаването на Стая за разговори", - "Send e-mail" : "Изпрати имейл", + "Send email" : "Изпрати е-мейл", "Chairperson" : "Председател", "Required participant" : "Необходим участник", "Optional participant" : " Участник по желание", "Non-participant" : "Неучастник", "Remove attendee" : "Премахване на участник", - "Search for e-mails, users, contacts, resources or rooms" : "Търсене на имейли, потребители, контакти, ресурси или стаи", + "Search for emails, users or contacts" : "Търсене на имейли, потребители или контакти", "No match found" : "Няма намерено съвпадение", - "No attendees yet" : "Все още няма участващи", "(organizer)" : "(организатор)", "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "За да изпращате покани и да обработвате отговори, [отваряне на връзка] добавете вашия имейл адрес в личните настройки [затваряне на връзка].", "Remove color" : "Премахване на цвят", "Event title" : "Заглавие на събитие", "All day" : "Цял ден", - "Can not 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 {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" : "никога", "on date" : "на дата", "after" : "след", "_time_::_times_" : ["пъти","пъти"], - "This event is the recurrence-exception of a recurrence-set. You can not 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" : "четвърти", @@ -185,25 +336,37 @@ "second to last" : "предпоследен", "last" : "последен", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Промените в правилото за повторение ще се прилагат само за това и за всички бъдещи събития.", - "Repeat" : "Да се повтаря", "Repeat every" : "Повтаряй всеки", "By day of the month" : "От ден на месеца", "On the" : "На", "_month_::_months_" : ["месец","месеци"], "_year_::_years_" : ["година","години"], - "Monday" : "понеделник", "weekday" : "делничен ден", "weekend day" : "Почивен ден", - "Summary" : "Резюме", + "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" : "Препоръки", + "No rooms or resources yet" : "Все още няма стаи или ресурси", + "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" : "не е наличен", + "Room type" : "Тип стая", + "Any" : "Всяка", + "Minimum seating capacity" : "Минимален капацитет за сядане", "More" : "Още", - "Save" : "Запазване", - "Update" : "Обновяване", "Update this occurrence" : "Актуализиране на това събитие", "Update this and all future" : "Актуализиране на това и на всички бъдещи", "Public calendar does not exist" : "Публичният календар не съществува", "Maybe the share was deleted or has expired?" : "Може би споделянето е изтрито или е изтекло?", - "Please select a timezone:" : "Моля, изберете часова зона:", + "Please select a time zone:" : "Моля, изберете часова зона:", "Pick a time" : "Изберете час", "Pick a date" : "Изберете дата", "from {formattedDate}" : "от {formattedDate}", @@ -215,41 +378,47 @@ "{formattedDate} at {formattedTime}" : " {formattedDate} в {formattedTime}", "Please enter a valid date" : "Моля да въведете валидна дата", "Please enter a valid date and time" : "Моля да въведете валидна дата и час", - "Type to search timezone" : "Въведете за търсене в часовата зона", - "Personal" : "Лични", - "The automatic timezone detection determined your timezone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your timezone manually in the calendar settings." : "Автоматичното разпознаване на часовата зона определи че вашата часова зона е UTC.\nТова най-вероятно е резултат от мерките за сигурност на вашия уеб браузър.\nМоля да зададете часовата зона ръчно в настройките на календара.", - "Your configured timezone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your timezone in the settings and report this issue." : "Конфигурираната от вас часова зона ({timezoneId}) не беше намерена. Връща се обратно към UTC.\nМоля да промените часовата зона в настройките ида докладвате за този проблем.", - "No more events today" : " Няма повече събития за днес", - "No upcoming events" : "Няма предстоящи събития", + "Type to search time zone" : "Въведете, за търсене на часова зона", + "Global" : "Глобални", + "Subscribed" : "Абониран", + "Subscribe" : "Абониране", + "Select 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}", + "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Моля, променете часовата си зона в настройките и докладвайте за този проблем.", "Create a new event" : "Създай ново събитие", "[Today]" : "[днес]", "[Tomorrow]" : "[утре]", "[Yesterday]" : "[вчера]", "[Last] dddd" : "[Последен] dddd", "Event does not exist" : "Събитието не съществува", + "Duplicate" : "Дубликат", "Delete this occurrence" : "Изтриване на това събитие", "Delete this and all future" : "Изтриване на това и на всички бъдещи ", "Details" : "Подробности", + "Managing shared access" : "Управление на споделения достъп", + "Deny access" : "Отказване на достъп", + "Invite" : "Покани", "Attendees" : "Участници", - "Reminders" : "Напомняне", + "Resources" : "Ресурси", + "_User requires access to your file_::_Users require access to your file_" : ["Потребителите трябва да имат достъп до вашия файл","Потребителите трябва да имат достъп до вашия файл"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Прикачени файлове, изискващи споделен достъп","Прикачени файлове, изискващи споделен достъп"], "Close" : "Затвори", "Show more details" : "Показване на повече подробности", "Subscribe to {name}" : "Абониране за {name}", - "Download {name}" : "Изтегляне на {name}", - "Anniversary" : "Годишнина", - "Appointment" : "Среща", - "Business" : "Бизнес", - "Education" : "Обучение", - "Holiday" : "Празник", - "Meeting" : "Среща", - "Miscellaneous" : "Разни", - "Non-working hours" : "Неработно време", - "Not in office" : "Не е в офиса", - "Phone call" : "Телефонен разговор", - "Sick day" : "Болничен ден", - "Special occasion" : "Специален повод", - "Travel" : "Пътуване", - "Vacation" : "Отпуска", + "Export {name}" : "Експортиране /изнасям/ на {name}", "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 week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%nседмица преди събитието в {formattedHourMinute}","%nседмица преди събитието в {formattedHourMinute}"], @@ -282,14 +451,7 @@ "Untitled event" : "Събитие без заглавие", "Untitled task" : "Задача без заглавие", "Please ask your administrator to enable the Tasks App." : "Моля, помолете вашия администратор да активира приложението за Задачи.", - "prev" : " предишен", - "next" : "следващ", - "prev year" : "предишната година", - "next year" : "следващата година", - "today" : "днес", - "list" : "списък", "W" : "W", - "all-day" : "цял ден", "%n more" : "%n повече", "No events to display" : "Няма събития за показване", "_+%n more_::_+%n more_" : ["+","+%n повече"], @@ -297,62 +459,95 @@ "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" : "Зала за семинари", + "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." : "Видимостта на това събитие в споделени календари.", - "Location" : "Местоположение", "Add a location" : "Добавяне на местоположение", - "Description" : "Описание", "Add a description" : "Добави описание", "Status" : "Състояние", "Confirmed" : "Потвърдено", - "Tentative" : "Несигурно", "Canceled" : "Отказано", "Confirmation about the overall status of the event." : "Потвърждение заобщото състояние на събитието.", "Show as" : "Показване като", "Take this event into account when calculating free-busy information." : " Това събитие да се вземе предвид при изчисляване на информация за заетостта.", - "Free" : " Свободни", "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" : "Възникна грешка при получаването на информация за файла", "Chat room for event" : "Чат стая за събитие", + "An error occurred, unable to delete the calendar." : "Възникна грешка, невъзможност да се изтрие календара.", "Imported {filename}" : "Импортирано {filename}", + "This is an event reminder." : "Това е напомняне за събитие.", "Meditation" : "Медитация", "Relaxing" : "Релаксиращ", "Relax" : "Почивка", + "Break" : "Прекъсване", + "Commute" : "Замяна", + "Commuting" : "Работно пътуване", + "Shuttle" : "Трансфер", + "Invoice" : "Фактура", + "Finance" : "Финанси", + "Bank" : "Банка", + "Money" : "Пари", + "Wedding" : "Сватба", + "Dog" : "Куче", + "Concert" : "Концерт", + "Festival" : "Фестивал", + "Theater" : "Театър", + "Theatre" : "Театър", "Presentation" : "Презентация", - "Present" : "Настояще", + "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" : "Ретроспективен", - "Review" : "Преглед", "Office" : "Офис", "Contributor week" : "Седмица на сътрудника", - "Party" : "Купон", - "Celebration" : "Празненство", "Mail" : "Поща", "Soccer" : "Футбол", "Football" : "Футбол", "Gaming" : "Игри", - "Play" : "Пусни", - "Game" : "Игра", "Drive" : "Шофиране", + "Driving" : "Шофиране", "Bicycle" : "Велосипед", "Cycle" : "Колело", + "Cycling" : "Колоездене", "Biking" : "Колоездене", + "Bike" : "Велосипед", "Podcast" : "Подкаст", "Basketball" : "Баскетбол", "Fishing" : "Риболов", @@ -363,10 +558,12 @@ "Museum" : "Музей", "Pilates" : "Пилатес", "Park" : "Парк", + "Walk" : "Разходка", "Studying" : "Изучаване", "Doctor" : "Доктор", "Health" : "Здраве", "Dentist" : "Зъболекар", + "Hospital" : "Болница", "Interview" : "Интервю", "Training" : "Обучение", "Practice" : "Практика", @@ -377,7 +574,10 @@ "Gym" : "Фитнес", "Barber" : "Бръснар", "Haircut" : "Подстрижка", + "Hairdresser" : "Фризьор", "Exam" : "Изпит", + "Written test" : "Писмен тест", + "Oral test" : "Устен изпит", "Working" : "Работа", "New Years Eve" : "Навечерието на Нова Година", "NYE" : "ННГ", @@ -396,20 +596,27 @@ "Conference" : "Конференция", "Pizza" : "Пица", "Travelling" : "Пътуване", + "Trip" : "Пътуване", "Journey" : "Пътешествие", - "Collaborate" : "Сътрудействие", + "Collaborate" : "Сътрудничество", "Pair" : "Двойка", "Lecture" : "Лекция", "Seminar" : "Семинар", + "Teaching" : "Преподаване", "Photograph" : "Фотограф", + "Party" : "Купон", + "Celebration" : "Празненство", "Celebrate" : "Празнуване", + "Birthday" : "Рожден ден", "Shopping" : "Пазаруване", + "Groceries" : "Бакалия", "Skate" : "Каране на кънки", "Skateboard" : "Скейтборд", "Wine tasting" : "Дегустация на вино", "Golf" : "Голф", "Dinner" : "Вечеря", "Lunch" : "Обяд", - "Global" : "Глобални" + "Appointment not found" : "Срещата не е намерена", + "User not found" : "Потребителят не е намерен " },"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 9673d19cf6..34cacc74c4 100644 --- a/l10n/bn_BD.js +++ b/l10n/bn_BD.js @@ -3,36 +3,54 @@ OC.L10N.register( { "Cheers!" : "শুভেচ্ছা!", "Calendar" : "দিনপঞ্জী", + "Personal" : "ব্যক্তিগত", "Today" : "আজ", "Day" : "দিবস", "Week" : "সপ্তাহ", "Month" : "মাস", - "Download" : "ডাউনলোড", + "Copy link" : "লিঙ্ক কপি করো", + "Edit" : "সম্পাদনা", "Delete" : "মুছে", + "New calendar" : "নতুন দিনপঞ্জী", + "Export" : "রপ্তানি", + "Name" : "নাম", + "Deleted" : "মুছে ফেলা", + "Restore" : "ফিরিয়ে দাও", "Share link" : "লিংক ভাগাভাগি করেন", "can edit" : "সম্পাদনা করতে পারবেন", - "New calendar" : "নতুন দিনপঞ্জী", + "Save" : "সংরক্ষণ", "Cancel" : "বাতিল", "Automatic" : "স্বয়ংক্রিয়", "Actions" : "পদক্ষেপসমূহ", + "Location" : "অবস্থান", + "Description" : "বিবরণ", + "to" : "প্রতি", + "Add" : "যোগ করুন", + "Monday" : "সোমবার", + "Tuesday" : "মঙ্গলবার", + "Wednesday" : "বুধবার", + "Thursday" : "বৃহস্পতিবার", + "Friday" : "শুক্রবার", + "Saturday" : "শনিবার", + "Sunday" : "রবিবার", + "Update" : "পরিবর্ধন", + "Your email address" : "আপনার ই-মেইল ঠিকানা", + "Notification" : "নোটিফিকেশন ", "Email" : "ইমেইল", + "Choose a file to add as attachment" : "সংযুক্তি দেয়ার জন্য একটি ফাইল নির্বাচন করুন", "Unknown" : "অজানা", - "never" : "কখনোই নয়", + "Send email" : "ইমেইল পাঠান ", "Repeat" : "পূনঃসংঘটন", - "Monday" : "সোমবার", + "never" : "কখনোই নয়", "More" : "বেশী", - "Save" : "সংরক্ষণ", - "Update" : "পরিবর্ধন", - "Personal" : "ব্যক্তিগত", + "Subscribe" : "গ্রাহক হোন", "Details" : "বিসতারিত", "Attendees" : "অংশগ্রহণকারীবৃন্দ", "Close" : "বন্ধ", "Daily" : "দৈনিক", "Weekly" : "সাপ্তাহিক", - "today" : "আজ", - "Location" : "অবস্থান", - "Description" : "বিবরণ", + "Other" : "অন্যান্য", "Mail" : "মেইল", - "Play" : "বাজাও" + "Birthday" : "জন্মদিন" }, "nplurals=2; plural=(n != 1);"); diff --git a/l10n/bn_BD.json b/l10n/bn_BD.json index 871ffe0035..606afc9089 100644 --- a/l10n/bn_BD.json +++ b/l10n/bn_BD.json @@ -1,36 +1,54 @@ { "translations": { "Cheers!" : "শুভেচ্ছা!", "Calendar" : "দিনপঞ্জী", + "Personal" : "ব্যক্তিগত", "Today" : "আজ", "Day" : "দিবস", "Week" : "সপ্তাহ", "Month" : "মাস", - "Download" : "ডাউনলোড", + "Copy link" : "লিঙ্ক কপি করো", + "Edit" : "সম্পাদনা", "Delete" : "মুছে", + "New calendar" : "নতুন দিনপঞ্জী", + "Export" : "রপ্তানি", + "Name" : "নাম", + "Deleted" : "মুছে ফেলা", + "Restore" : "ফিরিয়ে দাও", "Share link" : "লিংক ভাগাভাগি করেন", "can edit" : "সম্পাদনা করতে পারবেন", - "New calendar" : "নতুন দিনপঞ্জী", + "Save" : "সংরক্ষণ", "Cancel" : "বাতিল", "Automatic" : "স্বয়ংক্রিয়", "Actions" : "পদক্ষেপসমূহ", + "Location" : "অবস্থান", + "Description" : "বিবরণ", + "to" : "প্রতি", + "Add" : "যোগ করুন", + "Monday" : "সোমবার", + "Tuesday" : "মঙ্গলবার", + "Wednesday" : "বুধবার", + "Thursday" : "বৃহস্পতিবার", + "Friday" : "শুক্রবার", + "Saturday" : "শনিবার", + "Sunday" : "রবিবার", + "Update" : "পরিবর্ধন", + "Your email address" : "আপনার ই-মেইল ঠিকানা", + "Notification" : "নোটিফিকেশন ", "Email" : "ইমেইল", + "Choose a file to add as attachment" : "সংযুক্তি দেয়ার জন্য একটি ফাইল নির্বাচন করুন", "Unknown" : "অজানা", - "never" : "কখনোই নয়", + "Send email" : "ইমেইল পাঠান ", "Repeat" : "পূনঃসংঘটন", - "Monday" : "সোমবার", + "never" : "কখনোই নয়", "More" : "বেশী", - "Save" : "সংরক্ষণ", - "Update" : "পরিবর্ধন", - "Personal" : "ব্যক্তিগত", + "Subscribe" : "গ্রাহক হোন", "Details" : "বিসতারিত", "Attendees" : "অংশগ্রহণকারীবৃন্দ", "Close" : "বন্ধ", "Daily" : "দৈনিক", "Weekly" : "সাপ্তাহিক", - "today" : "আজ", - "Location" : "অবস্থান", - "Description" : "বিবরণ", + "Other" : "অন্যান্য", "Mail" : "মেইল", - "Play" : "বাজাও" + "Birthday" : "জন্মদিন" },"pluralForm" :"nplurals=2; plural=(n != 1);" } \ No newline at end of file diff --git a/l10n/br.js b/l10n/br.js index ff425889f7..a510dc3fd3 100644 --- a/l10n/br.js +++ b/l10n/br.js @@ -5,13 +5,14 @@ OC.L10N.register( "Provided email-address is not valid" : "Direizh eo ar chomlec'h postel", "%s has published the calendar »%s«" : "%s en deus embannet un deiziataer »%s«", "Unexpected error sending email. Please contact your administrator." : "C'hoarvezet ez eus ur fazi dic'hortoz en ur gas ar postel. Kit e darempred gant ho merour.", - "Successfully sent email to " : "Kaset eo bet ar postel ervat da", "Hello," : "Demat deoc'h,", "We wanted to inform you that %s has published the calendar »%s«." : "Kemenn a reomp deoc'h ez eus bet %s embannet un deiziataer » gant %s«", "Open »%s«" : "Digeriñ »%s«", "Cheers!" : "A galon !", "Upcoming events" : "Darvoudoù da zont", "Calendar" : "Deiziataer", + "Confirm" : "Kadarnañ", + "Personal" : "Personel", "A Calendar app for Nextcloud" : "Un arload Deiziataerioù evit Nextcloud", "Previous day" : "Deizioù kent", "Previous week" : "Sizhun kent", @@ -19,40 +20,43 @@ OC.L10N.register( "Next day" : "Deiz war-lerc'h", "Next week" : "Sizhun a zeu", "Next month" : "Miz a zeu", - "+ New event" : "+ Darvoud nevez", "Today" : "Hiziv", "Day" : "Deiz", "Week" : "Sizhun", "Month" : "Miz", "List" : "Roll", - "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", - "Download" : "Pellgargañ", - "Unshare from me" : "Paouez da lodañ ganin", + "Preview" : "Ragwell", + "Copy link" : "Kopiañ al liamm", + "Edit" : "Cheñch", "Delete" : "Dilemel", + "Untitled calendar" : "Deiziataer hep titl", + "Shared with you by" : "Rannet deoc'h gant", "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.", "_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"], + "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://)", + "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", + "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", + "Name" : "Anv", + "Deleted" : "Lamet", + "Restore" : "Adkrouiñ", + "Delete permanently" : "Lamet da viken", + "Could not update calendar order." : "Dibosupl eo adnevesaat urzh an deizataerioù", "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", @@ -64,46 +68,47 @@ OC.L10N.register( "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", "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://)", - "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", "_Import calendar_::_Import calendars_" : ["Emporzhiañ deizataer","Emporzhiañ deizataer","Emporzhiañ deizataer","Emporzhiañ deizataer","Emporzhiañ deizataer"], - "{filename} is an unsupported file-type" : "{filename} en deus ur stumm restr n'eo ket douget", "{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}.", + "List view" : "Gwelidik listenn", "Actions" : "Oberoù", + "Location" : "Lec'hiadur", + "Description" : "Deskrivadur", + "Add" : "Ouzhpennañ", + "Monday" : "Lun", + "Update" : "Hizivaat", + "Your email address" : "O chom-lec'h postel", "Notification" : "Kemenadenn", "Email" : "Postel", + "Delete file" : "Dilemel ar restr", + "Available" : "Vak", + "Not available" : "Divak", + "Free" : "Digoust", "Busy" : "O labourat", "Unknown" : "Dianv", + "Accept" : "Asantiñ", + "Tentative" : "Taol-esae", + "Send email" : "Kas postel", "never" : "james", "after" : "goude", "first" : "kentañ", "third" : "trede", - "Monday" : "Lun", - "Summary" : "Diverrañ", "More" : "Muioc'h", - "Save" : "Enrollañ", - "Update" : "Hizivaat", - "Personal" : "Personel", + "Global" : "Hollek", "[Today]" : "[Hiziv]", "[Tomorrow]" : "[Warc'hoazh]", "[Yesterday]" : "[Dec'h]", @@ -118,68 +123,56 @@ 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}"], - "prev" : "kent", - "next" : "war-lerc'h", - "prev year" : "bloaz kent", - "next year" : "bloaz war-lerc'h", - "today" : "hiziv", - "list" : "roll", - "all-day" : "a-hed an deiz", "%n more" : "%n ouzhpenn", "No events to display" : "Darvoud ebet da ziskouez", "No events" : "Darvoud ebet", + "Other" : "All", "When shared show" : "Diskouez pa vez lodet", "When shared show full event" : "Diskouez an darvoud a-bezh pa vez lodet", "When shared show only busy" : "Diskouez hepken ar re pres warno pa vez lodet", "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.", - "Location" : "Lec'hiadur", "Add a location" : "Ouzhpennañ ul lec'hiadur", - "Description" : "Deskrivadur", "Add a description" : "Ouzhpennañ un deskrivadur", "Status" : "Statud", "Confirmed" : "Kadarnaet", - "Tentative" : "Taol-esae", "Canceled" : "Nullet", "Confirmation about the overall status of the event." : "Kadarnaat statud hollek an darvoud.", "Show as" : "Diskouez evel", "Take this event into account when calculating free-busy information." : "Kemer an darvoud-mañ e kont pa vez jedet titouroù pres-dibres", - "Free" : "Digoust", "Categories" : "Rummadoù", "Categories help you to structure and organize your events." : "Ar rummadoù a harp ac'hanoc'h da aozañ ha da frammañ ho tarvoudoù", "Search or add categories" : "Klask hag ouzhpennañ rummadoù", "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", + "Error while sharing file" : "Ur fazi a zo bet en ur rannañ ar restr", "Chat room for event" : "Sal-flapiñ evit un darvoud", + "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", - "Present" : "Kinnig", + "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", - "Review" : "Adwelet", "Office" : "Burev", "Contributor week" : "Sizhun ar berzhidi", - "Party" : "Fest", - "Celebration" : "Lid", "Mail" : "Postel", "Soccer" : "Mell-droad", "Football" : "Mell-droad", "Gaming" : "C'hoari", - "Play" : "C'hoari", - "Game" : "C'hoari", "Drive" : "Bleinañ", "Bicycle" : "Marc'h-houarn", "Cycle" : "Belo", @@ -233,14 +226,16 @@ OC.L10N.register( "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", - "Global" : "Hollek" + "Lunch" : "Pred kreisteiz" }, "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 11d4ab1c26..333aec7857 100644 --- a/l10n/br.json +++ b/l10n/br.json @@ -3,13 +3,14 @@ "Provided email-address is not valid" : "Direizh eo ar chomlec'h postel", "%s has published the calendar »%s«" : "%s en deus embannet un deiziataer »%s«", "Unexpected error sending email. Please contact your administrator." : "C'hoarvezet ez eus ur fazi dic'hortoz en ur gas ar postel. Kit e darempred gant ho merour.", - "Successfully sent email to " : "Kaset eo bet ar postel ervat da", "Hello," : "Demat deoc'h,", "We wanted to inform you that %s has published the calendar »%s«." : "Kemenn a reomp deoc'h ez eus bet %s embannet un deiziataer » gant %s«", "Open »%s«" : "Digeriñ »%s«", "Cheers!" : "A galon !", "Upcoming events" : "Darvoudoù da zont", "Calendar" : "Deiziataer", + "Confirm" : "Kadarnañ", + "Personal" : "Personel", "A Calendar app for Nextcloud" : "Un arload Deiziataerioù evit Nextcloud", "Previous day" : "Deizioù kent", "Previous week" : "Sizhun kent", @@ -17,40 +18,43 @@ "Next day" : "Deiz war-lerc'h", "Next week" : "Sizhun a zeu", "Next month" : "Miz a zeu", - "+ New event" : "+ Darvoud nevez", "Today" : "Hiziv", "Day" : "Deiz", "Week" : "Sizhun", "Month" : "Miz", "List" : "Roll", - "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", - "Download" : "Pellgargañ", - "Unshare from me" : "Paouez da lodañ ganin", + "Preview" : "Ragwell", + "Copy link" : "Kopiañ al liamm", + "Edit" : "Cheñch", "Delete" : "Dilemel", + "Untitled calendar" : "Deiziataer hep titl", + "Shared with you by" : "Rannet deoc'h gant", "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.", "_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"], + "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://)", + "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", + "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", + "Name" : "Anv", + "Deleted" : "Lamet", + "Restore" : "Adkrouiñ", + "Delete permanently" : "Lamet da viken", + "Could not update calendar order." : "Dibosupl eo adnevesaat urzh an deizataerioù", "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", @@ -62,46 +66,47 @@ "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", "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://)", - "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", "_Import calendar_::_Import calendars_" : ["Emporzhiañ deizataer","Emporzhiañ deizataer","Emporzhiañ deizataer","Emporzhiañ deizataer","Emporzhiañ deizataer"], - "{filename} is an unsupported file-type" : "{filename} en deus ur stumm restr n'eo ket douget", "{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}.", + "List view" : "Gwelidik listenn", "Actions" : "Oberoù", + "Location" : "Lec'hiadur", + "Description" : "Deskrivadur", + "Add" : "Ouzhpennañ", + "Monday" : "Lun", + "Update" : "Hizivaat", + "Your email address" : "O chom-lec'h postel", "Notification" : "Kemenadenn", "Email" : "Postel", + "Delete file" : "Dilemel ar restr", + "Available" : "Vak", + "Not available" : "Divak", + "Free" : "Digoust", "Busy" : "O labourat", "Unknown" : "Dianv", + "Accept" : "Asantiñ", + "Tentative" : "Taol-esae", + "Send email" : "Kas postel", "never" : "james", "after" : "goude", "first" : "kentañ", "third" : "trede", - "Monday" : "Lun", - "Summary" : "Diverrañ", "More" : "Muioc'h", - "Save" : "Enrollañ", - "Update" : "Hizivaat", - "Personal" : "Personel", + "Global" : "Hollek", "[Today]" : "[Hiziv]", "[Tomorrow]" : "[Warc'hoazh]", "[Yesterday]" : "[Dec'h]", @@ -116,68 +121,56 @@ "_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}"], - "prev" : "kent", - "next" : "war-lerc'h", - "prev year" : "bloaz kent", - "next year" : "bloaz war-lerc'h", - "today" : "hiziv", - "list" : "roll", - "all-day" : "a-hed an deiz", "%n more" : "%n ouzhpenn", "No events to display" : "Darvoud ebet da ziskouez", "No events" : "Darvoud ebet", + "Other" : "All", "When shared show" : "Diskouez pa vez lodet", "When shared show full event" : "Diskouez an darvoud a-bezh pa vez lodet", "When shared show only busy" : "Diskouez hepken ar re pres warno pa vez lodet", "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.", - "Location" : "Lec'hiadur", "Add a location" : "Ouzhpennañ ul lec'hiadur", - "Description" : "Deskrivadur", "Add a description" : "Ouzhpennañ un deskrivadur", "Status" : "Statud", "Confirmed" : "Kadarnaet", - "Tentative" : "Taol-esae", "Canceled" : "Nullet", "Confirmation about the overall status of the event." : "Kadarnaat statud hollek an darvoud.", "Show as" : "Diskouez evel", "Take this event into account when calculating free-busy information." : "Kemer an darvoud-mañ e kont pa vez jedet titouroù pres-dibres", - "Free" : "Digoust", "Categories" : "Rummadoù", "Categories help you to structure and organize your events." : "Ar rummadoù a harp ac'hanoc'h da aozañ ha da frammañ ho tarvoudoù", "Search or add categories" : "Klask hag ouzhpennañ rummadoù", "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", + "Error while sharing file" : "Ur fazi a zo bet en ur rannañ ar restr", "Chat room for event" : "Sal-flapiñ evit un darvoud", + "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", - "Present" : "Kinnig", + "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", - "Review" : "Adwelet", "Office" : "Burev", "Contributor week" : "Sizhun ar berzhidi", - "Party" : "Fest", - "Celebration" : "Lid", "Mail" : "Postel", "Soccer" : "Mell-droad", "Football" : "Mell-droad", "Gaming" : "C'hoari", - "Play" : "C'hoari", - "Game" : "C'hoari", "Drive" : "Bleinañ", "Bicycle" : "Marc'h-houarn", "Cycle" : "Belo", @@ -231,14 +224,16 @@ "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", - "Global" : "Hollek" + "Lunch" : "Pred kreisteiz" },"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 4a6206f750..18c9652be1 100644 --- a/l10n/bs.js +++ b/l10n/bs.js @@ -3,35 +3,51 @@ OC.L10N.register( { "Cheers!" : "Cheers!", "Calendar" : "Kalendar", + "Personal" : "Osobno", "Today" : "Danas", "Day" : "Dan", "Week" : "Sedmica", "Month" : "Mjesec", - "Download" : "Preuzmi", + "Edit" : "Izmjeni", "Delete" : "Obriši", + "New calendar" : "Novi kalendar", + "Export" : "Izvezi", + "Name" : "Ime", + "Restore" : "Obnovi", "Share link" : "Podijelite vezu", "can edit" : "mogu mijenjati", - "New calendar" : "Novi kalendar", + "Save" : "Spremi", "Cancel" : "Odustani", "Actions" : "Radnje", + "Location" : "Lokacija", + "Description" : "Opis", + "to" : "do", + "Add" : "Dodaj", + "Monday" : "Ponedjeljak", + "Tuesday" : "Utorak", + "Wednesday" : "Srijeda", + "Thursday" : "Četvrtak", + "Friday" : "Petak", + "Saturday" : "Subota", + "Sunday" : "Nedjelja", + "Update" : "Ažuriraj", + "Your email address" : "Vaša adresa e-pošte", "Email" : "E-pošta", "Busy" : "Zauzet", "Unknown" : "Nepoznato", - "never" : "nikad", + "Accept" : "Prihvati", + "Decline" : "Odbij", + "Send email" : "Pošalji e-poštu", "Repeat" : "Ponovi", - "Monday" : "Ponedjeljak", + "never" : "nikad", "More" : "Više", - "Save" : "Spremi", - "Update" : "Ažuriraj", - "Personal" : "Osobno", "Attendees" : "Sudionici", "Close" : "Zatvori", "Daily" : "Dnevno", "Weekly" : "Sedmično", - "Location" : "Lokacija", - "Description" : "Opis", + "Other" : "Ostali", "Status" : "Status", "Mail" : "E-Pošta", - "Play" : "Play" + "Birthday" : "Rođendan" }, "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 7071f46b8b..abdb9c8fe2 100644 --- a/l10n/bs.json +++ b/l10n/bs.json @@ -1,35 +1,51 @@ { "translations": { "Cheers!" : "Cheers!", "Calendar" : "Kalendar", + "Personal" : "Osobno", "Today" : "Danas", "Day" : "Dan", "Week" : "Sedmica", "Month" : "Mjesec", - "Download" : "Preuzmi", + "Edit" : "Izmjeni", "Delete" : "Obriši", + "New calendar" : "Novi kalendar", + "Export" : "Izvezi", + "Name" : "Ime", + "Restore" : "Obnovi", "Share link" : "Podijelite vezu", "can edit" : "mogu mijenjati", - "New calendar" : "Novi kalendar", + "Save" : "Spremi", "Cancel" : "Odustani", "Actions" : "Radnje", + "Location" : "Lokacija", + "Description" : "Opis", + "to" : "do", + "Add" : "Dodaj", + "Monday" : "Ponedjeljak", + "Tuesday" : "Utorak", + "Wednesday" : "Srijeda", + "Thursday" : "Četvrtak", + "Friday" : "Petak", + "Saturday" : "Subota", + "Sunday" : "Nedjelja", + "Update" : "Ažuriraj", + "Your email address" : "Vaša adresa e-pošte", "Email" : "E-pošta", "Busy" : "Zauzet", "Unknown" : "Nepoznato", - "never" : "nikad", + "Accept" : "Prihvati", + "Decline" : "Odbij", + "Send email" : "Pošalji e-poštu", "Repeat" : "Ponovi", - "Monday" : "Ponedjeljak", + "never" : "nikad", "More" : "Više", - "Save" : "Spremi", - "Update" : "Ažuriraj", - "Personal" : "Osobno", "Attendees" : "Sudionici", "Close" : "Zatvori", "Daily" : "Dnevno", "Weekly" : "Sedmično", - "Location" : "Lokacija", - "Description" : "Opis", + "Other" : "Ostali", "Status" : "Status", "Mail" : "E-Pošta", - "Play" : "Play" + "Birthday" : "Rođendan" },"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 ea114b88f8..14bcc5a87e 100644 --- a/l10n/ca.js +++ b/l10n/ca.js @@ -1,60 +1,139 @@ 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 de correu no és vàlida", + "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 amb l'administrador.", - "Successfully sent email to " : "S'ha enviat el correu amb èxit a ", + "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«", "Cheers!" : "A reveure!", - "Upcoming events" : "Propers esdeveniments", + "Upcoming events" : "Pròxims esdeveniments", + "More events" : "Més esdeveniments", + "No more events today" : "Avui no hi ha més esdeveniments", + "No upcoming events" : "No hi ha propers 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\"" : "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\" 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", + "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 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 de confirmació", + "Where:" : "Ubicació:", + "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.", + "Anniversary" : "Commemoració", + "Appointment" : "Cita", + "Business" : "Negocis", + "Education" : "Formació", + "Holiday" : "Vacances", + "Meeting" : "Reunió", + "Miscellaneous" : "Miscel·lània", + "Non-working hours" : "Hores no laborals", + "Not in office" : "Fora de l'oficina", + "Personal" : "Personal", + "Phone call" : "Trucada telefònica", + "Sick day" : "Malaltia", + "Special occasion" : "Ocasió especial", + "Travel" : "Viatge", + "Vacation" : "Vacances", + "Custom Categories" : "Categories personalitzades", + "Collaborative Tags" : "Etiquetes col·laboratives", + "Standard Categories" : "Categories estàndard", "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 preferit 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", + "Event" : "Esdeveniment", + "Create new event" : "Crea un nou esdeveniment", "Today" : "Avui", "Day" : "Dia", "Week" : "Setmana", "Month" : "Mes", + "Year" : "Any", "List" : "Llista", - "Untitled calendar" : "Calendari sense títol", - "Edit name" : "Edita nom", - "Saving name …" : "S'està desant el nom …", - "Edit color" : "Edita color", - "Saving color …" : "S'està desant el color …", - "Copy private link" : "Copia l'enllaç privat", - "Download" : "Baixa", - "Unshare from me" : "Deixa de compartir", + "Preview" : "Previsualitza", + "Copy link" : "Copia l'enllaç", + "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", + "Shared with you by" : "Compartit amb tu per", + "Edit and share calendar" : "Edició i comparteix el calendari", + "Edit calendar" : "Edició del calendari", + "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.", "_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" : "Publicar el calendari", - "Publishing calendar" : "S'està publicant el calendari", - "Copy public link" : "Copiar l'enllaç públic", - "Send link to calendar via email" : "Enviar per correu l'enllaç al calendari", - "Enter one address" : "Escriure una adreça", - "Sending email …" : "S'està enviant el correu …", + "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ó …", + "Add public holiday calendar" : "Afegeix un calendari de festes públiques", + "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://)", "Copy subscription link" : "Copiar l'enllaç de subscripció", - "Copying link …" : "S'està copiant l'enllaç …", - "Copied link" : "Enllaç copiat", + "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 …" : "S'està copiant el codi …", + "Export" : "Exporta", + "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.", + "Trash bin" : "Paperera", + "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 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 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?", + "_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.", + "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", + "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ó", @@ -64,65 +143,127 @@ OC.L10N.register( "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 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ó.", - "+ New calendar" : "+ Calendari nou", - "New calendar" : "Calendari nou", - "Creating calendar …" : "S'està creant el calendari …", - "New calendar with task list" : "Nou calendari amb llista de tasques", - "New subscription from link (read-only)" : "Nova subscripció des d'enllaç (només lectura)", - "Creating subscription …" : "S'està 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://)", - "Could not update calendar order." : "No s'ha pogut actualitzar l'ordre del calendari.", - "Import calendars" : "Importar calendaris", + "Share with users or groups" : "Comparteix amb usuaris o grups", + "No users or groups" : "No hi ha usuaris ni grups", + "Calendar name …" : "Nom del calendari …", + "Share calendar" : "Comparteix el calendari", + "Unshare from me" : "Deixa de compartir", + "Save" : "Desa", + "Failed to save calendar name and color" : "No s'ha pogut desar el nom i el color del calendari", + "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"], - "{filename} is an unsupported file-type" : "{filename} és un tipus de fitxer no compatible amb aquesta aplicació", + "_Import calendar_::_Import calendars_" : ["Importar calendari","Importació de calendaris"], + "Default attachments location" : "Ubicació per defecte dels fitxers adjunts", + "Select the default location for attachments" : "Seleccioneu la ubicació per defecte per als fitxers adjunts", + "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.", "{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 amb èxit %n event","S'han importat amb èxit %n events."], + "_Successfully imported %n event_::_Successfully imported %n events_" : ["S'ha importat correctament %n esdeveniment","S'ha importat correctament %n esdeveniments"], "Automatic" : "Automàtic", - "Automatic ({detected})" : "Automàtica ({detected})", - "New setting was not saved successfully." : "No s'ha desat correctament la nova configuració.", + "Automatic ({detected})" : "Automàtic ({detected})", + "New setting was not saved successfully." : "No s'ha desat correctament els nous paràmetres.", "Shortcut overview" : "Descripció general de la drecera", "or" : "o", "Navigation" : "Navegació", "Previous period" : "Període anterior", - "Next period" : "Següent període", + "Next period" : "Període següent", "Views" : "Vistes", "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", "Show shortcuts" : "Mostra les dreceres", - "Enable birthday calendar" : "Activa el calendari d'aniversaris", - "Show tasks in calendar" : "Mostra tasques al calendari", - "Enable simplified editor" : "Activa l'editor simplificat", - "Limit visible events per view" : "Limita el nombre d'esdeveniments visibles per vista", + "Editor" : "Editor", + "Close editor" : "Tanca l'editor", + "Save edited event" : "Desa l'esdeveniment editat", + "Delete edited event" : "Suprimeix l'esdeveniment editat", + "Duplicate event" : "Esdeveniment duplicat", + "Enable birthday calendar" : "Habilitar el calendari d'aniversaris", + "Show tasks in calendar" : "Mostra les tasques en el calendari", + "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", - "Copy primary CalDAV address" : "Copia l'adreça CalDEV primària", + "Time increments" : "Increments de temps", + "Default reminder" : "Recordatori per defecte", + "Copy primary CalDAV address" : "Copia l'adreça CalDAV primària", "Copy iOS/macOS CalDAV address" : "Copia l'adreça CalDAV iOS/macOS", - "Show keyboard shortcuts" : "Mostra les tecles de drecera", - "Settings & import" : "Paràmetres i importació", + "Personal availability settings" : "Paràmetres de disponibilitat personal", + "Show keyboard shortcuts" : "Mostra les dreceres del teclat", + "Calendar settings" : "Paràmetres de Calendari", + "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", + "_{duration} minute_::_{duration} minutes_" : ["{duration} minut","{duration} minuts"], + "0 minutes" : "0 minuts", + "_{duration} hour_::_{duration} hours_" : ["{duration} hora","{duration} hores"], + "_{duration} day_::_{duration} days_" : ["{duration} dia","{duration} dies"], + "_{duration} week_::_{duration} weeks_" : ["{duration} setmana","{duration} setmanes"], + "_{duration} month_::_{duration} months_" : ["{duration} mes","{duration} mesos"], + "_{duration} year_::_{duration} years_" : ["{duration} any","{duration} anys"], + "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 name" : "Nom de la cita", + "Location" : "Ubicació", + "Create a Talk room" : "Crea una sala de conversa", + "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 de confirmació", + "Description" : "Descripció", + "Visibility" : "Visibilitat", + "Duration" : "Durada", + "Increments" : "Increments", + "Additional calendars to check for conflicts" : "Calendaris addicionals per comprovar si hi ha conflictes", + "Pick time ranges where appointments are allowed" : "Trieu intervals de temps on es permeten les cites", + "to" : "a", + "Delete slot" : "Suprimeix unitat temporal", + "No times set" : "Sense horaris establerts", + "Add" : "Afegeix", + "Monday" : "Dilluns", + "Tuesday" : "Dimarts", + "Wednesday" : "Dimecres", + "Thursday" : "Dijous", + "Friday" : "Divendres", + "Saturday" : "Dissabte", + "Sunday" : "Diumenge", + "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", + "Planning restrictions" : "Restriccions de planificació", + "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", + "Update" : "Actualitza", + "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 contacteu amb l'organitzador.", + "Book the appointment" : "Reserva la cita", + "Reminder" : "Recordatori", "before at" : "abans a les", "Notification" : "Notificació", "Email" : "Correu", "Audio notification" : "Notificació de so", "Other notification" : "Altres notificacions", - "Relative to event" : "En relació a l'event", + "Relative to event" : "En relació a l'esdeveniment", "On date" : "A la data", "Edit time" : "Modifica l'hora", "Save time" : "Desar l'hora", @@ -130,54 +271,80 @@ OC.L10N.register( "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"], - "No reminders yet" : "Encara no hi ha recordatoris", + "No attachments" : "Sense fitxers adjunts", + "Add from Files" : "Afegeix d'Arxius", + "Upload from device" : "Pujada des del dispositiu", + "Delete file" : "Suprimeix el fitxer", + "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!", + "_{count} attachment_::_{count} attachments_" : ["{count} fitxer adjunt","{count} fitxers adjunts"], + "Invitation accepted" : "S'ha acceptat la invitació", + "Available" : "Disponible", + "Suggested" : "Suggerit", + "Participation marked as tentative" : "Participació marcada com a provisional", + "Accepted {organizerName}'s invitation" : "S'ha acceptat la invitació de {organizerName}", + "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", + "Checking availability" : "Consultant disponibilitat", + "Invitation sent" : "Invitació enviada", + "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", - "Busy (tentative)" : "Ocupat (temptativament)", + "{organizer} (organizer)" : "{organizer} (organitzador)", + "Free" : "Disponible", + "Busy (tentative)" : "Ocupat (provisional)", "Busy" : "Ocupat", - "Out of office" : "Fora de la oficina", + "Out of office" : "Fora de l'oficina", "Unknown" : "Desconegut", - "{name} accepted your invitation." : "{name} ha acceptat la vostra invitació.", - "{name} accepted {organizerName}'s invitation." : "{name} ha acceptat la invitació de {organizerName}.", - "{name} declined your invitation." : "{name} ha rebutjat la vostra invitació.", - "{name} declined {organizerName}'s invitation." : "{name} ha rebutjat la invitació de {organizerName}.", - "{name} has delegated their invitation." : "{name} ha delegat la seva invitació.", - "{name} marked their participation as tentative." : "{name} han marcat la seva participació com a temptativa.", - "{name} did not respond to your invitation yet." : "{name} encara no ha respost a la vostra invitació.", - "{name} did not respond to {organizerName}'s invitation yet." : "{name} encara no ha respost a la invitació de {organizerName}.", - "Create Talk room for this event" : "Crear una sala a Talk per a aquest event", + "Accept" : "Accepta", + "Decline" : "Rebutja", + "Tentative" : "Provisional", + "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", - "Successfully appended link to talk room to description." : "S'ha afegit l'enllaç d'una nova sala del Talk a la descripció de l'event.", + "No attendees yet" : "Encara no hi ha cap participant", + "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 e-mail" : "Envia el correu", - "Chairperson" : "S'està convocant", - "Required participant" : "Participant necessari", - "Optional participant" : "Participant opcional", - "Non-participant" : "No-participant", - "Remove attendee" : "Treu el participant", - "Search for e-mails, users, contacts, resources or rooms" : "Cerca correus, usuaris, contactes, recursos o espais", - "No match found" : "No s'ha trobat res", - "No attendees yet" : "Encara sense participants", - "(organizer)" : "(organitzador)", - "Remove color" : "Treu el color", - "Event title" : "Títol de l'event", + "Send email" : "Enviar correu", + "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", + "No match found" : "No s'ha trobat cap coincidència", + "(organizer)" : "(organitza l'esdeveniment)", + "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", - "Can not modify all-day setting for events that are part of a recurrence-set." : "No es pot modificar la opció de dia-sencer pels events que formen part d'un conjunt recurrent.", + "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}" : "de {startDate} a {startTime}", - "to {endDate}" : "fins al {endDate}", - "to {endDate} at {endTime}" : "fins al {endDate} a les {endTime}", + "from {startDate} at {startTime}" : "del {startDate} a les {startTime}", + "to {endDate}" : "al {endDate}", + "to {endDate} at {endTime}" : "al {endDate} a les {endTime}", + "Repeat" : "Repeteix", "End repeat" : "Finalitza la repetició", "Select to end repeat" : "Seleccioneu per finalitzar repetició", "never" : "mai", - "on date" : "a temps", + "on date" : "el dia", "after" : "després de", - "_time_::_times_" : ["hora","hores"], - "This event is the recurrence-exception of a recurrence-set. You can not add a recurrence-rule to it." : "Aquest event és una excepció de recurrència d'un conjunt de recurrència. No se li pot afegir una regla recurrència.", + "_time_::_times_" : ["vegada","vegades"], + "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", @@ -185,25 +352,37 @@ OC.L10N.register( "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" : "Repeteix", - "Repeat every" : "Repetir cada", + "Repeat every" : "Repeteix cada", "By day of the month" : "Per dia del mes", "On the" : "Al", "_month_::_months_" : ["mes","mesos"], "_year_::_years_" : ["any","anys"], - "Monday" : "Dilluns", "weekday" : "dia de la setmana", "weekend day" : "dia de cap de setmana", - "Summary" : "Resum", - "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 event no es del tot compatible amb Nextcloud. Si canvieu les opcions de recurrència, es poden perdre certes recurrències.", + "No recurrence" : "Sense recurrència", + "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", + "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", + "Room type" : "Tipus de sala", + "Any" : "Qualsevol", + "Minimum seating capacity" : "Capacitat mínima de seients", "More" : "Més", - "Save" : "Desa", - "Update" : "Actualitza", "Update this occurrence" : "Actualitza aquesta ocurrència", "Update this and all future" : "Actualitza aquesta i les futures", "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 timezone:" : "Selecciona un fus horari", + "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}", @@ -213,57 +392,68 @@ OC.L10N.register( "to {formattedDate} at {formattedTime}" : "al {formattedDate} a les {formattedTime}", "on {formattedDate} at {formattedTime}" : "el {formattedDate} a les {formattedTime}", "{formattedDate} at {formattedTime}" : "{formattedDate} a les {formattedTime}", - "Please enter a valid date" : "Si us plau, escriu una data vàlida", - "Please enter a valid date and time" : "Si us plau, escriu una data i hora vàlides", - "Type to search timezone" : "Comença a escriure per cercar un fus horari", - "Personal" : "Personal", - "The automatic timezone detection determined your timezone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your timezone manually in the calendar settings." : "La detecció automàtica de zona horària ha establert que la vostra zona horària és UTC.\nAixò probablement és el resultat d'una mesura de seguretat del vostre navegador web.\nEstabliu la vostra zona horària manualment a la configuració del calendari.", - "Your configured timezone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your timezone in the settings and report this issue." : "No s'ha trobat la zona horària que heu establert ({timezoneId}) . Així que se us ha retornat a la UTC.\nDefiniu la vostra zona horària a la configuració i si us plau informeu d'aquest problema.", - "No more events today" : "Avui no hi ha més esdeveniments", - "No upcoming events" : "No hi ha propers esdeveniments", + "Please enter a valid date" : "Indiqueu una data vàlida", + "Please enter a valid date and time" : "Indiqueu una data i hora vàlides", + "Type to search time zone" : "Escriviu per cercar la zona horària", + "Global" : "Global", + "Public holiday calendars" : "Calendaris de festius", + "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}", + "By {authors}" : "Per {authors}", + "Subscribed" : "Subscrit", + "Subscribe" : "Subscriu-m'hi", + "Holidays in {region}" : "Festius a {region}", + "An error occurred, unable to create the public holiday calendar." : "S'ha produït un error, no s'ha pogut crear el calendari de festius.", + "Select 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", + "Appointment Details:" : "Detalls de la cita:", + "Time:" : "Hora:", + "Booked for:" : "Reservat per a:", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "Gràcies. La teva reserva de {startDate} a {endDate} s'ha confirmat.", + "Book another appointment:" : "Reserva una altra cita:", + "See all available slots" : "Consulta totes les unitat temporals disponibles", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "L’unitat temporal per a la vostra cita de {startDate} a {endDate} ja no està disponible.", + "Please book a different slot:" : "Reserveu una unitat temporal diferent:", + "Book an appointment with {name}" : "Reserva una cita amb {name}", + "No public appointments found for {name}" : "No s'han trobat cites públiques per a {name}", + "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.", "Create a new event" : "Crea un esdeveniment nou", "[Today]" : "[Avui]", "[Tomorrow]" : "[Demà]", "[Yesterday]" : "[Ahir]", "[Last] dddd" : "[Últim] dddd", "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", + "Managing shared access" : "Gestió de l'accés compartit", + "Deny access" : "Denega l'accés", + "Invite" : "Convida", "Attendees" : "Assistents", - "Reminders" : "Recordatoris", + "Resources" : "Recursos", + "_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"], "Close" : "Tanca", - "Show more details" : "Mostra'n més detalls", + "Show more details" : "Mostra més detalls", "Subscribe to {name}" : "Subscriure a {name}", - "Download {name}" : "Baixa {name}", - "Anniversary" : "Commemoració", - "Appointment" : "Cita", - "Business" : "Negocis", - "Education" : "Formació", - "Holiday" : "Vacances", - "Meeting" : "Reunió", - "Miscellaneous" : "Miscel·lània", - "Non-working hours" : "Hores fora de la feina", - "Not in office" : "Fora de la oficina", - "Phone call" : "Trucada telefònica", - "Sick day" : "Malaltia", - "Special occasion" : "Ocasió especial", - "Travel" : "Viatge", - "Vacation" : "Vacances", - "Midnight on the day the event starts" : "Mitjanit del dia que comença l'event", - "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n dia abans de l'event a les {formattedHourMinute}","%n dies abans de l'event a les {formattedHourMinute}"], - "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n setmana abans de l'event a les {formattedHourMinute}","%n setmanes abans de l'event a les {formattedHourMinute}"], - "on the day of the event at {formattedHourMinute}" : "el dia de l'event a les {formattedHourMinute}", - "at the event's start" : "a l'inici de l'event", - "at the event's end" : "al final de l'event", - "{time} before the event starts" : "{time} abans de que comenci l'event", + "Export {name}" : "Exporta {name}", + "Midnight on the day the event starts" : "Mitjanit del dia que comença l'esdeveniment", + "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n dia abans de l'event a les {formattedHourMinute}","%n dies abans de l'esdeveniment a les {formattedHourMinute}"], + "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n setmana abans de l'event a les {formattedHourMinute}","%n setmanes abans de l'esdeveniment a les {formattedHourMinute}"], + "on the day of the event at {formattedHourMinute}" : "el dia de l'esdeveniment a les {formattedHourMinute}", + "at the event's start" : "a l'inici de l'esdeveniment", + "at the event's end" : "al final de l'esdeveniment", + "{time} before the event starts" : "{time} abans que comenci l'esdeveniment", "{time} before the event ends" : "{time} abans de que acabi l'event", "{time} after the event starts" : "{time} després de que comenci l'event", "{time} after the event ends" : "{time} després de que acabi l'event", "on {time}" : "a les {time}", "on {time} ({timezoneId})" : "a les {time} ({timezoneId})", "Week {number} of {year}" : "Setmana {number} del {year}", - "Does not repeat" : "No repetir", + "Does not repeat" : "No es repeteix", "Daily" : "Diàriament", "Weekly" : "Setmanalment", "Monthly" : "Mensualment", @@ -282,77 +472,103 @@ OC.L10N.register( "Untitled event" : "Esdeveniment sense títol", "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", - "today" : "avui", - "list" : "llista", "W" : "S", - "all-day" : "tot el dia", "%n more" : "%n més", "No events to display" : "No hi ha esdeveniments per visualitzar", - "_+%n more_::_+%n more_" : ["+%n més","+%n més"], + "_+%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", "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ç", - "When shared show" : "Mostrar a compartits", + "Meeting room" : "Sala de reunions", + "Lecture hall" : "Sala de lectura", + "Seminar room" : "Sala de seminaris", + "Other" : "Altres", + "When shared show" : "Mostrar quan es comparteix", "When shared show full event" : "Quan es comparteix, mostra l'esdeveniment complet", "When shared show only busy" : "Quan es comparteix, mostra només si està ocupat", "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.", - "Location" : "Ubicació", "Add a location" : "Afegeix una ubicació", - "Description" : "Descripció", "Add a description" : "Afegir una descripció", "Status" : "Estat", "Confirmed" : "Confirmat", - "Tentative" : "Provisional", "Canceled" : "Cancel·lat", - "Confirmation about the overall status of the event." : "Confirmació sobre l'estat general de l'event.", - "Show as" : "Mostra com", - "Take this event into account when calculating free-busy information." : "Tenir en compte aquest event quan es calculi informació sobre disponibilitat-ocupació.", - "Free" : "Lliure", + "Confirmation about the overall status of the event." : "Confirmació sobre l'estat general de l'esdeveniment.", + "Show as" : "Mostra'm com a", + "Take this event into account when calculating free-busy information." : "Tenir en compte aquest esdeveniment quan es calculi informació sobre disponibilitat-ocupació.", "Categories" : "Categories", - "Categories help you to structure and organize your events." : "Les categories us ajuden a estructurar i organitzar els vostres events.", - "Search or add categories" : "Cercar o afegir categories", + "Categories help you to structure and organize your events." : "Les categories us ajuden a estructurar i organitzar els vostres esdeveniment.", + "Search or add categories" : "Cerca o afegeix categories", "Add this as a new category" : "Afegeix-ho com una nova categoria", - "Custom color" : "Color a mida", + "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 l'event", + "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", + "Chat room for event" : "Sala de xat 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", + "This is an event reminder." : "Això és un recordatori de l'esdeveniment.", "Meditation" : "Meditació", - "Relaxing" : "Relax", + "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ó", - "Present" : "Regal", + "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" : "Sala de cinema", + "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", - "Review" : "Revisa", "Office" : "Oficina", "Contributor week" : "Setmana del contribuïdor", - "Party" : "Festa", - "Celebration" : "Celebració", - "Mail" : "Correu electrònic", + "Mail" : "Correu", "Soccer" : "Futbol", "Football" : "Futbol americà", "Gaming" : "Jugar", - "Play" : "Reprodueix", - "Game" : "Joc", "Drive" : "Conduir", + "Driving" : "Conducció", "Bicycle" : "Bicicleta", "Cycle" : "Ciclisme", + "Cycling" : "Fer ciclisme", "Biking" : "Anar en bici", + "Bike" : "Bicicleta", "Podcast" : "Podcast", "Basketball" : "Bàsquet", "Fishing" : "Pesca", @@ -363,31 +579,36 @@ OC.L10N.register( "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" : "Entrenar", + "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", + "Running" : "Córrer", + "Go for a run" : "Sortir a córrer", "Marathon" : "Marató", - "Video-conference" : "Vídeo-conferència", + "Video-conference" : "Videoconferència", "Conference-call" : "Trucada de conferència", - "Video-call" : "Vídeo-trucada", + "Video-call" : "Videotrucada", "Video-chat" : "Vídeo-xat", "Video-meeting" : "Vídeo-reunió", "Call" : "Trucada", @@ -396,20 +617,27 @@ OC.L10N.register( "Conference" : "Conferència", "Pizza" : "Pizza", "Travelling" : "Viatjar", + "Trip" : "Viatge", "Journey" : "Viatge", "Collaborate" : "Col·laborar", "Pair" : "Parella", - "Lecture" : "Lectura", + "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" : "Skateboard", + "Skateboard" : "Monopatí", "Wine tasting" : "Tasta de vins", "Golf" : "Golf", "Dinner" : "Sopar", "Lunch" : "Dinar", - "Global" : "Global" + "Appointment not found" : "No s'ha trobat la cita", + "User not found" : "No s'ha trobat l'usuari" }, "nplurals=2; plural=(n != 1);"); diff --git a/l10n/ca.json b/l10n/ca.json index d61a09e31e..d8cc60f4e3 100644 --- a/l10n/ca.json +++ b/l10n/ca.json @@ -1,58 +1,137 @@ { "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 de correu no és vàlida", + "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 amb l'administrador.", - "Successfully sent email to " : "S'ha enviat el correu amb èxit a ", + "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«", "Cheers!" : "A reveure!", - "Upcoming events" : "Propers esdeveniments", + "Upcoming events" : "Pròxims esdeveniments", + "More events" : "Més esdeveniments", + "No more events today" : "Avui no hi ha més esdeveniments", + "No upcoming events" : "No hi ha propers 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\"" : "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\" 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", + "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 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 de confirmació", + "Where:" : "Ubicació:", + "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.", + "Anniversary" : "Commemoració", + "Appointment" : "Cita", + "Business" : "Negocis", + "Education" : "Formació", + "Holiday" : "Vacances", + "Meeting" : "Reunió", + "Miscellaneous" : "Miscel·lània", + "Non-working hours" : "Hores no laborals", + "Not in office" : "Fora de l'oficina", + "Personal" : "Personal", + "Phone call" : "Trucada telefònica", + "Sick day" : "Malaltia", + "Special occasion" : "Ocasió especial", + "Travel" : "Viatge", + "Vacation" : "Vacances", + "Custom Categories" : "Categories personalitzades", + "Collaborative Tags" : "Etiquetes col·laboratives", + "Standard Categories" : "Categories estàndard", "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 preferit 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", + "Event" : "Esdeveniment", + "Create new event" : "Crea un nou esdeveniment", "Today" : "Avui", "Day" : "Dia", "Week" : "Setmana", "Month" : "Mes", + "Year" : "Any", "List" : "Llista", - "Untitled calendar" : "Calendari sense títol", - "Edit name" : "Edita nom", - "Saving name …" : "S'està desant el nom …", - "Edit color" : "Edita color", - "Saving color …" : "S'està desant el color …", - "Copy private link" : "Copia l'enllaç privat", - "Download" : "Baixa", - "Unshare from me" : "Deixa de compartir", + "Preview" : "Previsualitza", + "Copy link" : "Copia l'enllaç", + "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", + "Shared with you by" : "Compartit amb tu per", + "Edit and share calendar" : "Edició i comparteix el calendari", + "Edit calendar" : "Edició del calendari", + "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.", "_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" : "Publicar el calendari", - "Publishing calendar" : "S'està publicant el calendari", - "Copy public link" : "Copiar l'enllaç públic", - "Send link to calendar via email" : "Enviar per correu l'enllaç al calendari", - "Enter one address" : "Escriure una adreça", - "Sending email …" : "S'està enviant el correu …", + "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ó …", + "Add public holiday calendar" : "Afegeix un calendari de festes públiques", + "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://)", "Copy subscription link" : "Copiar l'enllaç de subscripció", - "Copying link …" : "S'està copiant l'enllaç …", - "Copied link" : "Enllaç copiat", + "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 …" : "S'està copiant el codi …", + "Export" : "Exporta", + "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.", + "Trash bin" : "Paperera", + "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 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 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?", + "_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.", + "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", + "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ó", @@ -62,65 +141,127 @@ "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 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ó.", - "+ New calendar" : "+ Calendari nou", - "New calendar" : "Calendari nou", - "Creating calendar …" : "S'està creant el calendari …", - "New calendar with task list" : "Nou calendari amb llista de tasques", - "New subscription from link (read-only)" : "Nova subscripció des d'enllaç (només lectura)", - "Creating subscription …" : "S'està 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://)", - "Could not update calendar order." : "No s'ha pogut actualitzar l'ordre del calendari.", - "Import calendars" : "Importar calendaris", + "Share with users or groups" : "Comparteix amb usuaris o grups", + "No users or groups" : "No hi ha usuaris ni grups", + "Calendar name …" : "Nom del calendari …", + "Share calendar" : "Comparteix el calendari", + "Unshare from me" : "Deixa de compartir", + "Save" : "Desa", + "Failed to save calendar name and color" : "No s'ha pogut desar el nom i el color del calendari", + "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"], - "{filename} is an unsupported file-type" : "{filename} és un tipus de fitxer no compatible amb aquesta aplicació", + "_Import calendar_::_Import calendars_" : ["Importar calendari","Importació de calendaris"], + "Default attachments location" : "Ubicació per defecte dels fitxers adjunts", + "Select the default location for attachments" : "Seleccioneu la ubicació per defecte per als fitxers adjunts", + "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.", "{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 amb èxit %n event","S'han importat amb èxit %n events."], + "_Successfully imported %n event_::_Successfully imported %n events_" : ["S'ha importat correctament %n esdeveniment","S'ha importat correctament %n esdeveniments"], "Automatic" : "Automàtic", - "Automatic ({detected})" : "Automàtica ({detected})", - "New setting was not saved successfully." : "No s'ha desat correctament la nova configuració.", + "Automatic ({detected})" : "Automàtic ({detected})", + "New setting was not saved successfully." : "No s'ha desat correctament els nous paràmetres.", "Shortcut overview" : "Descripció general de la drecera", "or" : "o", "Navigation" : "Navegació", "Previous period" : "Període anterior", - "Next period" : "Següent període", + "Next period" : "Període següent", "Views" : "Vistes", "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", "Show shortcuts" : "Mostra les dreceres", - "Enable birthday calendar" : "Activa el calendari d'aniversaris", - "Show tasks in calendar" : "Mostra tasques al calendari", - "Enable simplified editor" : "Activa l'editor simplificat", - "Limit visible events per view" : "Limita el nombre d'esdeveniments visibles per vista", + "Editor" : "Editor", + "Close editor" : "Tanca l'editor", + "Save edited event" : "Desa l'esdeveniment editat", + "Delete edited event" : "Suprimeix l'esdeveniment editat", + "Duplicate event" : "Esdeveniment duplicat", + "Enable birthday calendar" : "Habilitar el calendari d'aniversaris", + "Show tasks in calendar" : "Mostra les tasques en el calendari", + "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", - "Copy primary CalDAV address" : "Copia l'adreça CalDEV primària", + "Time increments" : "Increments de temps", + "Default reminder" : "Recordatori per defecte", + "Copy primary CalDAV address" : "Copia l'adreça CalDAV primària", "Copy iOS/macOS CalDAV address" : "Copia l'adreça CalDAV iOS/macOS", - "Show keyboard shortcuts" : "Mostra les tecles de drecera", - "Settings & import" : "Paràmetres i importació", + "Personal availability settings" : "Paràmetres de disponibilitat personal", + "Show keyboard shortcuts" : "Mostra les dreceres del teclat", + "Calendar settings" : "Paràmetres de Calendari", + "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", + "_{duration} minute_::_{duration} minutes_" : ["{duration} minut","{duration} minuts"], + "0 minutes" : "0 minuts", + "_{duration} hour_::_{duration} hours_" : ["{duration} hora","{duration} hores"], + "_{duration} day_::_{duration} days_" : ["{duration} dia","{duration} dies"], + "_{duration} week_::_{duration} weeks_" : ["{duration} setmana","{duration} setmanes"], + "_{duration} month_::_{duration} months_" : ["{duration} mes","{duration} mesos"], + "_{duration} year_::_{duration} years_" : ["{duration} any","{duration} anys"], + "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 name" : "Nom de la cita", + "Location" : "Ubicació", + "Create a Talk room" : "Crea una sala de conversa", + "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 de confirmació", + "Description" : "Descripció", + "Visibility" : "Visibilitat", + "Duration" : "Durada", + "Increments" : "Increments", + "Additional calendars to check for conflicts" : "Calendaris addicionals per comprovar si hi ha conflictes", + "Pick time ranges where appointments are allowed" : "Trieu intervals de temps on es permeten les cites", + "to" : "a", + "Delete slot" : "Suprimeix unitat temporal", + "No times set" : "Sense horaris establerts", + "Add" : "Afegeix", + "Monday" : "Dilluns", + "Tuesday" : "Dimarts", + "Wednesday" : "Dimecres", + "Thursday" : "Dijous", + "Friday" : "Divendres", + "Saturday" : "Dissabte", + "Sunday" : "Diumenge", + "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", + "Planning restrictions" : "Restriccions de planificació", + "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", + "Update" : "Actualitza", + "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 contacteu amb l'organitzador.", + "Book the appointment" : "Reserva la cita", + "Reminder" : "Recordatori", "before at" : "abans a les", "Notification" : "Notificació", "Email" : "Correu", "Audio notification" : "Notificació de so", "Other notification" : "Altres notificacions", - "Relative to event" : "En relació a l'event", + "Relative to event" : "En relació a l'esdeveniment", "On date" : "A la data", "Edit time" : "Modifica l'hora", "Save time" : "Desar l'hora", @@ -128,54 +269,80 @@ "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"], - "No reminders yet" : "Encara no hi ha recordatoris", + "No attachments" : "Sense fitxers adjunts", + "Add from Files" : "Afegeix d'Arxius", + "Upload from device" : "Pujada des del dispositiu", + "Delete file" : "Suprimeix el fitxer", + "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!", + "_{count} attachment_::_{count} attachments_" : ["{count} fitxer adjunt","{count} fitxers adjunts"], + "Invitation accepted" : "S'ha acceptat la invitació", + "Available" : "Disponible", + "Suggested" : "Suggerit", + "Participation marked as tentative" : "Participació marcada com a provisional", + "Accepted {organizerName}'s invitation" : "S'ha acceptat la invitació de {organizerName}", + "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", + "Checking availability" : "Consultant disponibilitat", + "Invitation sent" : "Invitació enviada", + "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", - "Busy (tentative)" : "Ocupat (temptativament)", + "{organizer} (organizer)" : "{organizer} (organitzador)", + "Free" : "Disponible", + "Busy (tentative)" : "Ocupat (provisional)", "Busy" : "Ocupat", - "Out of office" : "Fora de la oficina", + "Out of office" : "Fora de l'oficina", "Unknown" : "Desconegut", - "{name} accepted your invitation." : "{name} ha acceptat la vostra invitació.", - "{name} accepted {organizerName}'s invitation." : "{name} ha acceptat la invitació de {organizerName}.", - "{name} declined your invitation." : "{name} ha rebutjat la vostra invitació.", - "{name} declined {organizerName}'s invitation." : "{name} ha rebutjat la invitació de {organizerName}.", - "{name} has delegated their invitation." : "{name} ha delegat la seva invitació.", - "{name} marked their participation as tentative." : "{name} han marcat la seva participació com a temptativa.", - "{name} did not respond to your invitation yet." : "{name} encara no ha respost a la vostra invitació.", - "{name} did not respond to {organizerName}'s invitation yet." : "{name} encara no ha respost a la invitació de {organizerName}.", - "Create Talk room for this event" : "Crear una sala a Talk per a aquest event", + "Accept" : "Accepta", + "Decline" : "Rebutja", + "Tentative" : "Provisional", + "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", - "Successfully appended link to talk room to description." : "S'ha afegit l'enllaç d'una nova sala del Talk a la descripció de l'event.", + "No attendees yet" : "Encara no hi ha cap participant", + "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 e-mail" : "Envia el correu", - "Chairperson" : "S'està convocant", - "Required participant" : "Participant necessari", - "Optional participant" : "Participant opcional", - "Non-participant" : "No-participant", - "Remove attendee" : "Treu el participant", - "Search for e-mails, users, contacts, resources or rooms" : "Cerca correus, usuaris, contactes, recursos o espais", - "No match found" : "No s'ha trobat res", - "No attendees yet" : "Encara sense participants", - "(organizer)" : "(organitzador)", - "Remove color" : "Treu el color", - "Event title" : "Títol de l'event", + "Send email" : "Enviar correu", + "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", + "No match found" : "No s'ha trobat cap coincidència", + "(organizer)" : "(organitza l'esdeveniment)", + "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", - "Can not modify all-day setting for events that are part of a recurrence-set." : "No es pot modificar la opció de dia-sencer pels events que formen part d'un conjunt recurrent.", + "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}" : "de {startDate} a {startTime}", - "to {endDate}" : "fins al {endDate}", - "to {endDate} at {endTime}" : "fins al {endDate} a les {endTime}", + "from {startDate} at {startTime}" : "del {startDate} a les {startTime}", + "to {endDate}" : "al {endDate}", + "to {endDate} at {endTime}" : "al {endDate} a les {endTime}", + "Repeat" : "Repeteix", "End repeat" : "Finalitza la repetició", "Select to end repeat" : "Seleccioneu per finalitzar repetició", "never" : "mai", - "on date" : "a temps", + "on date" : "el dia", "after" : "després de", - "_time_::_times_" : ["hora","hores"], - "This event is the recurrence-exception of a recurrence-set. You can not add a recurrence-rule to it." : "Aquest event és una excepció de recurrència d'un conjunt de recurrència. No se li pot afegir una regla recurrència.", + "_time_::_times_" : ["vegada","vegades"], + "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", @@ -183,25 +350,37 @@ "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" : "Repeteix", - "Repeat every" : "Repetir cada", + "Repeat every" : "Repeteix cada", "By day of the month" : "Per dia del mes", "On the" : "Al", "_month_::_months_" : ["mes","mesos"], "_year_::_years_" : ["any","anys"], - "Monday" : "Dilluns", "weekday" : "dia de la setmana", "weekend day" : "dia de cap de setmana", - "Summary" : "Resum", - "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 event no es del tot compatible amb Nextcloud. Si canvieu les opcions de recurrència, es poden perdre certes recurrències.", + "No recurrence" : "Sense recurrència", + "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", + "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", + "Room type" : "Tipus de sala", + "Any" : "Qualsevol", + "Minimum seating capacity" : "Capacitat mínima de seients", "More" : "Més", - "Save" : "Desa", - "Update" : "Actualitza", "Update this occurrence" : "Actualitza aquesta ocurrència", "Update this and all future" : "Actualitza aquesta i les futures", "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 timezone:" : "Selecciona un fus horari", + "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}", @@ -211,57 +390,68 @@ "to {formattedDate} at {formattedTime}" : "al {formattedDate} a les {formattedTime}", "on {formattedDate} at {formattedTime}" : "el {formattedDate} a les {formattedTime}", "{formattedDate} at {formattedTime}" : "{formattedDate} a les {formattedTime}", - "Please enter a valid date" : "Si us plau, escriu una data vàlida", - "Please enter a valid date and time" : "Si us plau, escriu una data i hora vàlides", - "Type to search timezone" : "Comença a escriure per cercar un fus horari", - "Personal" : "Personal", - "The automatic timezone detection determined your timezone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your timezone manually in the calendar settings." : "La detecció automàtica de zona horària ha establert que la vostra zona horària és UTC.\nAixò probablement és el resultat d'una mesura de seguretat del vostre navegador web.\nEstabliu la vostra zona horària manualment a la configuració del calendari.", - "Your configured timezone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your timezone in the settings and report this issue." : "No s'ha trobat la zona horària que heu establert ({timezoneId}) . Així que se us ha retornat a la UTC.\nDefiniu la vostra zona horària a la configuració i si us plau informeu d'aquest problema.", - "No more events today" : "Avui no hi ha més esdeveniments", - "No upcoming events" : "No hi ha propers esdeveniments", + "Please enter a valid date" : "Indiqueu una data vàlida", + "Please enter a valid date and time" : "Indiqueu una data i hora vàlides", + "Type to search time zone" : "Escriviu per cercar la zona horària", + "Global" : "Global", + "Public holiday calendars" : "Calendaris de festius", + "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}", + "By {authors}" : "Per {authors}", + "Subscribed" : "Subscrit", + "Subscribe" : "Subscriu-m'hi", + "Holidays in {region}" : "Festius a {region}", + "An error occurred, unable to create the public holiday calendar." : "S'ha produït un error, no s'ha pogut crear el calendari de festius.", + "Select 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", + "Appointment Details:" : "Detalls de la cita:", + "Time:" : "Hora:", + "Booked for:" : "Reservat per a:", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "Gràcies. La teva reserva de {startDate} a {endDate} s'ha confirmat.", + "Book another appointment:" : "Reserva una altra cita:", + "See all available slots" : "Consulta totes les unitat temporals disponibles", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "L’unitat temporal per a la vostra cita de {startDate} a {endDate} ja no està disponible.", + "Please book a different slot:" : "Reserveu una unitat temporal diferent:", + "Book an appointment with {name}" : "Reserva una cita amb {name}", + "No public appointments found for {name}" : "No s'han trobat cites públiques per a {name}", + "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.", "Create a new event" : "Crea un esdeveniment nou", "[Today]" : "[Avui]", "[Tomorrow]" : "[Demà]", "[Yesterday]" : "[Ahir]", "[Last] dddd" : "[Últim] dddd", "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", + "Managing shared access" : "Gestió de l'accés compartit", + "Deny access" : "Denega l'accés", + "Invite" : "Convida", "Attendees" : "Assistents", - "Reminders" : "Recordatoris", + "Resources" : "Recursos", + "_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"], "Close" : "Tanca", - "Show more details" : "Mostra'n més detalls", + "Show more details" : "Mostra més detalls", "Subscribe to {name}" : "Subscriure a {name}", - "Download {name}" : "Baixa {name}", - "Anniversary" : "Commemoració", - "Appointment" : "Cita", - "Business" : "Negocis", - "Education" : "Formació", - "Holiday" : "Vacances", - "Meeting" : "Reunió", - "Miscellaneous" : "Miscel·lània", - "Non-working hours" : "Hores fora de la feina", - "Not in office" : "Fora de la oficina", - "Phone call" : "Trucada telefònica", - "Sick day" : "Malaltia", - "Special occasion" : "Ocasió especial", - "Travel" : "Viatge", - "Vacation" : "Vacances", - "Midnight on the day the event starts" : "Mitjanit del dia que comença l'event", - "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n dia abans de l'event a les {formattedHourMinute}","%n dies abans de l'event a les {formattedHourMinute}"], - "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n setmana abans de l'event a les {formattedHourMinute}","%n setmanes abans de l'event a les {formattedHourMinute}"], - "on the day of the event at {formattedHourMinute}" : "el dia de l'event a les {formattedHourMinute}", - "at the event's start" : "a l'inici de l'event", - "at the event's end" : "al final de l'event", - "{time} before the event starts" : "{time} abans de que comenci l'event", + "Export {name}" : "Exporta {name}", + "Midnight on the day the event starts" : "Mitjanit del dia que comença l'esdeveniment", + "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n dia abans de l'event a les {formattedHourMinute}","%n dies abans de l'esdeveniment a les {formattedHourMinute}"], + "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n setmana abans de l'event a les {formattedHourMinute}","%n setmanes abans de l'esdeveniment a les {formattedHourMinute}"], + "on the day of the event at {formattedHourMinute}" : "el dia de l'esdeveniment a les {formattedHourMinute}", + "at the event's start" : "a l'inici de l'esdeveniment", + "at the event's end" : "al final de l'esdeveniment", + "{time} before the event starts" : "{time} abans que comenci l'esdeveniment", "{time} before the event ends" : "{time} abans de que acabi l'event", "{time} after the event starts" : "{time} després de que comenci l'event", "{time} after the event ends" : "{time} després de que acabi l'event", "on {time}" : "a les {time}", "on {time} ({timezoneId})" : "a les {time} ({timezoneId})", "Week {number} of {year}" : "Setmana {number} del {year}", - "Does not repeat" : "No repetir", + "Does not repeat" : "No es repeteix", "Daily" : "Diàriament", "Weekly" : "Setmanalment", "Monthly" : "Mensualment", @@ -280,77 +470,103 @@ "Untitled event" : "Esdeveniment sense títol", "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", - "today" : "avui", - "list" : "llista", "W" : "S", - "all-day" : "tot el dia", "%n more" : "%n més", "No events to display" : "No hi ha esdeveniments per visualitzar", - "_+%n more_::_+%n more_" : ["+%n més","+%n més"], + "_+%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", "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ç", - "When shared show" : "Mostrar a compartits", + "Meeting room" : "Sala de reunions", + "Lecture hall" : "Sala de lectura", + "Seminar room" : "Sala de seminaris", + "Other" : "Altres", + "When shared show" : "Mostrar quan es comparteix", "When shared show full event" : "Quan es comparteix, mostra l'esdeveniment complet", "When shared show only busy" : "Quan es comparteix, mostra només si està ocupat", "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.", - "Location" : "Ubicació", "Add a location" : "Afegeix una ubicació", - "Description" : "Descripció", "Add a description" : "Afegir una descripció", "Status" : "Estat", "Confirmed" : "Confirmat", - "Tentative" : "Provisional", "Canceled" : "Cancel·lat", - "Confirmation about the overall status of the event." : "Confirmació sobre l'estat general de l'event.", - "Show as" : "Mostra com", - "Take this event into account when calculating free-busy information." : "Tenir en compte aquest event quan es calculi informació sobre disponibilitat-ocupació.", - "Free" : "Lliure", + "Confirmation about the overall status of the event." : "Confirmació sobre l'estat general de l'esdeveniment.", + "Show as" : "Mostra'm com a", + "Take this event into account when calculating free-busy information." : "Tenir en compte aquest esdeveniment quan es calculi informació sobre disponibilitat-ocupació.", "Categories" : "Categories", - "Categories help you to structure and organize your events." : "Les categories us ajuden a estructurar i organitzar els vostres events.", - "Search or add categories" : "Cercar o afegir categories", + "Categories help you to structure and organize your events." : "Les categories us ajuden a estructurar i organitzar els vostres esdeveniment.", + "Search or add categories" : "Cerca o afegeix categories", "Add this as a new category" : "Afegeix-ho com una nova categoria", - "Custom color" : "Color a mida", + "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 l'event", + "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", + "Chat room for event" : "Sala de xat 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", + "This is an event reminder." : "Això és un recordatori de l'esdeveniment.", "Meditation" : "Meditació", - "Relaxing" : "Relax", + "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ó", - "Present" : "Regal", + "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" : "Sala de cinema", + "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", - "Review" : "Revisa", "Office" : "Oficina", "Contributor week" : "Setmana del contribuïdor", - "Party" : "Festa", - "Celebration" : "Celebració", - "Mail" : "Correu electrònic", + "Mail" : "Correu", "Soccer" : "Futbol", "Football" : "Futbol americà", "Gaming" : "Jugar", - "Play" : "Reprodueix", - "Game" : "Joc", "Drive" : "Conduir", + "Driving" : "Conducció", "Bicycle" : "Bicicleta", "Cycle" : "Ciclisme", + "Cycling" : "Fer ciclisme", "Biking" : "Anar en bici", + "Bike" : "Bicicleta", "Podcast" : "Podcast", "Basketball" : "Bàsquet", "Fishing" : "Pesca", @@ -361,31 +577,36 @@ "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" : "Entrenar", + "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", + "Running" : "Córrer", + "Go for a run" : "Sortir a córrer", "Marathon" : "Marató", - "Video-conference" : "Vídeo-conferència", + "Video-conference" : "Videoconferència", "Conference-call" : "Trucada de conferència", - "Video-call" : "Vídeo-trucada", + "Video-call" : "Videotrucada", "Video-chat" : "Vídeo-xat", "Video-meeting" : "Vídeo-reunió", "Call" : "Trucada", @@ -394,20 +615,27 @@ "Conference" : "Conferència", "Pizza" : "Pizza", "Travelling" : "Viatjar", + "Trip" : "Viatge", "Journey" : "Viatge", "Collaborate" : "Col·laborar", "Pair" : "Parella", - "Lecture" : "Lectura", + "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" : "Skateboard", + "Skateboard" : "Monopatí", "Wine tasting" : "Tasta de vins", "Golf" : "Golf", "Dinner" : "Sopar", "Lunch" : "Dinar", - "Global" : "Global" + "Appointment not found" : "No s'ha trobat la cita", + "User not found" : "No s'ha trobat l'usuari" },"pluralForm" :"nplurals=2; plural=(n != 1);" } \ No newline at end of file diff --git a/l10n/cs.js b/l10n/cs.js index 03e7111fc8..ae905cc5ac 100644 --- a/l10n/cs.js +++ b/l10n/cs.js @@ -1,59 +1,137 @@ 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“", "Unexpected error sending email. Please contact your administrator." : "Neočekávaná chyba při odesílání e-mailu. Obraťte se správce.", - "Successfully sent email to " : "E-mail úspěšně odeslán na", - "Hello," : "Zdravíme,", + "Successfully sent email to %1$s" : "E-mail úspěšně odeslán na %1$s", + "Hello," : "Dobrý den,", "We wanted to inform you that %s has published the calendar »%s«." : "Chceme vás informovat, že %s právě zveřejnil/a kalendář „%s“.", "Open »%s«" : "Otevřít „%s“", "Cheers!" : "Mějte se!", "Upcoming events" : "Nadcházející události", + "More events" : "Více událostí", + "No more events today" : "Dnes už žádné další události", + "No upcoming events" : "Žádné nadcházející události", + "%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\" 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", + "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 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:", + "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 zarezervoval(a) schůzku s vámi.", + "Anniversary" : "Výročí", + "Appointment" : "Schůzka", + "Business" : "Práce", + "Education" : "Výuka", + "Holiday" : "Svátek", + "Meeting" : "Schůze", + "Miscellaneous" : "Různé", + "Non-working hours" : "Mimopracovní hodiny", + "Not in office" : "Není v kanceláři", + "Personal" : "Osobní", + "Phone call" : "Telefonní hovor", + "Sick day" : "Zdravotní volno", + "Special occasion" : "Zvláštní příležitost", + "Travel" : "Cesta", + "Vacation" : "Dovolená", + "Custom Categories" : "Uživatelsky určené kateborie", + "Collaborative Tags" : "Štítky pro spolupráci", + "Standard Categories" : "Standardní kategorie", "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).", "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", + "Event" : "Událost", + "Create new event" : "Vytvořit novou událost", "Today" : "Dnes", "Day" : "Den", "Week" : "Týden", "Month" : "Měsíc", + "Year" : "Rok", "List" : "Seznam", - "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", - "Download" : "Stáhnout", - "Unshare from me" : "Přestat sdílet", + "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ář", + "Shared with you by" : "Nasdílel(a) vám", + "Edit and share calendar" : "Upravit a nasdílet kalendář", + "Edit calendar" : "Upravit kalendář", + "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.", "_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"], + "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ů", + "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)", + "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", + "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.", + "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", + "Empty trash bin" : "Vyprázdnit koš", + "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 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?", + "_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.", + "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", "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 předplatného", - "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", @@ -65,35 +143,35 @@ OC.L10N.register( "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", - "can edit" : "lze upravovat", + "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 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í.", - "+ New calendar" : "+ Nový kalendář", - "New calendar" : "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ředplatné z odkazu (pouze pro čtení)", - "Creating subscription …" : "Vytváření předplatného…", - "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://)", - "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", + "Calendar name …" : "Název kalendáře", + "Share calendar" : "Nasdílet kalendář", + "Unshare from me" : "Přestat sdílet", + "Save" : "Uložit", + "Failed to save calendar name and color" : "Nepodařilo se uložit název a barvu kalendáře", "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"], - "{filename} is an unsupported file-type" : "{filename} není podporovaným typem souboru", + "Default attachments location" : "Výchozí umístění příloh", + "Select the default location for attachments" : "Vyberte výchozí umístění pro přílohy", + "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.", "{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. Importováno {accepted} z {total}.", - "_Successfully imported %n event_::_Successfully imported %n events._" : ["%n kalendář úspěšně naimportován","%n kalendáře úspěšně naimportovány","%n kalendářů úspěšně naimportováno","%n kalendáře úspěšně naimportovány"], + "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"], "Automatic" : "Automaticky", "Automatic ({detected})" : "Automaticky ({detected})", - "New setting was not saved successfully." : "Nová nastavení se nepodařilo uložit.", + "New setting was not saved successfully." : "Nové nastavení se nepodařilo uložit.", "Shortcut overview" : "Přehled zkratek", "or" : "nebo", "Navigation" : "Pohyb", @@ -103,21 +181,83 @@ 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", "Show shortcuts" : "Zobrazit zkratky", + "Editor" : "Editor", + "Close editor" : "Zavřít editor", + "Save edited event" : "Uložit upravenou událost", + "Delete edited event" : "Smazat upravenou událost", + "Duplicate event" : "Zduplikovat událost", "Enable birthday calendar" : "Zobrazovat kalendář s narozeninami", "Show tasks in calendar" : "Zobrazovat úkoly v kalendáři", - "Enable simplified editor" : "Zapnout zjednodušený editor", - "Limit visible events per view" : "Omezit viditelné události v jednotlivých pohledech", + "Enable simplified editor" : "Používat zjednodušený editor", + "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 reminder" : "Výchozí upomínka", "Copy primary CalDAV address" : "Zkopírovat hlavní CalDAV adresu", - "Copy iOS/macOS CalDAV address" : "Zkopírovat iOS/macOS 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", - "Settings & import" : "Nastavení a import", + "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", + "_{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"], + "_{duration} day_::_{duration} days_" : ["{duration} den","{duration} dny","{duration} dnů","{duration} dny"], + "_{duration} week_::_{duration} weeks_" : ["{duration} týden","{duration} týdny","{duration} týdnů","{duration} týdny"], + "_{duration} month_::_{duration} months_" : ["{duration} měsíc","{duration} měsíce","{duration} měsíců","{duration} měsíce"], + "_{duration} year_::_{duration} years_" : ["{duration} rok","{duration} roky","{duration} let","{duration} roky"], + "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 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í", + "Increments" : "Přírůstky", + "Additional calendars to check for conflicts" : "Další kalendáře které kontrolovat ohledně konfliktů", + "Pick time ranges where appointments are allowed" : "Zvolte časové rozsahy, ve kterých jsou povolené schůzky", + "to" : "do", + "Delete slot" : "Smazat slot", + "No times set" : "Nenastaveny žádné časy", + "Add" : "Přidat", + "Monday" : "pondělí", + "Tuesday" : "úterý", + "Wednesday" : "středa", + "Thursday" : "čtvrtek", + "Friday" : "pátek", + "Saturday" : "sobota", + "Sunday" : "neděle", + "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", + "Planning restrictions" : "Omezení plánování", + "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", + "Update" : "Aktualizovat", + "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", "before at" : "před v", "Notification" : "Upozornění", "Email" : "E-mail", @@ -125,61 +265,86 @@ 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"], - "No reminders yet" : "Doposud žádné připomínky", + "No attachments" : "Žádné přílohy", + "Add from Files" : "Přidat ze Souborů", + "Upload from device" : "Nahrát ze zařízení", + "Delete file" : "Smazat soubor", + "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!", + "_{count} attachment_::_{count} attachments_" : ["{count} příloha","{count} přílohy","{count} příloh","{count} přílohy"], + "Invitation accepted" : "Pozvání přijato", + "Available" : "K dispozici", + "Suggested" : "Doporučeno", + "Participation marked as tentative" : "Účast označena jako povinná", + "Accepted {organizerName}'s invitation" : "Pozvánka od {organizerName} přijata", + "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", + "Checking availability" : "Zjišťuje se, zda je k dispozici", + "Invitation sent" : "Pozvánka odeslána", + "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í", + "{organizer} (organizer)" : "{organizer} (organizátor/ka)", + "Free" : "Volné", "Busy (tentative)" : "Zaneprázdněno (nezávazně)", "Busy" : "Zaneprázdněno", "Out of office" : "Mimo kancelář", "Unknown" : "Neznámé", - "{name} accepted your invitation." : "{name} přijal(a) vaše pozvání.", - "{name} accepted {organizerName}'s invitation." : "{name} přijal(a) pozvání od {organizerName}.", - "{name} declined your invitation." : "{name} odmítl(a) vaši pozvánku", - "{name} declined {organizerName}'s invitation." : "{name} odmítl(a) pozvánku {organizerName}.", - "{name} has delegated their invitation." : "{name} svou pozvánku delegoval(a).", - "{name} marked their participation as tentative." : "{name} označil(a) svou účast jako předběžnou.", - "{name} did not respond to your invitation yet." : "{name} zatím na pozvánku nereagoval(a).", - "{name} did not respond to {organizerName}'s invitation yet." : "{name} zatím neodpověděl(a) na pozvánku {organizerName}.", + "Accept" : "Přijmout", + "Decline" : "Odmítnout", + "Tentative" : "Nezávazně", + "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", - "Successfully appended link to talk room to description." : "Do popisu úspěšně přidán odkaz na Talk místnost", - "Error creating Talk room" : "Chyba při vytváření Talk místnosti", - "Send e-mail" : "Odeslat e-mail", + "No attendees yet" : "Zatím žádní účastníci", + "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", "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 e-mails, users, contacts, resources or rooms" : "Hledat e-maily, uživatele, kontakty, prostředky nebo místnosti", + "Search for emails, users or contacts" : "Hledat e-maily, uživatele či kontakty", "No match found" : "Nenalezena žádná shoda", - "No attendees yet" : "Zatím žádní účastníci", "(organizer)" : "(organizátor(ka))", "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", - "Can not modify all-day setting for events that are part of a recurrence-set." : "U opakovaných událostí nelze u každého výskytu zvlášť měnit, zda je událost celodenní či ne.", + "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}", + "Repeat" : "Opakovat", "End repeat" : "Konec opakování", "Select to end repeat" : "Vyberte konec opakování", "never" : "nikdy", "on date" : "dne", "after" : "po", "_time_::_times_" : ["krát","krát","krát","krát"], - "This event is the recurrence-exception of a recurrence-set. You can not add a recurrence-rule to it." : "Tato událost je výjimka v opakované události. Nelze k ní přidat 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é", @@ -187,25 +352,37 @@ OC.L10N.register( "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" : "Opakovat", "Repeat every" : "Opakovat každé", "By day of the month" : "Podle dne v měsíci", "On the" : "V", "_month_::_months_" : ["měsíc","měsíce","měsíců","měsíce"], "_year_::_years_" : ["rok","roky","let","roky"], - "Monday" : "pondělí", "weekday" : "den v týdnu", "weekend day" : "den o víkendu", - "Summary" : "Souhrn", + "No recurrence" : "Bez opakování", "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", + "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é", + "Room type" : "Typ místnosti", + "Any" : "Jakákoli", + "Minimum seating capacity" : "Minimální kapacita k sezení", "More" : "Více", - "Save" : "Uložit", - "Update" : "Aktualizovat", "Update this occurrence" : "Aktualizovat tento výskyt", "Update this and all future" : "Aktualizovat tento a všechny budoucí", "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 timezone:" : "Vyberte časovou zónu:", + "Please select a time zone:" : "Vyberte časové pásmo:", "Pick a time" : "Vyberte čas", "Pick a date" : "Vyberte datum", "from {formattedDate}" : "od {formattedDate}", @@ -217,41 +394,52 @@ 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", - "Type to search timezone" : "Psaním vyhledejte časovou zónu", - "Personal" : "Osobní", - "The automatic timezone detection determined your timezone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your timezone manually in the calendar settings." : "Automatické zjišťování časové zóny určilo, ž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 timezone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your timezone in the settings and report this issue." : "Vámi nastavená časová zóna ({timezoneId}) nenalezena. Náhradně použit UTC čas.\nZměňte svou časovou zónu 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", + "Type to search time zone" : "Psaním vyhledejte časové pásmo", + "Global" : "Globální", + "Public holiday calendars" : "Kalendář veřejných svátků", + "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}", + "By {authors}" : "Od {authors}", + "Subscribed" : "Přihlášeno se k odběru", + "Subscribe" : "Přihlásit se k odběru", + "Holidays in {region}" : "Svátky v {region}", + "An error occurred, unable to create the public holiday calendar." : "Došlo k chybě – nepodařilo se vytvořit kalendář veřejných svátků.", + "Select 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", + "Appointment Details:" : "Podrobnosti o schůzce:", + "Time:" : "Čas:", + "Booked for:" : "Zarezervováno pro:", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "Děkujeme. Vaše rezervace od {startDate} do {endDate} byla potvrzena.", + "Book another appointment:" : "Zarezervovat si jinou schůzku:", + "See all available slots" : "Zobrazit všechny dostupné sloty", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "Časové okno pro vaši schůzku od {startDate} do {endDate} už není k dispozici.", + "Please book a different slot:" : "Prosím zarezervujte si jiné časové okno:", + "Book an appointment with {name}" : "Zarezervovat si schůzku s {name}", + "No public appointments found for {name}" : "Pro {name} nebyla nalezena žádná veřejná schůzka", + "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.", "Create a new event" : "Vytvořit novou událost", "[Today]" : "[Dnes]", "[Tomorrow]" : "[Zítra]", "[Yesterday]" : "[Včera]", "[Last] dddd" : "[Minul.] dddd", "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", + "Managing shared access" : "Správa sdíleného přístupu", + "Deny access" : "Odepřít přístup", + "Invite" : "Pozvat", "Attendees" : "Účastníci", - "Reminders" : "Připomínky", + "Resources" : "Prostředky", + "_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"], "Close" : "Zavřít", "Show more details" : "Zobrazit další podrobnosti", "Subscribe to {name}" : "Přihlásit se k odběru {name}", - "Download {name}" : "Stáhnout {name}", - "Anniversary" : "Výročí", - "Appointment" : "Schůzka", - "Business" : "Práce", - "Education" : "Výuka", - "Holiday" : "Svátek", - "Meeting" : "Schůzka", - "Miscellaneous" : "Různé", - "Non-working hours" : "Mimopracovní hodiny", - "Not in office" : "Není v kanceláři", - "Phone call" : "Telefonní hovor", - "Sick day" : "Zdravotní volno", - "Special occasion" : "Zvláštní příležitost", - "Travel" : "Cestovat", - "Vacation" : "Dovolená", + "Export {name}" : "Exportovat {name}", "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}"], @@ -266,10 +454,10 @@ OC.L10N.register( "on {time} ({timezoneId})" : "v {time} ({timezoneId})", "Week {number} of {year}" : "{number}. týden {year}", "Does not repeat" : "Neopakuje se", - "Daily" : "Denně", + "Daily" : "Každodenně", "Weekly" : "Týdně", "Monthly" : "Měsíčně", - "Yearly" : "Ročně", + "Yearly" : "Každoročně", "_Every %n day_::_Every %n days_" : ["Každý den","Každé %n dny","Každých %n dnů","Každé %n dny"], "_Every %n week_::_Every %n weeks_" : ["Každý týden","Každé %n týdny","Každých %n týdnů","Každé %n týdny"], "_Every %n month_::_Every %n months_" : ["Každý měsíc","Každé %n měsíce","Každých %n měsíců","Každé %n měsíce"], @@ -284,77 +472,103 @@ OC.L10N.register( "Untitled event" : "Nepojmenovaná událost", "Untitled task" : "Nepojmenovaný úkol", "Please ask your administrator to enable the Tasks App." : "Požádejte správce aby zapnul aplikaci Úkoly.", - "prev" : "předch", - "next" : "další", - "prev year" : "předch rok", - "next year" : "následující rok", - "today" : "dnes", - "list" : "seznam", "W" : "T", - "all-day" : "celý den", "%n more" : "%n další", "No events to display" : "Žádné události k zobrazení", "_+%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", + "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", + "Other" : "Jiná", "When shared show" : "Při sdílení neskrývat", "When shared show full event" : "Když sdíleno zobrazit úplnou událost", "When shared show only busy" : "Když sdíleno zobrazit pouze zaneprázdněno", "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.", - "Location" : "Umístění", "Add a location" : "Přidat umístění", - "Description" : "Popis", "Add a description" : "Přidat popis", "Status" : "Stav", "Confirmed" : "Potvrzeno", - "Tentative" : "Nezávazně", "Canceled" : "Zrušeno", "Confirmation about the overall status of the event." : "Potvrzení o celkovém stavu události.", "Show as" : "Zobrazit jako", "Take this event into account when calculating free-busy information." : "Zohlednit tuto událost při určování zaneprázdněných/volných hodin.", - "Free" : "Volné", "Categories" : "Kategorie", "Categories help you to structure and organize your events." : "Kategorie pomáhají udržovat přehled v událostech a strukturovat je.", "Search or add categories" : "Hledat nebo přidat kategorie", "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.", + "Error while sharing file" : "Chyba při sdílení souboru", + "Error while sharing file with user" : "Chyba při sdílení souboru uživateli", + "Attachment {fileName} already exists!" : "Příloha {fileName} už existuje!", + "An error occurred during getting file information" : "Při získávání informací o souboru došlo k chybě", "Chat room for event" : "Chat místnost 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}", + "This is an event reminder." : "Toto je připomínka události.", "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", - "Present" : "Dárek", + "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" : "Schůzka", + "Meet" : "Setkání", "Planning" : "Plánování", "Pointing" : "Ukazování", "Retrospective" : "Retrospektiva", - "Review" : "Revize", "Office" : "Kancelář", "Contributor week" : "Týden přispěvatelů", - "Party" : "Párty", - "Celebration" : "Oslava", "Mail" : "Pošta", "Soccer" : "Fotbal", "Football" : "Fotbal", "Gaming" : "Hraní", - "Play" : "Hrát", - "Game" : "Hra", "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í", @@ -365,10 +579,12 @@ OC.L10N.register( "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í", @@ -379,7 +595,10 @@ OC.L10N.register( "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", @@ -391,27 +610,34 @@ OC.L10N.register( "Conference-call" : "Konferenční hovor", "Video-call" : "Video-hovor", "Video-chat" : "Video-chat", - "Video-meeting" : "Video-schůzka", + "Video-meeting" : "Video-schůze", "Call" : "Volání", "Calling" : "Volání", "Christmas" : "Vánoce", "Conference" : "Konference", "Pizza" : "Pizza", "Travelling" : "Cestování", - "Journey" : "Cestování", + "Trip" : "Výlet", + "Journey" : "Zájezd", "Collaborate" : "Spolupracovat", "Pair" : "Dvojice", "Lecture" : "Přednáška", "Seminar" : "Seminář", - "Photograph" : "Fotograf", + "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", - "Global" : "Globální" + "Appointment not found" : "Schůzka nenalezena", + "User not found" : "Uživatel nenalezen" }, "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 aae751b13d..e08041d70d 100644 --- a/l10n/cs.json +++ b/l10n/cs.json @@ -1,57 +1,135 @@ { "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“", "Unexpected error sending email. Please contact your administrator." : "Neočekávaná chyba při odesílání e-mailu. Obraťte se správce.", - "Successfully sent email to " : "E-mail úspěšně odeslán na", - "Hello," : "Zdravíme,", + "Successfully sent email to %1$s" : "E-mail úspěšně odeslán na %1$s", + "Hello," : "Dobrý den,", "We wanted to inform you that %s has published the calendar »%s«." : "Chceme vás informovat, že %s právě zveřejnil/a kalendář „%s“.", "Open »%s«" : "Otevřít „%s“", "Cheers!" : "Mějte se!", "Upcoming events" : "Nadcházející události", + "More events" : "Více událostí", + "No more events today" : "Dnes už žádné další události", + "No upcoming events" : "Žádné nadcházející události", + "%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\" 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", + "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 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:", + "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 zarezervoval(a) schůzku s vámi.", + "Anniversary" : "Výročí", + "Appointment" : "Schůzka", + "Business" : "Práce", + "Education" : "Výuka", + "Holiday" : "Svátek", + "Meeting" : "Schůze", + "Miscellaneous" : "Různé", + "Non-working hours" : "Mimopracovní hodiny", + "Not in office" : "Není v kanceláři", + "Personal" : "Osobní", + "Phone call" : "Telefonní hovor", + "Sick day" : "Zdravotní volno", + "Special occasion" : "Zvláštní příležitost", + "Travel" : "Cesta", + "Vacation" : "Dovolená", + "Custom Categories" : "Uživatelsky určené kateborie", + "Collaborative Tags" : "Štítky pro spolupráci", + "Standard Categories" : "Standardní kategorie", "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).", "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", + "Event" : "Událost", + "Create new event" : "Vytvořit novou událost", "Today" : "Dnes", "Day" : "Den", "Week" : "Týden", "Month" : "Měsíc", + "Year" : "Rok", "List" : "Seznam", - "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", - "Download" : "Stáhnout", - "Unshare from me" : "Přestat sdílet", + "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ář", + "Shared with you by" : "Nasdílel(a) vám", + "Edit and share calendar" : "Upravit a nasdílet kalendář", + "Edit calendar" : "Upravit kalendář", + "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.", "_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"], + "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ů", + "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)", + "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", + "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.", + "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", + "Empty trash bin" : "Vyprázdnit koš", + "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 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?", + "_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.", + "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", "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 předplatného", - "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", @@ -63,35 +141,35 @@ "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", - "can edit" : "lze upravovat", + "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 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í.", - "+ New calendar" : "+ Nový kalendář", - "New calendar" : "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ředplatné z odkazu (pouze pro čtení)", - "Creating subscription …" : "Vytváření předplatného…", - "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://)", - "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", + "Calendar name …" : "Název kalendáře", + "Share calendar" : "Nasdílet kalendář", + "Unshare from me" : "Přestat sdílet", + "Save" : "Uložit", + "Failed to save calendar name and color" : "Nepodařilo se uložit název a barvu kalendáře", "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"], - "{filename} is an unsupported file-type" : "{filename} není podporovaným typem souboru", + "Default attachments location" : "Výchozí umístění příloh", + "Select the default location for attachments" : "Vyberte výchozí umístění pro přílohy", + "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.", "{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. Importováno {accepted} z {total}.", - "_Successfully imported %n event_::_Successfully imported %n events._" : ["%n kalendář úspěšně naimportován","%n kalendáře úspěšně naimportovány","%n kalendářů úspěšně naimportováno","%n kalendáře úspěšně naimportovány"], + "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"], "Automatic" : "Automaticky", "Automatic ({detected})" : "Automaticky ({detected})", - "New setting was not saved successfully." : "Nová nastavení se nepodařilo uložit.", + "New setting was not saved successfully." : "Nové nastavení se nepodařilo uložit.", "Shortcut overview" : "Přehled zkratek", "or" : "nebo", "Navigation" : "Pohyb", @@ -101,21 +179,83 @@ "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", "Show shortcuts" : "Zobrazit zkratky", + "Editor" : "Editor", + "Close editor" : "Zavřít editor", + "Save edited event" : "Uložit upravenou událost", + "Delete edited event" : "Smazat upravenou událost", + "Duplicate event" : "Zduplikovat událost", "Enable birthday calendar" : "Zobrazovat kalendář s narozeninami", "Show tasks in calendar" : "Zobrazovat úkoly v kalendáři", - "Enable simplified editor" : "Zapnout zjednodušený editor", - "Limit visible events per view" : "Omezit viditelné události v jednotlivých pohledech", + "Enable simplified editor" : "Používat zjednodušený editor", + "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 reminder" : "Výchozí upomínka", "Copy primary CalDAV address" : "Zkopírovat hlavní CalDAV adresu", - "Copy iOS/macOS CalDAV address" : "Zkopírovat iOS/macOS 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", - "Settings & import" : "Nastavení a import", + "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", + "_{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"], + "_{duration} day_::_{duration} days_" : ["{duration} den","{duration} dny","{duration} dnů","{duration} dny"], + "_{duration} week_::_{duration} weeks_" : ["{duration} týden","{duration} týdny","{duration} týdnů","{duration} týdny"], + "_{duration} month_::_{duration} months_" : ["{duration} měsíc","{duration} měsíce","{duration} měsíců","{duration} měsíce"], + "_{duration} year_::_{duration} years_" : ["{duration} rok","{duration} roky","{duration} let","{duration} roky"], + "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 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í", + "Increments" : "Přírůstky", + "Additional calendars to check for conflicts" : "Další kalendáře které kontrolovat ohledně konfliktů", + "Pick time ranges where appointments are allowed" : "Zvolte časové rozsahy, ve kterých jsou povolené schůzky", + "to" : "do", + "Delete slot" : "Smazat slot", + "No times set" : "Nenastaveny žádné časy", + "Add" : "Přidat", + "Monday" : "pondělí", + "Tuesday" : "úterý", + "Wednesday" : "středa", + "Thursday" : "čtvrtek", + "Friday" : "pátek", + "Saturday" : "sobota", + "Sunday" : "neděle", + "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", + "Planning restrictions" : "Omezení plánování", + "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", + "Update" : "Aktualizovat", + "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", "before at" : "před v", "Notification" : "Upozornění", "Email" : "E-mail", @@ -123,61 +263,86 @@ "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"], - "No reminders yet" : "Doposud žádné připomínky", + "No attachments" : "Žádné přílohy", + "Add from Files" : "Přidat ze Souborů", + "Upload from device" : "Nahrát ze zařízení", + "Delete file" : "Smazat soubor", + "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!", + "_{count} attachment_::_{count} attachments_" : ["{count} příloha","{count} přílohy","{count} příloh","{count} přílohy"], + "Invitation accepted" : "Pozvání přijato", + "Available" : "K dispozici", + "Suggested" : "Doporučeno", + "Participation marked as tentative" : "Účast označena jako povinná", + "Accepted {organizerName}'s invitation" : "Pozvánka od {organizerName} přijata", + "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", + "Checking availability" : "Zjišťuje se, zda je k dispozici", + "Invitation sent" : "Pozvánka odeslána", + "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í", + "{organizer} (organizer)" : "{organizer} (organizátor/ka)", + "Free" : "Volné", "Busy (tentative)" : "Zaneprázdněno (nezávazně)", "Busy" : "Zaneprázdněno", "Out of office" : "Mimo kancelář", "Unknown" : "Neznámé", - "{name} accepted your invitation." : "{name} přijal(a) vaše pozvání.", - "{name} accepted {organizerName}'s invitation." : "{name} přijal(a) pozvání od {organizerName}.", - "{name} declined your invitation." : "{name} odmítl(a) vaši pozvánku", - "{name} declined {organizerName}'s invitation." : "{name} odmítl(a) pozvánku {organizerName}.", - "{name} has delegated their invitation." : "{name} svou pozvánku delegoval(a).", - "{name} marked their participation as tentative." : "{name} označil(a) svou účast jako předběžnou.", - "{name} did not respond to your invitation yet." : "{name} zatím na pozvánku nereagoval(a).", - "{name} did not respond to {organizerName}'s invitation yet." : "{name} zatím neodpověděl(a) na pozvánku {organizerName}.", + "Accept" : "Přijmout", + "Decline" : "Odmítnout", + "Tentative" : "Nezávazně", + "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", - "Successfully appended link to talk room to description." : "Do popisu úspěšně přidán odkaz na Talk místnost", - "Error creating Talk room" : "Chyba při vytváření Talk místnosti", - "Send e-mail" : "Odeslat e-mail", + "No attendees yet" : "Zatím žádní účastníci", + "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", "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 e-mails, users, contacts, resources or rooms" : "Hledat e-maily, uživatele, kontakty, prostředky nebo místnosti", + "Search for emails, users or contacts" : "Hledat e-maily, uživatele či kontakty", "No match found" : "Nenalezena žádná shoda", - "No attendees yet" : "Zatím žádní účastníci", "(organizer)" : "(organizátor(ka))", "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", - "Can not modify all-day setting for events that are part of a recurrence-set." : "U opakovaných událostí nelze u každého výskytu zvlášť měnit, zda je událost celodenní či ne.", + "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}", + "Repeat" : "Opakovat", "End repeat" : "Konec opakování", "Select to end repeat" : "Vyberte konec opakování", "never" : "nikdy", "on date" : "dne", "after" : "po", "_time_::_times_" : ["krát","krát","krát","krát"], - "This event is the recurrence-exception of a recurrence-set. You can not add a recurrence-rule to it." : "Tato událost je výjimka v opakované události. Nelze k ní přidat 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é", @@ -185,25 +350,37 @@ "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" : "Opakovat", "Repeat every" : "Opakovat každé", "By day of the month" : "Podle dne v měsíci", "On the" : "V", "_month_::_months_" : ["měsíc","měsíce","měsíců","měsíce"], "_year_::_years_" : ["rok","roky","let","roky"], - "Monday" : "pondělí", "weekday" : "den v týdnu", "weekend day" : "den o víkendu", - "Summary" : "Souhrn", + "No recurrence" : "Bez opakování", "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", + "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é", + "Room type" : "Typ místnosti", + "Any" : "Jakákoli", + "Minimum seating capacity" : "Minimální kapacita k sezení", "More" : "Více", - "Save" : "Uložit", - "Update" : "Aktualizovat", "Update this occurrence" : "Aktualizovat tento výskyt", "Update this and all future" : "Aktualizovat tento a všechny budoucí", "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 timezone:" : "Vyberte časovou zónu:", + "Please select a time zone:" : "Vyberte časové pásmo:", "Pick a time" : "Vyberte čas", "Pick a date" : "Vyberte datum", "from {formattedDate}" : "od {formattedDate}", @@ -215,41 +392,52 @@ "{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", - "Type to search timezone" : "Psaním vyhledejte časovou zónu", - "Personal" : "Osobní", - "The automatic timezone detection determined your timezone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your timezone manually in the calendar settings." : "Automatické zjišťování časové zóny určilo, ž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 timezone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your timezone in the settings and report this issue." : "Vámi nastavená časová zóna ({timezoneId}) nenalezena. Náhradně použit UTC čas.\nZměňte svou časovou zónu 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", + "Type to search time zone" : "Psaním vyhledejte časové pásmo", + "Global" : "Globální", + "Public holiday calendars" : "Kalendář veřejných svátků", + "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}", + "By {authors}" : "Od {authors}", + "Subscribed" : "Přihlášeno se k odběru", + "Subscribe" : "Přihlásit se k odběru", + "Holidays in {region}" : "Svátky v {region}", + "An error occurred, unable to create the public holiday calendar." : "Došlo k chybě – nepodařilo se vytvořit kalendář veřejných svátků.", + "Select 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", + "Appointment Details:" : "Podrobnosti o schůzce:", + "Time:" : "Čas:", + "Booked for:" : "Zarezervováno pro:", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "Děkujeme. Vaše rezervace od {startDate} do {endDate} byla potvrzena.", + "Book another appointment:" : "Zarezervovat si jinou schůzku:", + "See all available slots" : "Zobrazit všechny dostupné sloty", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "Časové okno pro vaši schůzku od {startDate} do {endDate} už není k dispozici.", + "Please book a different slot:" : "Prosím zarezervujte si jiné časové okno:", + "Book an appointment with {name}" : "Zarezervovat si schůzku s {name}", + "No public appointments found for {name}" : "Pro {name} nebyla nalezena žádná veřejná schůzka", + "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.", "Create a new event" : "Vytvořit novou událost", "[Today]" : "[Dnes]", "[Tomorrow]" : "[Zítra]", "[Yesterday]" : "[Včera]", "[Last] dddd" : "[Minul.] dddd", "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", + "Managing shared access" : "Správa sdíleného přístupu", + "Deny access" : "Odepřít přístup", + "Invite" : "Pozvat", "Attendees" : "Účastníci", - "Reminders" : "Připomínky", + "Resources" : "Prostředky", + "_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"], "Close" : "Zavřít", "Show more details" : "Zobrazit další podrobnosti", "Subscribe to {name}" : "Přihlásit se k odběru {name}", - "Download {name}" : "Stáhnout {name}", - "Anniversary" : "Výročí", - "Appointment" : "Schůzka", - "Business" : "Práce", - "Education" : "Výuka", - "Holiday" : "Svátek", - "Meeting" : "Schůzka", - "Miscellaneous" : "Různé", - "Non-working hours" : "Mimopracovní hodiny", - "Not in office" : "Není v kanceláři", - "Phone call" : "Telefonní hovor", - "Sick day" : "Zdravotní volno", - "Special occasion" : "Zvláštní příležitost", - "Travel" : "Cestovat", - "Vacation" : "Dovolená", + "Export {name}" : "Exportovat {name}", "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}"], @@ -264,10 +452,10 @@ "on {time} ({timezoneId})" : "v {time} ({timezoneId})", "Week {number} of {year}" : "{number}. týden {year}", "Does not repeat" : "Neopakuje se", - "Daily" : "Denně", + "Daily" : "Každodenně", "Weekly" : "Týdně", "Monthly" : "Měsíčně", - "Yearly" : "Ročně", + "Yearly" : "Každoročně", "_Every %n day_::_Every %n days_" : ["Každý den","Každé %n dny","Každých %n dnů","Každé %n dny"], "_Every %n week_::_Every %n weeks_" : ["Každý týden","Každé %n týdny","Každých %n týdnů","Každé %n týdny"], "_Every %n month_::_Every %n months_" : ["Každý měsíc","Každé %n měsíce","Každých %n měsíců","Každé %n měsíce"], @@ -282,77 +470,103 @@ "Untitled event" : "Nepojmenovaná událost", "Untitled task" : "Nepojmenovaný úkol", "Please ask your administrator to enable the Tasks App." : "Požádejte správce aby zapnul aplikaci Úkoly.", - "prev" : "předch", - "next" : "další", - "prev year" : "předch rok", - "next year" : "následující rok", - "today" : "dnes", - "list" : "seznam", "W" : "T", - "all-day" : "celý den", "%n more" : "%n další", "No events to display" : "Žádné události k zobrazení", "_+%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", + "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", + "Other" : "Jiná", "When shared show" : "Při sdílení neskrývat", "When shared show full event" : "Když sdíleno zobrazit úplnou událost", "When shared show only busy" : "Když sdíleno zobrazit pouze zaneprázdněno", "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.", - "Location" : "Umístění", "Add a location" : "Přidat umístění", - "Description" : "Popis", "Add a description" : "Přidat popis", "Status" : "Stav", "Confirmed" : "Potvrzeno", - "Tentative" : "Nezávazně", "Canceled" : "Zrušeno", "Confirmation about the overall status of the event." : "Potvrzení o celkovém stavu události.", "Show as" : "Zobrazit jako", "Take this event into account when calculating free-busy information." : "Zohlednit tuto událost při určování zaneprázdněných/volných hodin.", - "Free" : "Volné", "Categories" : "Kategorie", "Categories help you to structure and organize your events." : "Kategorie pomáhají udržovat přehled v událostech a strukturovat je.", "Search or add categories" : "Hledat nebo přidat kategorie", "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.", + "Error while sharing file" : "Chyba při sdílení souboru", + "Error while sharing file with user" : "Chyba při sdílení souboru uživateli", + "Attachment {fileName} already exists!" : "Příloha {fileName} už existuje!", + "An error occurred during getting file information" : "Při získávání informací o souboru došlo k chybě", "Chat room for event" : "Chat místnost 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}", + "This is an event reminder." : "Toto je připomínka události.", "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", - "Present" : "Dárek", + "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" : "Schůzka", + "Meet" : "Setkání", "Planning" : "Plánování", "Pointing" : "Ukazování", "Retrospective" : "Retrospektiva", - "Review" : "Revize", "Office" : "Kancelář", "Contributor week" : "Týden přispěvatelů", - "Party" : "Párty", - "Celebration" : "Oslava", "Mail" : "Pošta", "Soccer" : "Fotbal", "Football" : "Fotbal", "Gaming" : "Hraní", - "Play" : "Hrát", - "Game" : "Hra", "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í", @@ -363,10 +577,12 @@ "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í", @@ -377,7 +593,10 @@ "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", @@ -389,27 +608,34 @@ "Conference-call" : "Konferenční hovor", "Video-call" : "Video-hovor", "Video-chat" : "Video-chat", - "Video-meeting" : "Video-schůzka", + "Video-meeting" : "Video-schůze", "Call" : "Volání", "Calling" : "Volání", "Christmas" : "Vánoce", "Conference" : "Konference", "Pizza" : "Pizza", "Travelling" : "Cestování", - "Journey" : "Cestování", + "Trip" : "Výlet", + "Journey" : "Zájezd", "Collaborate" : "Spolupracovat", "Pair" : "Dvojice", "Lecture" : "Přednáška", "Seminar" : "Seminář", - "Photograph" : "Fotograf", + "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", - "Global" : "Globální" + "Appointment not found" : "Schůzka nenalezena", + "User not found" : "Uživatel nenalezen" },"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 08c89ac5d7..9c9602e445 100644 --- a/l10n/cy_GB.js +++ b/l10n/cy_GB.js @@ -1,54 +1,566 @@ OC.L10N.register( "calendar", { + "User-Session unexpectedly expired" : "Daeth y Sesiwn-Defnyddiwr i ben yn annisgwyl", + "Provided email-address is not valid" : "Nid yw'r cyfeiriad e-bost hwn yn ddilys", "%s has published the calendar »%s«" : "Mae %s wedi cyhoeddi’r calendr » %s«", + "Unexpected error sending email. Please contact your administrator." : "Gwall annisgwyl wrth anfon e-bost. Cysylltwch â'ch gweinyddwr.", + "Successfully sent email to %1$s" : "Wedi anfon e-bost yn llwyddiannus at %1$s", "Hello," : "Helo,", "We wanted to inform you that %s has published the calendar »%s«." : "Roeddem am eich hysbysu bod %s wedi cyhoeddi'r calendr » %s«.", "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", + "Dear %s, please confirm your booking" : "Annwyl %s, cadarnhewch eich archeb", + "Confirm" : "Cadarnhau", + "This confirmation link expires in %s hours." : "Mae'r ddolen gadarnhau hon yn dod i ben ymhen %s awr.", + "Date:" : "Dyddiad:", + "Where:" : "Lle:", + "Anniversary" : "Dathliad", + "Appointment" : "Apwyntiad", + "Business" : "Busnes", + "Education" : "Addysg", + "Holiday" : "Gwyliau", + "Meeting" : "Cyfarfod", + "Miscellaneous" : "Amrywiol", + "Non-working hours" : "Oriau heb fod yn waith", + "Not in office" : "Ddim yn y swyddfa", + "Personal" : "Personol", + "Phone call" : "Galwad ffôn", + "Sick day" : "Diwrnod yn sâl", + "Special occasion" : "Achlysur arbennig", + "Travel" : "Teithio", + "Vacation" : "Gwyliau", "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", "Today" : "Heddiw", "Day" : "Diwrnod", "Week" : "Wythnos", "Month" : "Mis", - "Download" : "Llwytho i lawr", + "Year" : "Blwyddyn", + "List" : "Rhestr", + "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", + "An error occurred, unable to change visibility of the calendar." : "Bu gwall, ni fu modd newid gwelededd y calendr.", + "_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"], + "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://)", + "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", + "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.", + "Trash bin" : "Bin sbwriel", + "Name" : "Enw", + "Deleted" : "Wedi dileu", + "Restore" : "Adfer", + "Delete permanently" : "Dileu'n barhaol", + "Empty trash bin" : "Bin sbwriel gwag", + "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?", + "Could not update calendar order." : "Methu â diweddaru trefn y calendr.", "Share link" : "Rhannu dolen", + "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 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", + "can edit" : "yn gallu golygu", + "Unshare with {displayName}" : "Dadrannu gyda {displayName}", + "An error occurred, unable to change the permission of the share." : "Bu gwall, ni fu modd newid caniatâd y gyfran.", "Share with users or groups" : "Rhannwch gyda defnyddwyr neu grwpiau", "No users or groups" : "Dim defnyddwyr na grwpiau", - "can edit" : "yn gallu golygu", - "New calendar" : "Calendr newydd", + "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", + "Calendar to import into" : "Calendr i fewnforio iddo", "Cancel" : "Diddymu", + "_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"], + "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", + "Views" : "Dangosiadau", + "Day view" : "Golwg dydd", + "Week view" : "Golwg wythnos", + "Month view" : "Golwg mis", + "List view" : "Golwg rhestr", "Actions" : "Gweithredoedd", + "Create event" : "Creu digwyddiad", + "Show shortcuts" : "Dangos llwybrau byr", + "Editor" : "gafygau", + "Close editor" : "Cau'r golygydd", + "Save edited event" : "Cadw digwyddiad wedi'i olygu", + "Delete edited event" : "Dileu digwyddiad wedi'i olygu", + "Enable birthday calendar" : "Galluogi calendr pen-blwydd", + "Show tasks in calendar" : "Dangos tasgau yn y calendr", + "Enable simplified editor" : "Galluogi golygydd symlach", + "Show weekends" : "Dangos penwythnosau", "Show week numbers" : "Dangos rhifau wythnosau", - "Settings & import" : "Gosodiadau a mewnforio", + "Time increments" : "Cynyddiadau amser", + "Default reminder" : "Nodyn atgoffa rhagosodedig", + "Copy primary CalDAV address" : "Copïo prig gyfeiriad CalDAV", + "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"], + "_{duration} day_::_{duration} days_" : ["{duration} diwrnod","{duration} ddiwrnod","{duration} diwrnod","{duration} diwrnod"], + "_{duration} week_::_{duration} weeks_" : ["{duration} wythnos","{duration} wythnos","{duration} wythnos","{duration} wythnos"], + "_{duration} month_::_{duration} months_" : ["{duration} mis","{duration} fis","{duration} mis","{duration} mis"], + "_{duration} year_::_{duration} years_" : ["{duration} blwyddyn","{duration} flynedd","{duration} blynedd","{duration} blynedd"], + "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", + "Location" : "Lleoliad", + "Description" : "Disgrifiad", + "Visibility" : "Gwelededd", + "Duration" : "Hyd", + "Increments" : "Cynyddiadau", + "Additional calendars to check for conflicts" : "Calendrau ychwanegol i wirio am wrthdrawoiadau", + "Pick time ranges where appointments are allowed" : "Dewiswch ystodau amser lle apwyntiadau'n cael eu caniatáu", + "to" : "at", + "Delete slot" : "Dileu slot", + "No times set" : "Dim amseroedd wedi'u gosod", + "Add" : "Ychwanegu", + "Monday" : "Llun", + "Tuesday" : "Mawrth", + "Wednesday" : "Mercher", + "Thursday" : "Iau", + "Friday" : "Gwener", + "Saturday" : "Sadwrn", + "Sunday" : "Sul", + "Add time before and after the event" : "Ychwanegu amser cyn ac ar ôl y digwyddiad", + "Before the event" : "Cyn y digwyddiad", + "After the event" : "Ar ôl y digwyddiad", + "Planning restrictions" : "Cyfyngiadau cynllunio", + "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", + "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", + "before at" : "cyn am", + "Notification" : "Hysbysiad", "Email" : "E-bost", + "Audio notification" : "Hysbysiad sain", + "Other notification" : "Hysbysiad arall", + "Relative to event" : "Mewn perthynas â digwyddiad", + "On date" : "Ar ddyddiad", + "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"], + "Choose a file to add as attachment" : "Dewiswch ffeil i'w hychwanegu fel atodiad", + "Invitation accepted" : "Derbyniwyd y gwahoddiad", + "Available" : "Ar gael?", + "Suggested" : "Awgrym", + "Participation marked as tentative" : "Cyfrannu wedi'i nodi fel o bosib", + "Accepted {organizerName}'s invitation" : "Derbyniwyd y gwahoddiad {organizerName}", + "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", + "Checking availability" : "Gwirio argaeledd", + "Invitation sent" : "Anfonwyd gwahoddiad", + "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)", + "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", + "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", + "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", "never" : "byth", + "on date" : "ar ddyddiad", "after" : "wedi", - "Repeat" : "Ailadrodd", - "Monday" : "Llun", + "_time_::_times_" : ["amser","gwaith","gwaith","gwaith"], + "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", + "_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", + "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", + "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", + "Room type" : "Math o ystafell", + "Any" : "Unrhyw", + "Minimum seating capacity" : "Lleiafswm seddi", "More" : "Rhagor", - "Save" : "Cadw", - "Update" : "Diweddaru", - "Personal" : "Personol", + "Update this occurrence" : "Diweddaru'r digwyddiad hwn", + "Update this and all future" : "Diweddaru hwn a phob un i'r dyfodol", + "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}", + "from {formattedDate} at {formattedTime}" : "o {formattedDate} am {formattedTime}", + "to {formattedDate} at {formattedTime}" : "i {formattedDate} am {formattedTime}", + "on {formattedDate} at {formattedTime}" : "ar {formattedDate} am {formattedTime}", + "{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", + "Type to search time zone" : "Teipiwch i chwilio'r gylchfa amser", + "Global" : "Eang", + "Subscribe" : "Tanysgrifio", + "Select date" : "Dewis dyddiad", + "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", + "Appointment Details:" : "Manylion Apwyntiad:", + "Time:" : "Dewis amser", + "Booked for:" : "Archebwyd ar gyfer:", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "Diolch. Mae eich archeb o {startDate} i {endDate} wedi'i chadarnhau.", + "Book another appointment:" : "Trefnwch apwyntiad arall:", + "See all available slots" : "Gweler yr holl slotiau sydd ar gael", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "Nid yw'r slot ar gyfer eich apwyntiad o {startDate} i {endDate} ar gael mwyach.", + "Please book a different slot:" : "Archebwch slot gwahanol:", + "Book an appointment with {name}" : "Trefnwch apwyntiad gyda {name}", + "No public appointments found for {name}" : "Heb ganfod unrhyw apwyntiadau cyhoeddus ar gyfer {name}", + "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.", + "Create a new event" : "Creu digwyddiad newydd", + "[Today]" : "Heddiw", + "[Tomorrow]" : "[Yfory]", + "[Yesterday]" : "[Ddoe]", + "[Last] dddd" : "[Diwethaf] dddd", + "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", - "Reminders" : "Nodau atgoffa", + "Resources" : "Adnoddau", "Close" : "Cau", - "Anniversary" : "Dathliad", + "Show more details" : "Dangos rhagor o fanylion", + "Subscribe to {name}" : "Tanysgrifio i {name}", + "Export {name}" : "Allforio {name}", + "Midnight on the day the event starts" : "Hanner nos ar y diwrnod y mae'r digwyddiad yn dechrau", + "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n diwrnod cyn y digwyddiad am {formattedHourMinute}","%n ddiwrnod cyn y digwyddiad am {formattedHourMinute}","%n diwrnod cyn y digwyddiad am {formattedHourMinute}","%n diwrnod cyn y digwyddiad am {formattedHourMinute}"], + "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n wythnos cyn y digwyddiad am {formattedHourMinute}","%n wythnos cyn y digwyddiad am {formattedHourMinute}","%n wythnos cyn y digwyddiad am {formattedHourMinute}","%n wythnos cyn y digwyddiad am {formattedHourMinute}"], + "on the day of the event at {formattedHourMinute}" : "ar ddiwrnod y digwyddiad am {formattedHourMinute}", + "at the event's start" : "ar ddechrau'r digwyddiad", + "at the event's end" : "ar ddiwedd y digwyddiad", + "{time} before the event starts" : "{time} cyn i'r digwyddiad ddechrau", + "{time} before the event ends" : "{time} cyn i'r digwyddiad ddod i ben", + "{time} after the event starts" : "{time} ar ôl i'r digwyddiad ddechrau", + "{time} after the event ends" : "{time} ar ôl i'r digwyddiad ddod i ben", + "on {time}" : "ar {time}", + "on {time} ({timezoneId})" : "ar {time} ({timezoneId})", "Week {number} of {year}" : "Wythnos {number} o {year}", - "today" : "heddiw", + "Does not repeat" : "Nid yw'n ailadrodd", + "Daily" : "Dyddiol", + "Weekly" : "Wythnosol", + "Monthly" : "Misol", + "Yearly" : "Blynyddol", + "_Every %n day_::_Every %n days_" : ["Bob %n diwrnod","Bob %n ddiwrnod","Bob %n diwrnod","Bob %n diwrnod"], + "_Every %n week_::_Every %n weeks_" : ["Bob %n wythnos","Bob %n wythnos","Bob %n wythnos","Bob %n wythnos"], + "_Every %n month_::_Every %n months_" : ["Bob %n mis","Bob %n fis","Bob %n mis","Bob %n mis"], + "_Every %n year_::_Every %n years_" : ["Bob %n blwyddyn","Bob %n flynedd","Bob %n blynedd","Bob %n mlynedd"], + "_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", + "Untitled task" : "Tasg di-deitl", + "Please ask your administrator to enable the Tasks App." : "Gofynnwch i'ch gweinyddwr alluogi'r Ap Tasgau.", + "W" : "M", + "%n more" : "%n arall", + "No events to display" : "Dim digwyddiadau i'w dangos", + "_+%n more_::_+%n more_" : ["+%n arall","+%n arall","+%n arall","+%n arall"], + "No events" : "Dim digwyddiadau", + "Create a new event or change the visible time-range" : "Creu digwyddiad newydd neu newid yr ystod amser gweladwy", + "It might have been deleted, or there was a typo in a link" : "Efallai ei fod wedi'i ddileu, neu roedd gwall mewn dolen", + "It might have been deleted, or there was a typo in the link" : "Efallai ei fod wedi'i ddileu, neu fod gwall yn y ddolen", + "Meeting room" : "Ystafell cyfarfod", + "Lecture hall" : "Neuadd ddarlithio", + "Seminar room" : "Ystafell seminar", + "Other" : "Arall", + "When shared show" : "Wrth rannu dangos", "When shared show full event" : "Pan wedi ei rannu, yn dangos y digwyddiad llawn", "When shared show only busy" : "Pan wedi ei rannu, yn dangos dim ond prysur", "When shared hide this event" : "Pan wedi ei rannu, yn cuddio'r digwyddiad hwn", - "Location" : "Lleoliad", - "Description" : "Disgrifiad", + "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", - "Tentative" : "I'w gadarnhau", + "Canceled" : "Wedi diddymu", + "Confirmation about the overall status of the event." : "Cadarnhad o statws cyffredinol y digwyddiad.", + "Show as" : "Dangos fel", + "Take this event into account when calculating free-busy information." : "Cymerwch y digwyddiad hwn i ystyriaeth wrth gyfrifo gwybodaeth amser rhydd-prysur.", + "Categories" : "Categorïau", + "Categories help you to structure and organize your events." : "Mae categorïau yn eich helpu i strwythuro a threfnu eich digwyddiadau.", + "Search or add categories" : "Chwilio am neu ychwanegu categorïau", + "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", - "Play" : "Chwarae", - "Global" : "Eang" + "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" }, "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 352765f78f..7cc7f79a27 100644 --- a/l10n/cy_GB.json +++ b/l10n/cy_GB.json @@ -1,52 +1,564 @@ { "translations": { + "User-Session unexpectedly expired" : "Daeth y Sesiwn-Defnyddiwr i ben yn annisgwyl", + "Provided email-address is not valid" : "Nid yw'r cyfeiriad e-bost hwn yn ddilys", "%s has published the calendar »%s«" : "Mae %s wedi cyhoeddi’r calendr » %s«", + "Unexpected error sending email. Please contact your administrator." : "Gwall annisgwyl wrth anfon e-bost. Cysylltwch â'ch gweinyddwr.", + "Successfully sent email to %1$s" : "Wedi anfon e-bost yn llwyddiannus at %1$s", "Hello," : "Helo,", "We wanted to inform you that %s has published the calendar »%s«." : "Roeddem am eich hysbysu bod %s wedi cyhoeddi'r calendr » %s«.", "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", + "Dear %s, please confirm your booking" : "Annwyl %s, cadarnhewch eich archeb", + "Confirm" : "Cadarnhau", + "This confirmation link expires in %s hours." : "Mae'r ddolen gadarnhau hon yn dod i ben ymhen %s awr.", + "Date:" : "Dyddiad:", + "Where:" : "Lle:", + "Anniversary" : "Dathliad", + "Appointment" : "Apwyntiad", + "Business" : "Busnes", + "Education" : "Addysg", + "Holiday" : "Gwyliau", + "Meeting" : "Cyfarfod", + "Miscellaneous" : "Amrywiol", + "Non-working hours" : "Oriau heb fod yn waith", + "Not in office" : "Ddim yn y swyddfa", + "Personal" : "Personol", + "Phone call" : "Galwad ffôn", + "Sick day" : "Diwrnod yn sâl", + "Special occasion" : "Achlysur arbennig", + "Travel" : "Teithio", + "Vacation" : "Gwyliau", "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", "Today" : "Heddiw", "Day" : "Diwrnod", "Week" : "Wythnos", "Month" : "Mis", - "Download" : "Llwytho i lawr", + "Year" : "Blwyddyn", + "List" : "Rhestr", + "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", + "An error occurred, unable to change visibility of the calendar." : "Bu gwall, ni fu modd newid gwelededd y calendr.", + "_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"], + "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://)", + "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", + "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.", + "Trash bin" : "Bin sbwriel", + "Name" : "Enw", + "Deleted" : "Wedi dileu", + "Restore" : "Adfer", + "Delete permanently" : "Dileu'n barhaol", + "Empty trash bin" : "Bin sbwriel gwag", + "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?", + "Could not update calendar order." : "Methu â diweddaru trefn y calendr.", "Share link" : "Rhannu dolen", + "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 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", + "can edit" : "yn gallu golygu", + "Unshare with {displayName}" : "Dadrannu gyda {displayName}", + "An error occurred, unable to change the permission of the share." : "Bu gwall, ni fu modd newid caniatâd y gyfran.", "Share with users or groups" : "Rhannwch gyda defnyddwyr neu grwpiau", "No users or groups" : "Dim defnyddwyr na grwpiau", - "can edit" : "yn gallu golygu", - "New calendar" : "Calendr newydd", + "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", + "Calendar to import into" : "Calendr i fewnforio iddo", "Cancel" : "Diddymu", + "_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"], + "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", + "Views" : "Dangosiadau", + "Day view" : "Golwg dydd", + "Week view" : "Golwg wythnos", + "Month view" : "Golwg mis", + "List view" : "Golwg rhestr", "Actions" : "Gweithredoedd", + "Create event" : "Creu digwyddiad", + "Show shortcuts" : "Dangos llwybrau byr", + "Editor" : "gafygau", + "Close editor" : "Cau'r golygydd", + "Save edited event" : "Cadw digwyddiad wedi'i olygu", + "Delete edited event" : "Dileu digwyddiad wedi'i olygu", + "Enable birthday calendar" : "Galluogi calendr pen-blwydd", + "Show tasks in calendar" : "Dangos tasgau yn y calendr", + "Enable simplified editor" : "Galluogi golygydd symlach", + "Show weekends" : "Dangos penwythnosau", "Show week numbers" : "Dangos rhifau wythnosau", - "Settings & import" : "Gosodiadau a mewnforio", + "Time increments" : "Cynyddiadau amser", + "Default reminder" : "Nodyn atgoffa rhagosodedig", + "Copy primary CalDAV address" : "Copïo prig gyfeiriad CalDAV", + "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"], + "_{duration} day_::_{duration} days_" : ["{duration} diwrnod","{duration} ddiwrnod","{duration} diwrnod","{duration} diwrnod"], + "_{duration} week_::_{duration} weeks_" : ["{duration} wythnos","{duration} wythnos","{duration} wythnos","{duration} wythnos"], + "_{duration} month_::_{duration} months_" : ["{duration} mis","{duration} fis","{duration} mis","{duration} mis"], + "_{duration} year_::_{duration} years_" : ["{duration} blwyddyn","{duration} flynedd","{duration} blynedd","{duration} blynedd"], + "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", + "Location" : "Lleoliad", + "Description" : "Disgrifiad", + "Visibility" : "Gwelededd", + "Duration" : "Hyd", + "Increments" : "Cynyddiadau", + "Additional calendars to check for conflicts" : "Calendrau ychwanegol i wirio am wrthdrawoiadau", + "Pick time ranges where appointments are allowed" : "Dewiswch ystodau amser lle apwyntiadau'n cael eu caniatáu", + "to" : "at", + "Delete slot" : "Dileu slot", + "No times set" : "Dim amseroedd wedi'u gosod", + "Add" : "Ychwanegu", + "Monday" : "Llun", + "Tuesday" : "Mawrth", + "Wednesday" : "Mercher", + "Thursday" : "Iau", + "Friday" : "Gwener", + "Saturday" : "Sadwrn", + "Sunday" : "Sul", + "Add time before and after the event" : "Ychwanegu amser cyn ac ar ôl y digwyddiad", + "Before the event" : "Cyn y digwyddiad", + "After the event" : "Ar ôl y digwyddiad", + "Planning restrictions" : "Cyfyngiadau cynllunio", + "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", + "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", + "before at" : "cyn am", + "Notification" : "Hysbysiad", "Email" : "E-bost", + "Audio notification" : "Hysbysiad sain", + "Other notification" : "Hysbysiad arall", + "Relative to event" : "Mewn perthynas â digwyddiad", + "On date" : "Ar ddyddiad", + "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"], + "Choose a file to add as attachment" : "Dewiswch ffeil i'w hychwanegu fel atodiad", + "Invitation accepted" : "Derbyniwyd y gwahoddiad", + "Available" : "Ar gael?", + "Suggested" : "Awgrym", + "Participation marked as tentative" : "Cyfrannu wedi'i nodi fel o bosib", + "Accepted {organizerName}'s invitation" : "Derbyniwyd y gwahoddiad {organizerName}", + "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", + "Checking availability" : "Gwirio argaeledd", + "Invitation sent" : "Anfonwyd gwahoddiad", + "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)", + "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", + "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", + "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", "never" : "byth", + "on date" : "ar ddyddiad", "after" : "wedi", - "Repeat" : "Ailadrodd", - "Monday" : "Llun", + "_time_::_times_" : ["amser","gwaith","gwaith","gwaith"], + "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", + "_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", + "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", + "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", + "Room type" : "Math o ystafell", + "Any" : "Unrhyw", + "Minimum seating capacity" : "Lleiafswm seddi", "More" : "Rhagor", - "Save" : "Cadw", - "Update" : "Diweddaru", - "Personal" : "Personol", + "Update this occurrence" : "Diweddaru'r digwyddiad hwn", + "Update this and all future" : "Diweddaru hwn a phob un i'r dyfodol", + "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}", + "from {formattedDate} at {formattedTime}" : "o {formattedDate} am {formattedTime}", + "to {formattedDate} at {formattedTime}" : "i {formattedDate} am {formattedTime}", + "on {formattedDate} at {formattedTime}" : "ar {formattedDate} am {formattedTime}", + "{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", + "Type to search time zone" : "Teipiwch i chwilio'r gylchfa amser", + "Global" : "Eang", + "Subscribe" : "Tanysgrifio", + "Select date" : "Dewis dyddiad", + "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", + "Appointment Details:" : "Manylion Apwyntiad:", + "Time:" : "Dewis amser", + "Booked for:" : "Archebwyd ar gyfer:", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "Diolch. Mae eich archeb o {startDate} i {endDate} wedi'i chadarnhau.", + "Book another appointment:" : "Trefnwch apwyntiad arall:", + "See all available slots" : "Gweler yr holl slotiau sydd ar gael", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "Nid yw'r slot ar gyfer eich apwyntiad o {startDate} i {endDate} ar gael mwyach.", + "Please book a different slot:" : "Archebwch slot gwahanol:", + "Book an appointment with {name}" : "Trefnwch apwyntiad gyda {name}", + "No public appointments found for {name}" : "Heb ganfod unrhyw apwyntiadau cyhoeddus ar gyfer {name}", + "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.", + "Create a new event" : "Creu digwyddiad newydd", + "[Today]" : "Heddiw", + "[Tomorrow]" : "[Yfory]", + "[Yesterday]" : "[Ddoe]", + "[Last] dddd" : "[Diwethaf] dddd", + "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", - "Reminders" : "Nodau atgoffa", + "Resources" : "Adnoddau", "Close" : "Cau", - "Anniversary" : "Dathliad", + "Show more details" : "Dangos rhagor o fanylion", + "Subscribe to {name}" : "Tanysgrifio i {name}", + "Export {name}" : "Allforio {name}", + "Midnight on the day the event starts" : "Hanner nos ar y diwrnod y mae'r digwyddiad yn dechrau", + "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n diwrnod cyn y digwyddiad am {formattedHourMinute}","%n ddiwrnod cyn y digwyddiad am {formattedHourMinute}","%n diwrnod cyn y digwyddiad am {formattedHourMinute}","%n diwrnod cyn y digwyddiad am {formattedHourMinute}"], + "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n wythnos cyn y digwyddiad am {formattedHourMinute}","%n wythnos cyn y digwyddiad am {formattedHourMinute}","%n wythnos cyn y digwyddiad am {formattedHourMinute}","%n wythnos cyn y digwyddiad am {formattedHourMinute}"], + "on the day of the event at {formattedHourMinute}" : "ar ddiwrnod y digwyddiad am {formattedHourMinute}", + "at the event's start" : "ar ddechrau'r digwyddiad", + "at the event's end" : "ar ddiwedd y digwyddiad", + "{time} before the event starts" : "{time} cyn i'r digwyddiad ddechrau", + "{time} before the event ends" : "{time} cyn i'r digwyddiad ddod i ben", + "{time} after the event starts" : "{time} ar ôl i'r digwyddiad ddechrau", + "{time} after the event ends" : "{time} ar ôl i'r digwyddiad ddod i ben", + "on {time}" : "ar {time}", + "on {time} ({timezoneId})" : "ar {time} ({timezoneId})", "Week {number} of {year}" : "Wythnos {number} o {year}", - "today" : "heddiw", + "Does not repeat" : "Nid yw'n ailadrodd", + "Daily" : "Dyddiol", + "Weekly" : "Wythnosol", + "Monthly" : "Misol", + "Yearly" : "Blynyddol", + "_Every %n day_::_Every %n days_" : ["Bob %n diwrnod","Bob %n ddiwrnod","Bob %n diwrnod","Bob %n diwrnod"], + "_Every %n week_::_Every %n weeks_" : ["Bob %n wythnos","Bob %n wythnos","Bob %n wythnos","Bob %n wythnos"], + "_Every %n month_::_Every %n months_" : ["Bob %n mis","Bob %n fis","Bob %n mis","Bob %n mis"], + "_Every %n year_::_Every %n years_" : ["Bob %n blwyddyn","Bob %n flynedd","Bob %n blynedd","Bob %n mlynedd"], + "_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", + "Untitled task" : "Tasg di-deitl", + "Please ask your administrator to enable the Tasks App." : "Gofynnwch i'ch gweinyddwr alluogi'r Ap Tasgau.", + "W" : "M", + "%n more" : "%n arall", + "No events to display" : "Dim digwyddiadau i'w dangos", + "_+%n more_::_+%n more_" : ["+%n arall","+%n arall","+%n arall","+%n arall"], + "No events" : "Dim digwyddiadau", + "Create a new event or change the visible time-range" : "Creu digwyddiad newydd neu newid yr ystod amser gweladwy", + "It might have been deleted, or there was a typo in a link" : "Efallai ei fod wedi'i ddileu, neu roedd gwall mewn dolen", + "It might have been deleted, or there was a typo in the link" : "Efallai ei fod wedi'i ddileu, neu fod gwall yn y ddolen", + "Meeting room" : "Ystafell cyfarfod", + "Lecture hall" : "Neuadd ddarlithio", + "Seminar room" : "Ystafell seminar", + "Other" : "Arall", + "When shared show" : "Wrth rannu dangos", "When shared show full event" : "Pan wedi ei rannu, yn dangos y digwyddiad llawn", "When shared show only busy" : "Pan wedi ei rannu, yn dangos dim ond prysur", "When shared hide this event" : "Pan wedi ei rannu, yn cuddio'r digwyddiad hwn", - "Location" : "Lleoliad", - "Description" : "Disgrifiad", + "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", - "Tentative" : "I'w gadarnhau", + "Canceled" : "Wedi diddymu", + "Confirmation about the overall status of the event." : "Cadarnhad o statws cyffredinol y digwyddiad.", + "Show as" : "Dangos fel", + "Take this event into account when calculating free-busy information." : "Cymerwch y digwyddiad hwn i ystyriaeth wrth gyfrifo gwybodaeth amser rhydd-prysur.", + "Categories" : "Categorïau", + "Categories help you to structure and organize your events." : "Mae categorïau yn eich helpu i strwythuro a threfnu eich digwyddiadau.", + "Search or add categories" : "Chwilio am neu ychwanegu categorïau", + "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", - "Play" : "Chwarae", - "Global" : "Eang" + "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" },"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 07fbe06bde..002c622ea3 100644 --- a/l10n/da.js +++ b/l10n/da.js @@ -1,54 +1,137 @@ 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 " : "Email blev sendt til", + "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", + "More events" : "Flere begivenheder", + "No more events today" : "Ikke flere begivenheder i dag", + "No upcoming events" : "Ingen kommende 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", + "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:", + "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.", + "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", + "Personal" : "Personlig", + "Phone call" : "Telefon opkald", + "Sick day" : "Sygedag", + "Special occasion" : "Speciel lejlighed", + "Travel" : "Rejse", + "Vacation" : "Ferie", + "Custom Categories" : "Brugerdefinerede Kategorier", + "Collaborative Tags" : "Samarbejds Tags", + "Standard Categories" : "Standart Katagorier", "A Calendar app for Nextcloud" : "En kalender-app til 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." : "Kalender-appen er en brugergrænseflade til Nextclouds CalDAV-server. Synkroniser nemt begivenheder fra forskellige enheder med din Nextcloud og rediger dem online.\n\n* 🚀 **Integration med andre Nextcloud-apps!** Kontakter i øjeblikket - mere på vej.\n* 🌐 **WebCal Support!** Vil du se dit yndlingsholds kampdage i din kalender? Intet problem!\n* 🙋 **Deltagere!** Inviter folk til dine begivenheder\n* ⌚️ **Ledig/Optaget!** Se, hvornår dine deltagere er tilgængelige til at mødes\n* ⏰ **Påmindelser!** Få alarmer for begivenheder i din browser og via e-mail\n* 🔍 Søg! Find dine arrangementer med ro\n* ☑️ Opgaver! Se opgaver med forfaldsdato direkte i kalenderen\n* 🙈 **Vi genopfinder ikke hjulet!** Baseret på det fantastiske [c-dav-bibliotek](https://github.com/nextcloud/cdav-library), [ical.js](https://github. com/mozilla-comm/ical.js) og [fullcalendar](https://github.com/fullcalendar/fullcalendar) biblioteker.", "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" : "+ Ny begivenhed", + "Event" : "Begivenhed", + "Create new event" : "Opret ny begivenhed", "Today" : "I dag", "Day" : "Dag", "Week" : "Uge", "Month" : "Måned", - "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", - "Download" : "Hent", - "Unshare from me" : "Fjern deling fra mig", + "Year" : "År", + "List" : "Liste", + "Preview" : "Forhåndsvisning", + "Copy link" : "Kopiér link", + "Edit" : "Rediger", "Delete" : "Slet", + "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", + "Add new" : "Tilføj ny", + "Untitled calendar" : "Unanvngiven kalender", + "Shared with you by" : "Delt med dig af", + "Edit and share calendar" : "Rediger og del kalender", + "Edit calendar" : "Rediger kalender", + "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.", + "_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"], + "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", + "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://)", + "Copy subscription link" : "Kopier abonnementslink", + "Copying link …" : "Kopierer link…", + "Copied link" : "Link kopieret", + "Could not copy link" : "Link kunne ikke kopieres", + "Export" : "Eksportér", "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"], + "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", + "Empty trash bin" : "Tom papirkurv", + "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 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?", + "_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.", + "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", "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", + "Enter one address" : "Indtast én adresse", "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", "Copy embedding code" : "Kopier indlejringskode", "Copying code …" : "Kopierer kode…", "Copied code" : "Kode kopieret", @@ -56,90 +139,504 @@ OC.L10N.register( "Delete share link" : "Slet delingslink", "Deleting share link …" : "Sletter delingslink…", "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", + "can edit" : "kan redigere", + "Unshare with {displayName}" : "Fjern deling med {displayName}", + "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.", "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", - "Creating calendar …" : "Opretter kalender…", - "New calendar with task list" : "Ny kalender med opgaveliste", - "Creating subscription …" : "Opretter abonnement…", + "Calendar name …" : "Kalender navn …", + "Share calendar" : "Del kalender", + "Unshare from me" : "Fjern deling fra mig", + "Save" : "Gem", + "Failed to save calendar name and color" : "Kunne ikke gemme kalendernavn og farve", "Import calendars" : "Importer kalendere", + "Please select a calendar to import into …" : "Vælg venligst en kalender, der skal importeres til...", "Filename" : "Filnavn", + "Calendar to import into" : "Kalender at importere til", "Cancel" : "Annullér", "_Import calendar_::_Import calendars_" : ["Importer kalender","Importer kalendere"], + "Default attachments location" : "Standardplacering for vedhæftede filer", + "Select the default location for attachments" : "Vælg standardplaceringen for vedhæftede filer", + "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.", + "{filename} could not be parsed" : "{filename} kunne ikke tilføjes", + "No valid files found, aborting import" : "Ingen gyldige filer fundet, importen afbrydes", + "Import partially failed. Imported {accepted} out of {total}." : "Importen mislykkedes delvist. Importeret {accepted} ud af {total}.", + "_Successfully imported %n event_::_Successfully imported %n events_" : ["%n begivenhed blev importeret","%n begivenheder blev importeret"], "Automatic" : "Automatisk", + "Automatic ({detected})" : "Automatisk ({detected})", + "New setting was not saved successfully." : "Den nye indstilling blev ikke gemt.", + "Shortcut overview" : "Genvejsoversigt", "or" : "eller", + "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", "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" : "Tidsstigninger", + "Default reminder" : "Standard påmindelse", "Copy primary CalDAV address" : "Kopier primær CalDAV-adresse", - "Settings & import" : "Indstillinger & importer", + "Copy iOS/macOS CalDAV address" : "Kopiér iOS/macOS CalDAV-adresse", + "Personal availability settings" : "Personlige tilgængelighedsindstillinger", + "Show keyboard shortcuts" : "Vis tastaturgenveje", + "Calendar settings" : "Kalender indstillinger", + "No reminder" : "Ingen påmindelse", + "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.", + "Appointment was created successfully" : "Aftalen blev oprettet", + "Appointment was updated successfully" : "Aftalen blev 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 name" : "Aftale navn", + "Location" : "Sted", + "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", + "Wednesday" : "Onsdag", + "Thursday" : "Torsdag", + "Friday" : "Fredag", + "Saturday" : "Lørdag", + "Sunday" : "Søndag", + "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", + "Create appointment" : "Opret aftale", + "Edit appointment" : "Rediger aftale", + "Update" : "Opdatér", + "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.", + "Book the appointment" : "Bestil tid", + "Reminder" : "Påmindelse", + "before at" : "før kl", "Notification" : "Notifikation", "Email" : "E-mail", + "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", + "on" : "på", + "at" : "ved", + "+ Add reminder" : "+ Tilføj påmindelse", + "Add reminder" : "Tilføj påmindelse", "_second_::_seconds_" : ["sekund","sekunder"], "_minute_::_minutes_" : ["minut","minutter"], "_hour_::_hours_" : ["time","timer"], "_day_::_days_" : ["dag","dage"], "_week_::_weeks_" : ["uge","uger"], + "No attachments" : "Ingen vedhæftede filer", + "Add from Files" : "Tilføj fra Filer", + "Upload from device" : "Upload fra enhed", + "Delete file" : "Slet fil", + "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!", + "_{count} attachment_::_{count} attachments_" : ["{count} vedhæftet fil","{count} vedhæftede filer"], + "Invitation accepted" : "Invitation accepteret", + "Available" : "Tilgængelig", + "Suggested" : "Foreslået", + "Participation marked as tentative" : "Deltagelse markeret som foreløbig", + "Accepted {organizerName}'s invitation" : "Accepterede invitationen fra {organizerName}", + "Not available" : "Ikke tilgængelig", + "Invitation declined" : "Invitation afvist", + "Declined {organizerName}'s invitation" : "Afviste {organizerName}s invitation", + "Invitation is delegated" : "Invitation er uddelegeret", + "Checking availability" : "Kontrol af tilgængelighed", + "Invitation sent" : "Invitation sendt", + "Has not responded to {organizerName}'s invitation yet" : "Har endnu ikke svaret på {organizerName}s invitation", + "Availability of attendees, resources and rooms" : "Tilgængelighed af deltagere, ressourcer og lokaler", + "{organizer} (organizer)" : "{organizer} (arrangør)", + "Free" : "Ledig", + "Busy (tentative)" : "Optaget (foreløbig)", "Busy" : "Optaget", + "Out of office" : "Ikke på kontoret", "Unknown" : "Ukendt", + "Accept" : "Accepter", + "Decline" : "Afvis", + "Tentative" : "Foreløbig", + "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.", "Create Talk room for this event" : "Opret Snak rum for denne begivenhed", - "Send e-mail" : "Send e-mail", + "Show busy times" : "Vis optaget tider", + "No attendees yet" : "Ingen deltagere endnu", + "Successfully appended link to talk room to location." : "Linket til talerum til placering er tilføjet til lokationen.", + "Successfully appended link to talk room to description." : "Link til samtalerum blev tilføjet til beskrivelsen.", + "Error creating Talk room" : "Fejl ved oprettelse af talerum", + "Send email" : "Send e-mail", + "Chairperson" : "Formand", + "Required participant" : "Nødvendig deltager", + "Optional participant" : "Valgfri deltager", + "Non-participant" : "Deltager ikke", + "Remove attendee" : "Fjern deltager", + "Search for emails, users or contacts" : "Søg efter e-mails, brugere eller kontakter", + "No match found" : "Ingen match fundet", + "(organizer)" : "(arrangør)", + "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", + "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 {startDate}" : "fra {startDate}", "from {startDate} at {startTime}" : "fra {startDate} kl {startTime}", "to {endDate}" : "til {endDate}", "to {endDate} at {endTime}" : "til {endDate} kl {endTime}", + "Repeat" : "Gentag", + "End repeat" : "Afslut gentagelse", + "Select to end repeat" : "Vælg for at afslutte gentagelsen", "never" : "aldrig", + "on date" : "på dato", "after" : "efter", + "_time_::_times_" : ["gang","gange"], + "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", - "Repeat" : "Gentag", + "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", "_month_::_months_" : ["måned","måneder"], "_year_::_years_" : ["år","år"], - "Monday" : "Mandag", "weekday" : "hverdag", "weekend day" : "weekenddag", - "Summary" : "Oversigt", + "No recurrence" : "Ingen gentagelse", + "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.", + "Suggestions" : "Forslag", + "No rooms or resources yet" : "Ingen lokaler eller ressourcer endnu", + "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", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} sæde","{seatingCapacity} sæder"], + "Projector" : "Projektor", + "Whiteboard" : "Whiteboard", + "Search for resources or rooms" : "Søg efter ressourcer eller lokaler", + "available" : "tilgængelig", + "unavailable" : "ikke tilgængelig", + "Room type" : "Værelses type", + "Any" : "Enhver", + "Minimum seating capacity" : "Minimum siddekapacitet", "More" : "Mere", - "Save" : "Gem", - "Update" : "Opdatér", - "Personal" : "Personlig", + "Update this occurrence" : "Opdater denne forekomst", + "Update this and all future" : "Opdater denne og alle fremtidige", + "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?", + "Please select a time zone:" : "Vælg venligst en tidszone:", + "Pick a time" : "Vælg et tidspunkt", + "Pick a date" : "Vælg en dato", + "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", + "Type to search time zone" : "Indtast for at søge i tidszone", + "Global" : "Global", + "Public holiday calendars" : "Helligdagskallendere", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Helligdagskalendere leveres af Thunderbird. Kalenderdata vil blive downloadet fra {website}", + "By {authors}" : "Af {authors}", + "Subscribed" : "Abonneret", + "Subscribe" : "Tilmeld", + "Holidays in {region}" : "Ferie i {region}", + "An error occurred, unable to create the public holiday calendar." : "Der opstod en fejl, helligdagskalenderen kunne ikke oprettes.", + "Select date" : "Vælg 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}", + "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.", + "Create a new event" : "Opret en ny begivenhed", + "[Today]" : "[i dag]", + "[Tomorrow]" : "[I morgen]", + "[Yesterday]" : "[Yesterday]", + "[Last] dddd" : "[Last] dddd", + "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", "Details" : "Detaljer", + "Managing shared access" : "Håndtering af delt adgang", + "Deny access" : "Nægt adgang", + "Invite" : "Invitere", "Attendees" : "Deltagere", - "Reminders" : "Påmindelser", + "Resources" : "Resourcer", + "_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"], "Close" : "Luk", - "Anniversary" : "Årsdag", + "Show more details" : "Vis flere detaljer", + "Subscribe to {name}" : "Abonner på {name}", + "Export {name}" : "Eksportér {name}", + "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}", + "Does not repeat" : "Gentager sig ikke", "Daily" : "Dagligt", "Weekly" : "Ugentligt", + "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}" : "i {monthNames}", + "in {monthNames} on the {ordinalNumber} {byDaySet}" : "i {monthNames} på {ordinalNumber} {byDaySet}", + "until {untilDate}" : "indtil {untilDate}", + "_%n time_::_%n times_" : ["%n gang","%n gange"], "Untitled event" : "Unavngiven begivenhed", - "next year" : "næste år", - "today" : "i dag", + "Untitled task" : "Unavngivet opgave", + "Please ask your administrator to enable the Tasks App." : "Bed din administrator om at aktivere Opgaver-appen.", + "W" : "U", + "%n more" : "%n yderligere", + "No events to display" : "Ingen begivenheder", + "_+%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", + "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", - "Location" : "Sted", - "Description" : "Beskrivelse", + "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" : "Tilføj en beskrivelse", "Status" : "Status", "Confirmed" : "Bekræftet", - "Tentative" : "Foreløbig", + "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", + "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 brugerdefinerede farver", + "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", + "Chat room for event" : "Chatrum til 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.", + "Meditation" : "Meditation", + "Relaxing" : "Slapper af", + "Relax" : "Slap af", + "Break" : "Pause", + "Commute" : "Pendler", + "Commuting" : "Pendler", + "Shuttle" : "Shuttle", + "Invoice" : "Faktura", + "Finance" : "Økonomi", + "Bank" : "Bank", + "Money" : "Penge", + "Wedding" : "Bryllup", + "Dog" : "Hund", + "Concert" : "Koncert", + "Festival" : "Festival", + "Theater" : "Teater", + "Theatre" : "Teater", "Presentation" : "Præsentation", + "Talk" : "Snak", + "Speech" : "Tale", + "Deadline" : "Deadline", + "Submission" : "Indsendelse", + "Reporting" : "Indberetning", + "Camping" : "Camping", + "Camp" : "Lejr", + "Election" : "Valg", + "Voting" : "Afstemning", + "Vote" : "Stemme", + "Barbecue" : "Grill", + "Barbeque" : "Grill", + "Garden" : "Have", + "Farm" : "Gård", "Movie" : "Film", + "Cinema" : "Biograf", + "Graduation" : "Graduering", + "Brainstorm" : "Brainstorm", "Review" : "Gennemse", + "Audit" : "Audit", + "Inspection" : "Inspektion", + "Proofreading" : "Korrekturlæsning", + "Baseball" : "Baseball", + "Meet" : "Møde", + "Planning" : "Planlægning", + "Pointing" : "Peger", + "Retrospective" : "Tilbagevirkende kraft", "Office" : "Kontor", + "Contributor week" : "Bidragsyder uge", "Mail" : "Mail", - "Play" : "Afspil", - "Global" : "Global" + "Soccer" : "Fodbold", + "Football" : "Fodbold", + "Gaming" : "Gaming", + "Drive" : "Køre", + "Driving" : "Kørsel", + "Bicycle" : "Cykel", + "Cycle" : "Cyklus", + "Cycling" : "Cykling", + "Biking" : "Cykling", + "Bike" : "Cykel", + "Podcast" : "Podcast", + "Basketball" : "Basketball", + "Fishing" : "Fiskeri", + "Hiking" : "Vandring", + "Hike" : "Vandring", + "Art" : "Kunst", + "Exhibition" : "Udstilling", + "Museum" : "Museum", + "Pilates" : "Pilates", + "Park" : "Park", + "Walk" : "Gåtur", + "Studying" : "Studere", + "Doctor" : "Læge", + "Health" : "Sundhed", + "Dentist" : "Tandlæge", + "Hospital" : "Hospital", + "Interview" : "Interview", + "Training" : "Træning", + "Practice" : "Øve", + "Sports" : "Sport", + "Exercise" : "Træning", + "Work out" : "Work out", + "Working out" : "Træner", + "Gym" : "Træningscenter", + "Barber" : "Barbér", + "Haircut" : "Klipning", + "Hairdresser" : "Frisør", + "Exam" : "Eksamen", + "Written test" : "Skriftlig prøve", + "Oral test" : "Mundtlig prøve", + "Working" : "Arbejder", + "New Years Eve" : "Nytårs aften", + "NYE" : "NYE", + "Fireworks" : "Fyrværkeri", + "Running" : "Løber", + "Go for a run" : "Tager ud og løber", + "Marathon" : "Marathon", + "Video-conference" : "Video konference", + "Conference-call" : "Konferenceopkald", + "Video-call" : "Videoopkald", + "Video-chat" : "Videochat", + "Video-meeting" : "Video-møde", + "Call" : "Kald", + "Calling" : "Kalder", + "Christmas" : "Jul", + "Conference" : "Konference", + "Pizza" : "Pizza", + "Travelling" : "Rejsende", + "Trip" : "Rejse", + "Journey" : "Rejse", + "Collaborate" : "Samarbejde", + "Pair" : "Par", + "Lecture" : "Foredrag", + "Seminar" : "Seminar", + "Teaching" : "Undervisning", + "Photograph" : "Fotografi", + "Party" : "Fest", + "Celebration" : "Fejring", + "Celebrate" : "Fejre", + "Birthday" : "Fødselsdag", + "Shopping" : "Shopping", + "Groceries" : "Dagligvarer", + "Skate" : "Skøjte", + "Skateboard" : "Skateboard", + "Wine tasting" : "Vinsmagning", + "Golf" : "Golf", + "Dinner" : "Middag", + "Lunch" : "Frokost", + "Appointment not found" : "Aftale ikke fundet", + "User not found" : "Bruger ikke fundet" }, "nplurals=2; plural=(n != 1);"); diff --git a/l10n/da.json b/l10n/da.json index 52c168e495..6c908285c3 100644 --- a/l10n/da.json +++ b/l10n/da.json @@ -1,52 +1,135 @@ { "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 " : "Email blev sendt til", + "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", + "More events" : "Flere begivenheder", + "No more events today" : "Ikke flere begivenheder i dag", + "No upcoming events" : "Ingen kommende 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", + "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:", + "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.", + "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", + "Personal" : "Personlig", + "Phone call" : "Telefon opkald", + "Sick day" : "Sygedag", + "Special occasion" : "Speciel lejlighed", + "Travel" : "Rejse", + "Vacation" : "Ferie", + "Custom Categories" : "Brugerdefinerede Kategorier", + "Collaborative Tags" : "Samarbejds Tags", + "Standard Categories" : "Standart Katagorier", "A Calendar app for Nextcloud" : "En kalender-app til 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." : "Kalender-appen er en brugergrænseflade til Nextclouds CalDAV-server. Synkroniser nemt begivenheder fra forskellige enheder med din Nextcloud og rediger dem online.\n\n* 🚀 **Integration med andre Nextcloud-apps!** Kontakter i øjeblikket - mere på vej.\n* 🌐 **WebCal Support!** Vil du se dit yndlingsholds kampdage i din kalender? Intet problem!\n* 🙋 **Deltagere!** Inviter folk til dine begivenheder\n* ⌚️ **Ledig/Optaget!** Se, hvornår dine deltagere er tilgængelige til at mødes\n* ⏰ **Påmindelser!** Få alarmer for begivenheder i din browser og via e-mail\n* 🔍 Søg! Find dine arrangementer med ro\n* ☑️ Opgaver! Se opgaver med forfaldsdato direkte i kalenderen\n* 🙈 **Vi genopfinder ikke hjulet!** Baseret på det fantastiske [c-dav-bibliotek](https://github.com/nextcloud/cdav-library), [ical.js](https://github. com/mozilla-comm/ical.js) og [fullcalendar](https://github.com/fullcalendar/fullcalendar) biblioteker.", "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" : "+ Ny begivenhed", + "Event" : "Begivenhed", + "Create new event" : "Opret ny begivenhed", "Today" : "I dag", "Day" : "Dag", "Week" : "Uge", "Month" : "Måned", - "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", - "Download" : "Hent", - "Unshare from me" : "Fjern deling fra mig", + "Year" : "År", + "List" : "Liste", + "Preview" : "Forhåndsvisning", + "Copy link" : "Kopiér link", + "Edit" : "Rediger", "Delete" : "Slet", + "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", + "Add new" : "Tilføj ny", + "Untitled calendar" : "Unanvngiven kalender", + "Shared with you by" : "Delt med dig af", + "Edit and share calendar" : "Rediger og del kalender", + "Edit calendar" : "Rediger kalender", + "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.", + "_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"], + "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", + "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://)", + "Copy subscription link" : "Kopier abonnementslink", + "Copying link …" : "Kopierer link…", + "Copied link" : "Link kopieret", + "Could not copy link" : "Link kunne ikke kopieres", + "Export" : "Eksportér", "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"], + "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", + "Empty trash bin" : "Tom papirkurv", + "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 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?", + "_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.", + "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", "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", + "Enter one address" : "Indtast én adresse", "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", "Copy embedding code" : "Kopier indlejringskode", "Copying code …" : "Kopierer kode…", "Copied code" : "Kode kopieret", @@ -54,90 +137,504 @@ "Delete share link" : "Slet delingslink", "Deleting share link …" : "Sletter delingslink…", "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", + "can edit" : "kan redigere", + "Unshare with {displayName}" : "Fjern deling med {displayName}", + "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.", "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", - "Creating calendar …" : "Opretter kalender…", - "New calendar with task list" : "Ny kalender med opgaveliste", - "Creating subscription …" : "Opretter abonnement…", + "Calendar name …" : "Kalender navn …", + "Share calendar" : "Del kalender", + "Unshare from me" : "Fjern deling fra mig", + "Save" : "Gem", + "Failed to save calendar name and color" : "Kunne ikke gemme kalendernavn og farve", "Import calendars" : "Importer kalendere", + "Please select a calendar to import into …" : "Vælg venligst en kalender, der skal importeres til...", "Filename" : "Filnavn", + "Calendar to import into" : "Kalender at importere til", "Cancel" : "Annullér", "_Import calendar_::_Import calendars_" : ["Importer kalender","Importer kalendere"], + "Default attachments location" : "Standardplacering for vedhæftede filer", + "Select the default location for attachments" : "Vælg standardplaceringen for vedhæftede filer", + "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.", + "{filename} could not be parsed" : "{filename} kunne ikke tilføjes", + "No valid files found, aborting import" : "Ingen gyldige filer fundet, importen afbrydes", + "Import partially failed. Imported {accepted} out of {total}." : "Importen mislykkedes delvist. Importeret {accepted} ud af {total}.", + "_Successfully imported %n event_::_Successfully imported %n events_" : ["%n begivenhed blev importeret","%n begivenheder blev importeret"], "Automatic" : "Automatisk", + "Automatic ({detected})" : "Automatisk ({detected})", + "New setting was not saved successfully." : "Den nye indstilling blev ikke gemt.", + "Shortcut overview" : "Genvejsoversigt", "or" : "eller", + "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", "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" : "Tidsstigninger", + "Default reminder" : "Standard påmindelse", "Copy primary CalDAV address" : "Kopier primær CalDAV-adresse", - "Settings & import" : "Indstillinger & importer", + "Copy iOS/macOS CalDAV address" : "Kopiér iOS/macOS CalDAV-adresse", + "Personal availability settings" : "Personlige tilgængelighedsindstillinger", + "Show keyboard shortcuts" : "Vis tastaturgenveje", + "Calendar settings" : "Kalender indstillinger", + "No reminder" : "Ingen påmindelse", + "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.", + "Appointment was created successfully" : "Aftalen blev oprettet", + "Appointment was updated successfully" : "Aftalen blev 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 name" : "Aftale navn", + "Location" : "Sted", + "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", + "Wednesday" : "Onsdag", + "Thursday" : "Torsdag", + "Friday" : "Fredag", + "Saturday" : "Lørdag", + "Sunday" : "Søndag", + "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", + "Create appointment" : "Opret aftale", + "Edit appointment" : "Rediger aftale", + "Update" : "Opdatér", + "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.", + "Book the appointment" : "Bestil tid", + "Reminder" : "Påmindelse", + "before at" : "før kl", "Notification" : "Notifikation", "Email" : "E-mail", + "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", + "on" : "på", + "at" : "ved", + "+ Add reminder" : "+ Tilføj påmindelse", + "Add reminder" : "Tilføj påmindelse", "_second_::_seconds_" : ["sekund","sekunder"], "_minute_::_minutes_" : ["minut","minutter"], "_hour_::_hours_" : ["time","timer"], "_day_::_days_" : ["dag","dage"], "_week_::_weeks_" : ["uge","uger"], + "No attachments" : "Ingen vedhæftede filer", + "Add from Files" : "Tilføj fra Filer", + "Upload from device" : "Upload fra enhed", + "Delete file" : "Slet fil", + "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!", + "_{count} attachment_::_{count} attachments_" : ["{count} vedhæftet fil","{count} vedhæftede filer"], + "Invitation accepted" : "Invitation accepteret", + "Available" : "Tilgængelig", + "Suggested" : "Foreslået", + "Participation marked as tentative" : "Deltagelse markeret som foreløbig", + "Accepted {organizerName}'s invitation" : "Accepterede invitationen fra {organizerName}", + "Not available" : "Ikke tilgængelig", + "Invitation declined" : "Invitation afvist", + "Declined {organizerName}'s invitation" : "Afviste {organizerName}s invitation", + "Invitation is delegated" : "Invitation er uddelegeret", + "Checking availability" : "Kontrol af tilgængelighed", + "Invitation sent" : "Invitation sendt", + "Has not responded to {organizerName}'s invitation yet" : "Har endnu ikke svaret på {organizerName}s invitation", + "Availability of attendees, resources and rooms" : "Tilgængelighed af deltagere, ressourcer og lokaler", + "{organizer} (organizer)" : "{organizer} (arrangør)", + "Free" : "Ledig", + "Busy (tentative)" : "Optaget (foreløbig)", "Busy" : "Optaget", + "Out of office" : "Ikke på kontoret", "Unknown" : "Ukendt", + "Accept" : "Accepter", + "Decline" : "Afvis", + "Tentative" : "Foreløbig", + "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.", "Create Talk room for this event" : "Opret Snak rum for denne begivenhed", - "Send e-mail" : "Send e-mail", + "Show busy times" : "Vis optaget tider", + "No attendees yet" : "Ingen deltagere endnu", + "Successfully appended link to talk room to location." : "Linket til talerum til placering er tilføjet til lokationen.", + "Successfully appended link to talk room to description." : "Link til samtalerum blev tilføjet til beskrivelsen.", + "Error creating Talk room" : "Fejl ved oprettelse af talerum", + "Send email" : "Send e-mail", + "Chairperson" : "Formand", + "Required participant" : "Nødvendig deltager", + "Optional participant" : "Valgfri deltager", + "Non-participant" : "Deltager ikke", + "Remove attendee" : "Fjern deltager", + "Search for emails, users or contacts" : "Søg efter e-mails, brugere eller kontakter", + "No match found" : "Ingen match fundet", + "(organizer)" : "(arrangør)", + "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", + "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 {startDate}" : "fra {startDate}", "from {startDate} at {startTime}" : "fra {startDate} kl {startTime}", "to {endDate}" : "til {endDate}", "to {endDate} at {endTime}" : "til {endDate} kl {endTime}", + "Repeat" : "Gentag", + "End repeat" : "Afslut gentagelse", + "Select to end repeat" : "Vælg for at afslutte gentagelsen", "never" : "aldrig", + "on date" : "på dato", "after" : "efter", + "_time_::_times_" : ["gang","gange"], + "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", - "Repeat" : "Gentag", + "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", "_month_::_months_" : ["måned","måneder"], "_year_::_years_" : ["år","år"], - "Monday" : "Mandag", "weekday" : "hverdag", "weekend day" : "weekenddag", - "Summary" : "Oversigt", + "No recurrence" : "Ingen gentagelse", + "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.", + "Suggestions" : "Forslag", + "No rooms or resources yet" : "Ingen lokaler eller ressourcer endnu", + "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", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} sæde","{seatingCapacity} sæder"], + "Projector" : "Projektor", + "Whiteboard" : "Whiteboard", + "Search for resources or rooms" : "Søg efter ressourcer eller lokaler", + "available" : "tilgængelig", + "unavailable" : "ikke tilgængelig", + "Room type" : "Værelses type", + "Any" : "Enhver", + "Minimum seating capacity" : "Minimum siddekapacitet", "More" : "Mere", - "Save" : "Gem", - "Update" : "Opdatér", - "Personal" : "Personlig", + "Update this occurrence" : "Opdater denne forekomst", + "Update this and all future" : "Opdater denne og alle fremtidige", + "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?", + "Please select a time zone:" : "Vælg venligst en tidszone:", + "Pick a time" : "Vælg et tidspunkt", + "Pick a date" : "Vælg en dato", + "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", + "Type to search time zone" : "Indtast for at søge i tidszone", + "Global" : "Global", + "Public holiday calendars" : "Helligdagskallendere", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Helligdagskalendere leveres af Thunderbird. Kalenderdata vil blive downloadet fra {website}", + "By {authors}" : "Af {authors}", + "Subscribed" : "Abonneret", + "Subscribe" : "Tilmeld", + "Holidays in {region}" : "Ferie i {region}", + "An error occurred, unable to create the public holiday calendar." : "Der opstod en fejl, helligdagskalenderen kunne ikke oprettes.", + "Select date" : "Vælg 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}", + "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.", + "Create a new event" : "Opret en ny begivenhed", + "[Today]" : "[i dag]", + "[Tomorrow]" : "[I morgen]", + "[Yesterday]" : "[Yesterday]", + "[Last] dddd" : "[Last] dddd", + "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", "Details" : "Detaljer", + "Managing shared access" : "Håndtering af delt adgang", + "Deny access" : "Nægt adgang", + "Invite" : "Invitere", "Attendees" : "Deltagere", - "Reminders" : "Påmindelser", + "Resources" : "Resourcer", + "_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"], "Close" : "Luk", - "Anniversary" : "Årsdag", + "Show more details" : "Vis flere detaljer", + "Subscribe to {name}" : "Abonner på {name}", + "Export {name}" : "Eksportér {name}", + "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}", + "Does not repeat" : "Gentager sig ikke", "Daily" : "Dagligt", "Weekly" : "Ugentligt", + "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}" : "i {monthNames}", + "in {monthNames} on the {ordinalNumber} {byDaySet}" : "i {monthNames} på {ordinalNumber} {byDaySet}", + "until {untilDate}" : "indtil {untilDate}", + "_%n time_::_%n times_" : ["%n gang","%n gange"], "Untitled event" : "Unavngiven begivenhed", - "next year" : "næste år", - "today" : "i dag", + "Untitled task" : "Unavngivet opgave", + "Please ask your administrator to enable the Tasks App." : "Bed din administrator om at aktivere Opgaver-appen.", + "W" : "U", + "%n more" : "%n yderligere", + "No events to display" : "Ingen begivenheder", + "_+%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", + "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", - "Location" : "Sted", - "Description" : "Beskrivelse", + "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" : "Tilføj en beskrivelse", "Status" : "Status", "Confirmed" : "Bekræftet", - "Tentative" : "Foreløbig", + "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", + "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 brugerdefinerede farver", + "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", + "Chat room for event" : "Chatrum til 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.", + "Meditation" : "Meditation", + "Relaxing" : "Slapper af", + "Relax" : "Slap af", + "Break" : "Pause", + "Commute" : "Pendler", + "Commuting" : "Pendler", + "Shuttle" : "Shuttle", + "Invoice" : "Faktura", + "Finance" : "Økonomi", + "Bank" : "Bank", + "Money" : "Penge", + "Wedding" : "Bryllup", + "Dog" : "Hund", + "Concert" : "Koncert", + "Festival" : "Festival", + "Theater" : "Teater", + "Theatre" : "Teater", "Presentation" : "Præsentation", + "Talk" : "Snak", + "Speech" : "Tale", + "Deadline" : "Deadline", + "Submission" : "Indsendelse", + "Reporting" : "Indberetning", + "Camping" : "Camping", + "Camp" : "Lejr", + "Election" : "Valg", + "Voting" : "Afstemning", + "Vote" : "Stemme", + "Barbecue" : "Grill", + "Barbeque" : "Grill", + "Garden" : "Have", + "Farm" : "Gård", "Movie" : "Film", + "Cinema" : "Biograf", + "Graduation" : "Graduering", + "Brainstorm" : "Brainstorm", "Review" : "Gennemse", + "Audit" : "Audit", + "Inspection" : "Inspektion", + "Proofreading" : "Korrekturlæsning", + "Baseball" : "Baseball", + "Meet" : "Møde", + "Planning" : "Planlægning", + "Pointing" : "Peger", + "Retrospective" : "Tilbagevirkende kraft", "Office" : "Kontor", + "Contributor week" : "Bidragsyder uge", "Mail" : "Mail", - "Play" : "Afspil", - "Global" : "Global" + "Soccer" : "Fodbold", + "Football" : "Fodbold", + "Gaming" : "Gaming", + "Drive" : "Køre", + "Driving" : "Kørsel", + "Bicycle" : "Cykel", + "Cycle" : "Cyklus", + "Cycling" : "Cykling", + "Biking" : "Cykling", + "Bike" : "Cykel", + "Podcast" : "Podcast", + "Basketball" : "Basketball", + "Fishing" : "Fiskeri", + "Hiking" : "Vandring", + "Hike" : "Vandring", + "Art" : "Kunst", + "Exhibition" : "Udstilling", + "Museum" : "Museum", + "Pilates" : "Pilates", + "Park" : "Park", + "Walk" : "Gåtur", + "Studying" : "Studere", + "Doctor" : "Læge", + "Health" : "Sundhed", + "Dentist" : "Tandlæge", + "Hospital" : "Hospital", + "Interview" : "Interview", + "Training" : "Træning", + "Practice" : "Øve", + "Sports" : "Sport", + "Exercise" : "Træning", + "Work out" : "Work out", + "Working out" : "Træner", + "Gym" : "Træningscenter", + "Barber" : "Barbér", + "Haircut" : "Klipning", + "Hairdresser" : "Frisør", + "Exam" : "Eksamen", + "Written test" : "Skriftlig prøve", + "Oral test" : "Mundtlig prøve", + "Working" : "Arbejder", + "New Years Eve" : "Nytårs aften", + "NYE" : "NYE", + "Fireworks" : "Fyrværkeri", + "Running" : "Løber", + "Go for a run" : "Tager ud og løber", + "Marathon" : "Marathon", + "Video-conference" : "Video konference", + "Conference-call" : "Konferenceopkald", + "Video-call" : "Videoopkald", + "Video-chat" : "Videochat", + "Video-meeting" : "Video-møde", + "Call" : "Kald", + "Calling" : "Kalder", + "Christmas" : "Jul", + "Conference" : "Konference", + "Pizza" : "Pizza", + "Travelling" : "Rejsende", + "Trip" : "Rejse", + "Journey" : "Rejse", + "Collaborate" : "Samarbejde", + "Pair" : "Par", + "Lecture" : "Foredrag", + "Seminar" : "Seminar", + "Teaching" : "Undervisning", + "Photograph" : "Fotografi", + "Party" : "Fest", + "Celebration" : "Fejring", + "Celebrate" : "Fejre", + "Birthday" : "Fødselsdag", + "Shopping" : "Shopping", + "Groceries" : "Dagligvarer", + "Skate" : "Skøjte", + "Skateboard" : "Skateboard", + "Wine tasting" : "Vinsmagning", + "Golf" : "Golf", + "Dinner" : "Middag", + "Lunch" : "Frokost", + "Appointment not found" : "Aftale ikke fundet", + "User not found" : "Bruger ikke fundet" },"pluralForm" :"nplurals=2; plural=(n != 1);" } \ No newline at end of file diff --git a/l10n/de.js b/l10n/de.js index f67717e199..edaeb7644e 100644 --- a/l10n/de.js +++ b/l10n/de.js @@ -1,59 +1,137 @@ 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 " : "E-Mail erfolgreich versandt an", + "Successfully sent email to %1$s" : "E-Mail erfolgreich 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", + "More events" : "Weitere Termine", + "No more events today" : "Heute keine weiteren Termine", + "No upcoming events" : "Keine anstehenden 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" : "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", + "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 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:", + "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.", + "Anniversary" : "Jahrestag", + "Appointment" : "Verabredung", + "Business" : "Geschäftlich", + "Education" : "Bildung", + "Holiday" : "Feiertag", + "Meeting" : "Treffen", + "Miscellaneous" : "Verschiedenes", + "Non-working hours" : "Arbeitsfreie Stunden", + "Not in office" : "Nicht im Büro", + "Personal" : "Persönlich", + "Phone call" : "Anruf", + "Sick day" : "Krankheitstag", + "Special occasion" : "Besondere Gelegenheit", + "Travel" : "Reise", + "Vacation" : "Urlaub", + "Custom Categories" : "Benutzerdefinerte Kategorien", + "Collaborative Tags" : "Kollaborative Schlagworte", + "Standard Categories" : "Standardkategorien", "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.", + "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.", "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", + "Event" : "Ereignis", + "Create new event" : "Neuen Termin erstellen", "Today" : "Heute", "Day" : "Tag", "Week" : "Woche", "Month" : "Monat", + "Year" : "Jahr", "List" : "Liste", - "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", - "Download" : "Herunterladen", - "Unshare from me" : "Nicht mehr mit mir teilen", + "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", + "Shared with you by" : "Geteilt mit dir von", + "Edit and share calendar" : "Kalender bearbeiten und teilen", + "Edit calendar" : "Kalender bearbeiten", + "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.", "_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"], + "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", + "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://)", + "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", + "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.", + "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", + "Empty trash bin" : "Papierkorb leeren", + "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 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?", + "_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.", + "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", "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" : "Abonnements-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", @@ -62,35 +140,35 @@ OC.L10N.register( "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 Zwischenblage kopiert.", - "Embed code could not be copied to clipboard." : "Einbettungscode konnte nicht in die Zwischenblage kopiert 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 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.", - "+ New calendar" : "+ Neuer Kalender", - "New calendar" : "Neuer 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://)", - "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", + "Calendar name …" : "Kalender-Name …", + "Share calendar" : "Kalender teilen", + "Unshare from me" : "Nicht mehr mit mir teilen", + "Save" : "Speichern", + "Failed to save calendar name and color" : "Kalendername oder -farbe konnte nicht gespeichert werden.", "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.", "Cancel" : "Abbrechen", "_Import calendar_::_Import calendars_" : ["Kalender importieren","Kalender importieren"], - "{filename} is an unsupported file-type" : "{filename} ist ein ungültiger Dateityp", + "Default attachments location" : "Standard-Speicherort für Anhänge", + "Select the default location for attachments" : "Standard-Speicherort für Anhänge 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", "{filename} could not be parsed" : "{filename} konnte nicht analysiert werden", "No valid files found, aborting import" : "Keine gültige Dateien gefunden, Import wird abgebrochen.", "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."], + "_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.", @@ -103,24 +181,86 @@ 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", + "Editor" : "Editor", + "Close editor" : "Bearbeitung schließen", + "Save edited event" : "Bearbeitetes Ereignis speichern", + "Delete edited event" : "Bearbeitetes Ereignis löschen", + "Duplicate event" : "Termin duplizieren", "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" : "Begrenzung der Anzahl der in der Monatsansicht angezeigten Termine", "Show weekends" : "Wochenenden anzeigen", "Show week numbers" : "Kalenderwochen anzeigen", + "Time increments" : "Zeitschritte", + "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", - "Settings & import" : "Einstellungen & Import", + "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", + "_{duration} minute_::_{duration} minutes_" : ["{duration} Minute","{duration} Minuten"], + "0 minutes" : "0 Minuten", + "_{duration} hour_::_{duration} hours_" : ["{duration} Stunde","{duration} Stunden"], + "_{duration} day_::_{duration} days_" : ["{duration} Tag","{duration} Tage"], + "_{duration} week_::_{duration} weeks_" : ["{duration} Woche","{duration} Wochen"], + "_{duration} month_::_{duration} months_" : ["{duration} Monat","{duration} Monate"], + "_{duration} year_::_{duration} years_" : ["{duration} Jahr","{duration} Jahre"], + "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 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", + "Increments" : "Schritte", + "Additional calendars to check for conflicts" : "Zusätzliche Kalender zur Überprüfung auf Konflikte", + "Pick time ranges where appointments are allowed" : "Wähle Zeitbereiche, in denen Termine erlaubt sind", + "to" : "bis", + "Delete slot" : "Zeitfenster löschen", + "No times set" : "Keine Zeiten gesetzt", + "Add" : "Hinzufügen", + "Monday" : "Montag", + "Tuesday" : "Dienstag", + "Wednesday" : "Mittwoch", + "Thursday" : "Donnerstag", + "Friday" : "Freitag", + "Saturday" : "Samstag", + "Sunday" : "Sonntag", + "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", + "Planning restrictions" : "Planungsbeschränkungen", + "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", + "Update" : "Aktualisieren", + "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", "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", @@ -131,81 +271,118 @@ OC.L10N.register( "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"], - "No reminders yet" : "Keine Erinnerungen bislang", + "No attachments" : "Keine Anhänge", + "Add from Files" : "Anhang hinzufügen", + "Upload from device" : "Von Gerät hochladen", + "Delete file" : "Datei löschen", + "Choose a file to add as attachment" : "Wähle eine Datei, 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", + "_{count} attachment_::_{count} attachments_" : ["{count} Anhang","{count} Anhänge"], + "Invitation accepted" : "Einladung angenommen", + "Available" : "Verfügbar", + "Suggested" : "Vorgeschlagen", + "Participation marked as tentative" : "Teilnahme als vorläufig markiert", + "Accepted {organizerName}'s invitation" : "Einladung von {organizerName} angenommen", + "Not available" : "Nicht verfügbar", + "Invitation declined" : "Einladung abgelehnt", + "Declined {organizerName}'s invitation" : "Einladung von {organizerName} abgelehnt", + "Invitation is delegated" : "Einladung ist weitergeleitet", + "Checking availability" : "Verfügbarkeit prüfen", + "Invitation sent" : "Einladung verschickt", + "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", + "{organizer} (organizer)" : "{organizer} (Organisator)", + "Free" : "Frei", "Busy (tentative)" : "Beschäftigt (vorläufig)", "Busy" : "Beschäftigt", "Out of office" : "Nicht im Büro", "Unknown" : "Unbekannt", - "{name} accepted your invitation." : "{name} hat Deine Einladung akzeptiert.", - "{name} accepted {organizerName}'s invitation." : "{name} hat die Einladung von {organizerName} akzeptiert.", - "{name} declined your invitation." : "{name} hat Deine Einladung abgelehnt.", - "{name} declined {organizerName}'s invitation." : "{name} hat die Einladung von {organizerName} abgelehnt.", - "{name} has delegated their invitation." : "{name} hat seine Einladung delegiert.", - "{name} marked their participation as tentative." : "{name} hat die Teilnahme vorläufig zugesagt.", - "{name} did not respond to your invitation yet." : "{name} hat bislang nicht auf Deine Einladung reagiert.", - "{name} did not respond to {organizerName}'s invitation yet." : "{name} hat bislang nicht auf {organizerName}s Einladung reagiert.", + "Accept" : "Annehmen", + "Decline" : "Ablehnen", + "Tentative" : "Vorläufig", + "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.", + "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", + "No attendees yet" : "Keine Teilnehmer bislang", + "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 e-mail" : "E-Mail senden", + "Send email" : "E-Mail senden", "Chairperson" : "Vorsitz", "Required participant" : "Benötigter Teilnehmer", "Optional participant" : "Optionaler Teilnehmer", "Non-participant" : "Nicht-Teilnehmer", "Remove attendee" : "Teilnehmer entfernen", - "Search for e-mails, users, contacts, resources or rooms" : "Suche nach E-Mails, Benutzern, Adressen, Resourcen oder Räumen", + "Search for emails, users or contacts" : "Suche nach E-Mails, Benutzern oder Kontakten", "No match found" : "Keine Übereinstimmung gefunden", - "No attendees yet" : "Keine Teilnehmer bislang", "(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].", + "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", - "Can not modify all-day setting for events that are part of a recurrence-set." : "Die ganztägige Einstellung kann nicht für Termine geändert werden, die Teil einer Menge von Wiederholungen sind.", + "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}", + "Repeat" : "Wiederholen", "End repeat" : "Wiederholung beenden", "Select to end repeat" : "Auswählen um Wiederholung beenden", "never" : "Niemals", "on date" : "am Datum", "after" : "Nach", "_time_::_times_" : ["Mal","Mal"], - "This event is the recurrence-exception of a recurrence-set. You can not add a recurrence-rule to it." : "Dieser Termin ist die Wiederholungs-Ausnahme einer Wiederholungs-Menge. Du kannst ihm keine Wiederholungsregel hinzufügen.", + "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 Vorkommen angewendet.", - "Repeat" : "Wiederholen", + "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", "_month_::_months_" : ["Monat","Monate"], "_year_::_years_" : ["Jahr","Jahre"], - "Monday" : "Montag", "weekday" : "Wochentag", "weekend day" : "Wochenendtag", - "Summary" : "Zusammenfassung", - "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 von diesem Termin wird nicht vollständig von Nextcloud unterstützt. Wenn Du die Wiederholungs-Optionen bearbeitest, könnten bestimmte Wiederholungen verlorengehen.", + "No recurrence" : "Keine Wiederholung", + "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", + "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", + "Room type" : "Raum-Typ", + "Any" : "Irgendein", + "Minimum seating capacity" : "Mindestsitzplatzkapazität", "More" : "Mehr", - "Save" : "Speichern", - "Update" : "Aktualisieren", - "Update this occurrence" : "Dieses Vorkommen aktualisieren", + "Update this occurrence" : "Diese Wiederholung aktualisieren", "Update this and all future" : "Aktualisiere dieses und alle Künftigen", "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 timezone:" : "Bitte eine Zeitzone wählen:", + "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}", @@ -217,41 +394,52 @@ 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", - "Type to search timezone" : "Zum Suchen der Zeitzone tippen", - "Personal" : "Persönlich", - "The automatic timezone detection determined your timezone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your timezone 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 timezone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your timezone 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 melden.", - "No more events today" : "Heute keine weiteren Termine", - "No upcoming events" : "Keine anstehenden Termine", + "Type to search time zone" : "Zum Suchen der Zeitzone tippen", + "Global" : "Weltweit", + "Public holiday calendars" : "Feiertagskalender", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Feiertagskalender werden von Thunderbird bereitgestellt. Kalenderdaten werden von {website} heruntergeladen.", + "By {authors}" : "Von {authors}", + "Subscribed" : "Abonniert", + "Subscribe" : "Abonnieren", + "Holidays in {region}" : "Feiertage in {region}", + "An error occurred, unable to create the public holiday calendar." : "Es ist ein Fehler aufgetreten, der Feiertagskalender konnte nicht erstellt werden.", + "Select 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", + "Appointment Details:" : "Termindetails:", + "Time:" : "Zeit:", + "Booked for:" : "Gebucht für:", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "Danke schön. Deine Buchung vom {startDate} bis {endDate} wurde bestätigt.", + "Book another appointment:" : "Einen weiteren Termin buchen:", + "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}", + "No public appointments found for {name}" : "Keine öffentlichen Termine für {name} gefunden", + "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.", "Create a new event" : "Neuen Termin erstellen", "[Today]" : "[Heute]", "[Tomorrow]" : "[Morgen]", "[Yesterday]" : "[Gestern]", "[Last] dddd" : "[Letzten] dddd", "Event does not exist" : "Der Termin existiert nicht", - "Delete this occurrence" : "Dieses Vorkommen löschen", + "Duplicate" : "Duplizieren", + "Delete this occurrence" : "Diese Wiederholung löschen", "Delete this and all future" : "Dieses und alle Künftigen löschen", "Details" : "Details", + "Managing shared access" : "Geteilten Zugriff verwalten", + "Deny access" : "Zugriff verweigern", + "Invite" : "Einladen", "Attendees" : "Teilnehmer", - "Reminders" : "Erinnerungen", + "Resources" : "Ressourcen", + "_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"], "Close" : "Schließen", "Show more details" : "Weitere Einzelheiten anzeigen", "Subscribe to {name}" : "{name} abonnieren", - "Download {name}" : "{name} herunterladen", - "Anniversary" : "Jahrestag", - "Appointment" : "Verabredung", - "Business" : "Geschäftlich", - "Education" : "Bildung", - "Holiday" : "Feiertag", - "Meeting" : "Treffen", - "Miscellaneous" : "Verschiedenes", - "Non-working hours" : "Arbeitsfreie Stunden", - "Not in office" : "Nicht im Büro", - "Phone call" : "Anruf", - "Sick day" : "Krankheitstag", - "Special occasion" : "Besondere Gelegenheit", - "Travel" : "Reise", - "Vacation" : "Urlaub", + "Export {name}" : "Exportiere {name}", "Midnight on the day the event starts" : "Mitternacht am Tag des Starts des Termins", "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n Tag vor dem Start des Termins um {formattedHourMinute}","%n Tage vor dem Start des Termins um {formattedHourMinute}"], "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n Woche vor dem Start des Termins um {formattedHourMinute}","%n Wochen vor dem Start des Termins um {formattedHourMinute}"], @@ -283,15 +471,8 @@ OC.L10N.register( "_%n time_::_%n times_" : ["%n mal","%n mal"], "Untitled event" : "Unbenannter Termin", "Untitled task" : "Unbenannte Aufgabe", - "Please ask your administrator to enable the Tasks App." : "Bitte Deine Administrator die Aufgaben-App (Tasks) zu aktivieren.", - "prev" : "Voriges", - "next" : "Nächstes", - "prev year" : "Voriges Jahr", - "next year" : "Nächstes Jahr", - "today" : "Heute", - "list" : "Liste", + "Please ask your administrator to enable the Tasks App." : "Bitte deinen Administrator die Aufgaben-App (Tasks) zu aktivieren.", "W" : "W", - "all-day" : "Ganztägig", "%n more" : "%n weitere", "No events to display" : "Keine Ereignisse zum Anzeigen", "_+%n more_::_+%n more_" : ["+%n weitere","+%n weitere"], @@ -299,62 +480,95 @@ OC.L10N.register( "Create a new event or change the visible time-range" : "Neuen Termin erstellen oder den sichtbaren Zeitbereich ändern", "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", + "Lecture hall" : "Hörsaal", + "Seminar room" : "Seminarraum", + "Other" : "Sonstiges", "When shared show" : "Wenn geteilt, zeige", "When shared show full event" : "Wenn geteilt, zeige den vollständigen Termin an", - "When shared show only busy" : "Wenn geteilt, zeige nur den Status 'beschäftigt' an", + "When shared show only busy" : "Wenn geteilt, zeige nur den Status \"beschäftigt\" an", "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.", - "Location" : "Ort", "Add a location" : "Ort hinzufügen", - "Description" : "Beschreibung", "Add a description" : "Beschreibung hinzufügen", "Status" : "Status", "Confirmed" : "Bestätigt", - "Tentative" : "Vorläufig", "Canceled" : "Abgesagt", "Confirmation about the overall status of the event." : "Bestätigung über den Gesamtstatus des Termins.", "Show as" : "Anzeigen als", "Take this event into account when calculating free-busy information." : "Diesen Termin bei der Berechnung der Frei- / Gebucht-Informationen berücksichtigen.", - "Free" : "Frei", "Categories" : "Kategorien", - "Categories help you to structure and organize your events." : "Mithilfe von Kategorien kannst Du Deine Termine strukturieren und organisieren.", + "Categories help you to structure and organize your events." : "Mithilfe von Kategorien kannst du deine Termine strukturieren und organisieren.", "Search or add categories" : "Suche oder füge Kategorien hinzu", "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 dieses Termins. Überschreibt die Kalenderfarbe.", + "Special color of this event. Overrides the calendar-color." : "Sonderfarbe für diesen Termin. Überschreibt die Kalenderfarbe.", + "Error while sharing file" : "Fehler beim Teilen der Datei", + "Error while sharing file with user" : "Fehler beim Teilen der Datei mit Benutzer", + "Attachment {fileName} already exists!" : "Anhang {fileName} existiert bereits", + "An error occurred during getting file information" : "Es ist ein Fehler beim Abrufen von Dateiinformationen aufgetreten.", "Chat room for event" : "Chat-Raum für Termin", - "Imported {filename}" : "Importiert {filename}", + "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.", "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", - "Present" : "Geschenk", + "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", - "Review" : "Überprüfen", "Office" : "Büro", "Contributor week" : "Woche der Mitwirkenden", - "Party" : "Party", - "Celebration" : "Feier", "Mail" : "E-Mail", "Soccer" : "Fußball", "Football" : "Football", "Gaming" : "Gaming", - "Play" : "Spielen", - "Game" : "Spiel", "Drive" : "Fahren", + "Driving" : "Autofahren", "Bicycle" : "Fahrrad", "Cycle" : "Radfahren", + "Cycling" : "Radfahren", "Biking" : "Fahrradfahren", + "Bike" : "Fahrrad", "Podcast" : "Podcast", "Basketball" : "Basketball", "Fishing" : "Angeln", @@ -365,10 +579,12 @@ OC.L10N.register( "Museum" : "Museum", "Pilates" : "Pilates", "Park" : "Park", + "Walk" : "Gehen", "Studying" : "Studieren", "Doctor" : "Arzt", "Health" : "Gesundheit", "Dentist" : "Zahnarzt", + "Hospital" : "Krankenhaus", "Interview" : "Interview", "Training" : "Training", "Practice" : "Übung", @@ -379,7 +595,10 @@ OC.L10N.register( "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", @@ -397,21 +616,28 @@ OC.L10N.register( "Christmas" : "Weihnachten", "Conference" : "Konferenz", "Pizza" : "Pizza", - "Travelling" : "Reise", + "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", - "Global" : "Weltweit" + "Appointment not found" : "Termin nicht gefunden", + "User not found" : "Benutzer nicht gefunden" }, "nplurals=2; plural=(n != 1);"); diff --git a/l10n/de.json b/l10n/de.json index c28c7b5d2f..61711e40d5 100644 --- a/l10n/de.json +++ b/l10n/de.json @@ -1,57 +1,135 @@ { "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 " : "E-Mail erfolgreich versandt an", + "Successfully sent email to %1$s" : "E-Mail erfolgreich 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", + "More events" : "Weitere Termine", + "No more events today" : "Heute keine weiteren Termine", + "No upcoming events" : "Keine anstehenden 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" : "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", + "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 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:", + "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.", + "Anniversary" : "Jahrestag", + "Appointment" : "Verabredung", + "Business" : "Geschäftlich", + "Education" : "Bildung", + "Holiday" : "Feiertag", + "Meeting" : "Treffen", + "Miscellaneous" : "Verschiedenes", + "Non-working hours" : "Arbeitsfreie Stunden", + "Not in office" : "Nicht im Büro", + "Personal" : "Persönlich", + "Phone call" : "Anruf", + "Sick day" : "Krankheitstag", + "Special occasion" : "Besondere Gelegenheit", + "Travel" : "Reise", + "Vacation" : "Urlaub", + "Custom Categories" : "Benutzerdefinerte Kategorien", + "Collaborative Tags" : "Kollaborative Schlagworte", + "Standard Categories" : "Standardkategorien", "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.", + "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.", "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", + "Event" : "Ereignis", + "Create new event" : "Neuen Termin erstellen", "Today" : "Heute", "Day" : "Tag", "Week" : "Woche", "Month" : "Monat", + "Year" : "Jahr", "List" : "Liste", - "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", - "Download" : "Herunterladen", - "Unshare from me" : "Nicht mehr mit mir teilen", + "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", + "Shared with you by" : "Geteilt mit dir von", + "Edit and share calendar" : "Kalender bearbeiten und teilen", + "Edit calendar" : "Kalender bearbeiten", + "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.", "_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"], + "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", + "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://)", + "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", + "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.", + "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", + "Empty trash bin" : "Papierkorb leeren", + "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 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?", + "_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.", + "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", "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" : "Abonnements-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", @@ -60,35 +138,35 @@ "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 Zwischenblage kopiert.", - "Embed code could not be copied to clipboard." : "Einbettungscode konnte nicht in die Zwischenblage kopiert 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 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.", - "+ New calendar" : "+ Neuer Kalender", - "New calendar" : "Neuer 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://)", - "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", + "Calendar name …" : "Kalender-Name …", + "Share calendar" : "Kalender teilen", + "Unshare from me" : "Nicht mehr mit mir teilen", + "Save" : "Speichern", + "Failed to save calendar name and color" : "Kalendername oder -farbe konnte nicht gespeichert werden.", "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.", "Cancel" : "Abbrechen", "_Import calendar_::_Import calendars_" : ["Kalender importieren","Kalender importieren"], - "{filename} is an unsupported file-type" : "{filename} ist ein ungültiger Dateityp", + "Default attachments location" : "Standard-Speicherort für Anhänge", + "Select the default location for attachments" : "Standard-Speicherort für Anhänge 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", "{filename} could not be parsed" : "{filename} konnte nicht analysiert werden", "No valid files found, aborting import" : "Keine gültige Dateien gefunden, Import wird abgebrochen.", "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."], + "_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.", @@ -101,24 +179,86 @@ "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", + "Editor" : "Editor", + "Close editor" : "Bearbeitung schließen", + "Save edited event" : "Bearbeitetes Ereignis speichern", + "Delete edited event" : "Bearbeitetes Ereignis löschen", + "Duplicate event" : "Termin duplizieren", "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" : "Begrenzung der Anzahl der in der Monatsansicht angezeigten Termine", "Show weekends" : "Wochenenden anzeigen", "Show week numbers" : "Kalenderwochen anzeigen", + "Time increments" : "Zeitschritte", + "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", - "Settings & import" : "Einstellungen & Import", + "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", + "_{duration} minute_::_{duration} minutes_" : ["{duration} Minute","{duration} Minuten"], + "0 minutes" : "0 Minuten", + "_{duration} hour_::_{duration} hours_" : ["{duration} Stunde","{duration} Stunden"], + "_{duration} day_::_{duration} days_" : ["{duration} Tag","{duration} Tage"], + "_{duration} week_::_{duration} weeks_" : ["{duration} Woche","{duration} Wochen"], + "_{duration} month_::_{duration} months_" : ["{duration} Monat","{duration} Monate"], + "_{duration} year_::_{duration} years_" : ["{duration} Jahr","{duration} Jahre"], + "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 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", + "Increments" : "Schritte", + "Additional calendars to check for conflicts" : "Zusätzliche Kalender zur Überprüfung auf Konflikte", + "Pick time ranges where appointments are allowed" : "Wähle Zeitbereiche, in denen Termine erlaubt sind", + "to" : "bis", + "Delete slot" : "Zeitfenster löschen", + "No times set" : "Keine Zeiten gesetzt", + "Add" : "Hinzufügen", + "Monday" : "Montag", + "Tuesday" : "Dienstag", + "Wednesday" : "Mittwoch", + "Thursday" : "Donnerstag", + "Friday" : "Freitag", + "Saturday" : "Samstag", + "Sunday" : "Sonntag", + "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", + "Planning restrictions" : "Planungsbeschränkungen", + "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", + "Update" : "Aktualisieren", + "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", "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", @@ -129,81 +269,118 @@ "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"], - "No reminders yet" : "Keine Erinnerungen bislang", + "No attachments" : "Keine Anhänge", + "Add from Files" : "Anhang hinzufügen", + "Upload from device" : "Von Gerät hochladen", + "Delete file" : "Datei löschen", + "Choose a file to add as attachment" : "Wähle eine Datei, 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", + "_{count} attachment_::_{count} attachments_" : ["{count} Anhang","{count} Anhänge"], + "Invitation accepted" : "Einladung angenommen", + "Available" : "Verfügbar", + "Suggested" : "Vorgeschlagen", + "Participation marked as tentative" : "Teilnahme als vorläufig markiert", + "Accepted {organizerName}'s invitation" : "Einladung von {organizerName} angenommen", + "Not available" : "Nicht verfügbar", + "Invitation declined" : "Einladung abgelehnt", + "Declined {organizerName}'s invitation" : "Einladung von {organizerName} abgelehnt", + "Invitation is delegated" : "Einladung ist weitergeleitet", + "Checking availability" : "Verfügbarkeit prüfen", + "Invitation sent" : "Einladung verschickt", + "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", + "{organizer} (organizer)" : "{organizer} (Organisator)", + "Free" : "Frei", "Busy (tentative)" : "Beschäftigt (vorläufig)", "Busy" : "Beschäftigt", "Out of office" : "Nicht im Büro", "Unknown" : "Unbekannt", - "{name} accepted your invitation." : "{name} hat Deine Einladung akzeptiert.", - "{name} accepted {organizerName}'s invitation." : "{name} hat die Einladung von {organizerName} akzeptiert.", - "{name} declined your invitation." : "{name} hat Deine Einladung abgelehnt.", - "{name} declined {organizerName}'s invitation." : "{name} hat die Einladung von {organizerName} abgelehnt.", - "{name} has delegated their invitation." : "{name} hat seine Einladung delegiert.", - "{name} marked their participation as tentative." : "{name} hat die Teilnahme vorläufig zugesagt.", - "{name} did not respond to your invitation yet." : "{name} hat bislang nicht auf Deine Einladung reagiert.", - "{name} did not respond to {organizerName}'s invitation yet." : "{name} hat bislang nicht auf {organizerName}s Einladung reagiert.", + "Accept" : "Annehmen", + "Decline" : "Ablehnen", + "Tentative" : "Vorläufig", + "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.", + "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", + "No attendees yet" : "Keine Teilnehmer bislang", + "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 e-mail" : "E-Mail senden", + "Send email" : "E-Mail senden", "Chairperson" : "Vorsitz", "Required participant" : "Benötigter Teilnehmer", "Optional participant" : "Optionaler Teilnehmer", "Non-participant" : "Nicht-Teilnehmer", "Remove attendee" : "Teilnehmer entfernen", - "Search for e-mails, users, contacts, resources or rooms" : "Suche nach E-Mails, Benutzern, Adressen, Resourcen oder Räumen", + "Search for emails, users or contacts" : "Suche nach E-Mails, Benutzern oder Kontakten", "No match found" : "Keine Übereinstimmung gefunden", - "No attendees yet" : "Keine Teilnehmer bislang", "(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].", + "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", - "Can not modify all-day setting for events that are part of a recurrence-set." : "Die ganztägige Einstellung kann nicht für Termine geändert werden, die Teil einer Menge von Wiederholungen sind.", + "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}", + "Repeat" : "Wiederholen", "End repeat" : "Wiederholung beenden", "Select to end repeat" : "Auswählen um Wiederholung beenden", "never" : "Niemals", "on date" : "am Datum", "after" : "Nach", "_time_::_times_" : ["Mal","Mal"], - "This event is the recurrence-exception of a recurrence-set. You can not add a recurrence-rule to it." : "Dieser Termin ist die Wiederholungs-Ausnahme einer Wiederholungs-Menge. Du kannst ihm keine Wiederholungsregel hinzufügen.", + "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 Vorkommen angewendet.", - "Repeat" : "Wiederholen", + "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", "_month_::_months_" : ["Monat","Monate"], "_year_::_years_" : ["Jahr","Jahre"], - "Monday" : "Montag", "weekday" : "Wochentag", "weekend day" : "Wochenendtag", - "Summary" : "Zusammenfassung", - "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 von diesem Termin wird nicht vollständig von Nextcloud unterstützt. Wenn Du die Wiederholungs-Optionen bearbeitest, könnten bestimmte Wiederholungen verlorengehen.", + "No recurrence" : "Keine Wiederholung", + "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", + "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", + "Room type" : "Raum-Typ", + "Any" : "Irgendein", + "Minimum seating capacity" : "Mindestsitzplatzkapazität", "More" : "Mehr", - "Save" : "Speichern", - "Update" : "Aktualisieren", - "Update this occurrence" : "Dieses Vorkommen aktualisieren", + "Update this occurrence" : "Diese Wiederholung aktualisieren", "Update this and all future" : "Aktualisiere dieses und alle Künftigen", "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 timezone:" : "Bitte eine Zeitzone wählen:", + "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}", @@ -215,41 +392,52 @@ "{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", - "Type to search timezone" : "Zum Suchen der Zeitzone tippen", - "Personal" : "Persönlich", - "The automatic timezone detection determined your timezone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your timezone 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 timezone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your timezone 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 melden.", - "No more events today" : "Heute keine weiteren Termine", - "No upcoming events" : "Keine anstehenden Termine", + "Type to search time zone" : "Zum Suchen der Zeitzone tippen", + "Global" : "Weltweit", + "Public holiday calendars" : "Feiertagskalender", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Feiertagskalender werden von Thunderbird bereitgestellt. Kalenderdaten werden von {website} heruntergeladen.", + "By {authors}" : "Von {authors}", + "Subscribed" : "Abonniert", + "Subscribe" : "Abonnieren", + "Holidays in {region}" : "Feiertage in {region}", + "An error occurred, unable to create the public holiday calendar." : "Es ist ein Fehler aufgetreten, der Feiertagskalender konnte nicht erstellt werden.", + "Select 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", + "Appointment Details:" : "Termindetails:", + "Time:" : "Zeit:", + "Booked for:" : "Gebucht für:", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "Danke schön. Deine Buchung vom {startDate} bis {endDate} wurde bestätigt.", + "Book another appointment:" : "Einen weiteren Termin buchen:", + "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}", + "No public appointments found for {name}" : "Keine öffentlichen Termine für {name} gefunden", + "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.", "Create a new event" : "Neuen Termin erstellen", "[Today]" : "[Heute]", "[Tomorrow]" : "[Morgen]", "[Yesterday]" : "[Gestern]", "[Last] dddd" : "[Letzten] dddd", "Event does not exist" : "Der Termin existiert nicht", - "Delete this occurrence" : "Dieses Vorkommen löschen", + "Duplicate" : "Duplizieren", + "Delete this occurrence" : "Diese Wiederholung löschen", "Delete this and all future" : "Dieses und alle Künftigen löschen", "Details" : "Details", + "Managing shared access" : "Geteilten Zugriff verwalten", + "Deny access" : "Zugriff verweigern", + "Invite" : "Einladen", "Attendees" : "Teilnehmer", - "Reminders" : "Erinnerungen", + "Resources" : "Ressourcen", + "_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"], "Close" : "Schließen", "Show more details" : "Weitere Einzelheiten anzeigen", "Subscribe to {name}" : "{name} abonnieren", - "Download {name}" : "{name} herunterladen", - "Anniversary" : "Jahrestag", - "Appointment" : "Verabredung", - "Business" : "Geschäftlich", - "Education" : "Bildung", - "Holiday" : "Feiertag", - "Meeting" : "Treffen", - "Miscellaneous" : "Verschiedenes", - "Non-working hours" : "Arbeitsfreie Stunden", - "Not in office" : "Nicht im Büro", - "Phone call" : "Anruf", - "Sick day" : "Krankheitstag", - "Special occasion" : "Besondere Gelegenheit", - "Travel" : "Reise", - "Vacation" : "Urlaub", + "Export {name}" : "Exportiere {name}", "Midnight on the day the event starts" : "Mitternacht am Tag des Starts des Termins", "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n Tag vor dem Start des Termins um {formattedHourMinute}","%n Tage vor dem Start des Termins um {formattedHourMinute}"], "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n Woche vor dem Start des Termins um {formattedHourMinute}","%n Wochen vor dem Start des Termins um {formattedHourMinute}"], @@ -281,15 +469,8 @@ "_%n time_::_%n times_" : ["%n mal","%n mal"], "Untitled event" : "Unbenannter Termin", "Untitled task" : "Unbenannte Aufgabe", - "Please ask your administrator to enable the Tasks App." : "Bitte Deine Administrator die Aufgaben-App (Tasks) zu aktivieren.", - "prev" : "Voriges", - "next" : "Nächstes", - "prev year" : "Voriges Jahr", - "next year" : "Nächstes Jahr", - "today" : "Heute", - "list" : "Liste", + "Please ask your administrator to enable the Tasks App." : "Bitte deinen Administrator die Aufgaben-App (Tasks) zu aktivieren.", "W" : "W", - "all-day" : "Ganztägig", "%n more" : "%n weitere", "No events to display" : "Keine Ereignisse zum Anzeigen", "_+%n more_::_+%n more_" : ["+%n weitere","+%n weitere"], @@ -297,62 +478,95 @@ "Create a new event or change the visible time-range" : "Neuen Termin erstellen oder den sichtbaren Zeitbereich ändern", "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", + "Lecture hall" : "Hörsaal", + "Seminar room" : "Seminarraum", + "Other" : "Sonstiges", "When shared show" : "Wenn geteilt, zeige", "When shared show full event" : "Wenn geteilt, zeige den vollständigen Termin an", - "When shared show only busy" : "Wenn geteilt, zeige nur den Status 'beschäftigt' an", + "When shared show only busy" : "Wenn geteilt, zeige nur den Status \"beschäftigt\" an", "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.", - "Location" : "Ort", "Add a location" : "Ort hinzufügen", - "Description" : "Beschreibung", "Add a description" : "Beschreibung hinzufügen", "Status" : "Status", "Confirmed" : "Bestätigt", - "Tentative" : "Vorläufig", "Canceled" : "Abgesagt", "Confirmation about the overall status of the event." : "Bestätigung über den Gesamtstatus des Termins.", "Show as" : "Anzeigen als", "Take this event into account when calculating free-busy information." : "Diesen Termin bei der Berechnung der Frei- / Gebucht-Informationen berücksichtigen.", - "Free" : "Frei", "Categories" : "Kategorien", - "Categories help you to structure and organize your events." : "Mithilfe von Kategorien kannst Du Deine Termine strukturieren und organisieren.", + "Categories help you to structure and organize your events." : "Mithilfe von Kategorien kannst du deine Termine strukturieren und organisieren.", "Search or add categories" : "Suche oder füge Kategorien hinzu", "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 dieses Termins. Überschreibt die Kalenderfarbe.", + "Special color of this event. Overrides the calendar-color." : "Sonderfarbe für diesen Termin. Überschreibt die Kalenderfarbe.", + "Error while sharing file" : "Fehler beim Teilen der Datei", + "Error while sharing file with user" : "Fehler beim Teilen der Datei mit Benutzer", + "Attachment {fileName} already exists!" : "Anhang {fileName} existiert bereits", + "An error occurred during getting file information" : "Es ist ein Fehler beim Abrufen von Dateiinformationen aufgetreten.", "Chat room for event" : "Chat-Raum für Termin", - "Imported {filename}" : "Importiert {filename}", + "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.", "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", - "Present" : "Geschenk", + "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", - "Review" : "Überprüfen", "Office" : "Büro", "Contributor week" : "Woche der Mitwirkenden", - "Party" : "Party", - "Celebration" : "Feier", "Mail" : "E-Mail", "Soccer" : "Fußball", "Football" : "Football", "Gaming" : "Gaming", - "Play" : "Spielen", - "Game" : "Spiel", "Drive" : "Fahren", + "Driving" : "Autofahren", "Bicycle" : "Fahrrad", "Cycle" : "Radfahren", + "Cycling" : "Radfahren", "Biking" : "Fahrradfahren", + "Bike" : "Fahrrad", "Podcast" : "Podcast", "Basketball" : "Basketball", "Fishing" : "Angeln", @@ -363,10 +577,12 @@ "Museum" : "Museum", "Pilates" : "Pilates", "Park" : "Park", + "Walk" : "Gehen", "Studying" : "Studieren", "Doctor" : "Arzt", "Health" : "Gesundheit", "Dentist" : "Zahnarzt", + "Hospital" : "Krankenhaus", "Interview" : "Interview", "Training" : "Training", "Practice" : "Übung", @@ -377,7 +593,10 @@ "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", @@ -395,21 +614,28 @@ "Christmas" : "Weihnachten", "Conference" : "Konferenz", "Pizza" : "Pizza", - "Travelling" : "Reise", + "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", - "Global" : "Weltweit" + "Appointment not found" : "Termin nicht gefunden", + "User not found" : "Benutzer nicht gefunden" },"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 98b9bc0e38..1d95a73af4 100644 --- a/l10n/de_DE.js +++ b/l10n/de_DE.js @@ -1,59 +1,137 @@ 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 " : "E-Mail erfolgreich versandt an", + "Successfully sent email to %1$s" : "E-Mail erfolgreich 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", + "More events" : "Weitere Termine", + "No more events today" : "Heute keine weiteren Termine", + "No upcoming events" : "Keine anstehenden 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", + "%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", + "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 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:", + "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.", + "Anniversary" : "Jahrestag", + "Appointment" : "Verabredung", + "Business" : "Geschäftlich", + "Education" : "Bildung", + "Holiday" : "Feiertag", + "Meeting" : "Treffen", + "Miscellaneous" : "Verschiedenes", + "Non-working hours" : "Arbeitsfreie Stunden", + "Not in office" : "Nicht im Büro", + "Personal" : "Persönlich", + "Phone call" : "Anruf", + "Sick day" : "Krankheitstag", + "Special occasion" : "Besondere Gelegenheit", + "Travel" : "Reise", + "Vacation" : "Urlaub", + "Custom Categories" : "Benutzerdefinierte Kategorien", + "Collaborative Tags" : "Kollaborative Schlagworte", + "Standard Categories" : "Standardkategorien", "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.", "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", + "Event" : "Ereignis", + "Create new event" : "Neuen Termin erstellen", "Today" : "Heute", "Day" : "Tag", "Week" : "Woche", "Month" : "Monat", + "Year" : "Jahr", "List" : "Liste", - "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", - "Download" : "Herunterladen", - "Unshare from me" : "Nicht mehr mit mir teilen", + "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", + "Shared with you by" : "Mit Ihnen geteilt von", + "Edit and share calendar" : "Kalender bearbeiten und teilen", + "Edit calendar" : "Kalender bearbeiten", + "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.", + "_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"], + "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", + "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://)", + "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", "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.", - "_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"], + "Trash bin" : "Papierkorb", + "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", + "Empty trash bin" : "Papierkorb leeren", + "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 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?", + "_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"], + "Could not update calendar order." : "Kalenderreihenfolge konnte nicht aktualisiert werden.", + "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", "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", + "Enter one address" : "Eine einzige Adresse eingeben", "Sending email …" : "Sende E-Mail …", - "Copy subscription link" : "Abonnements-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", @@ -62,35 +140,35 @@ OC.L10N.register( "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 Zwischenblage kopiert.", - "Embed code could not be copied to clipboard." : "Einbettungscode konnte nicht in die Zwischenblage kopiert 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 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.", - "+ New calendar" : "+ Neuer Kalender", - "New calendar" : "Neuer 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://)", - "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", + "Calendar name …" : "Kalendername …", + "Share calendar" : "Kalender teilen", + "Unshare from me" : "Nicht mehr mit mir teilen", + "Save" : "Speichern", + "Failed to save calendar name and color" : "Fehler beim Speichern von Kalendername und -farbe", "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.", "Cancel" : "Abbrechen", "_Import calendar_::_Import calendars_" : ["Kalender importieren","Kalender importieren"], - "{filename} is an unsupported file-type" : "{filename} ist ein ungültiger Dateityp", + "Default attachments location" : "Standard-Speicherort für Anhänge", + "Select the default location for attachments" : "Standard-Speicherort für Anhänge 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.", "{filename} could not be parsed" : "{filename} konnte nicht analysiert werden", "No valid files found, aborting import" : "Keine gültige Dateien gefunden, Import wird abgebrochen.", "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."], + "_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.", @@ -103,83 +181,171 @@ 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", + "Editor" : "Editor", + "Close editor" : "Bearbeitung schließen", + "Save edited event" : "Bearbeiteten Termin speichern", + "Delete edited event" : "Bearbeiteten Termin löschen", + "Duplicate event" : "Termin duplizieren", "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" : "Begrenzung der Anzahl der in der Monatsansicht angezeigten Termine", "Show weekends" : "Wochenenden anzeigen", "Show week numbers" : "Kalenderwochen anzeigen", + "Time increments" : "Zeitschritte", + "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", - "Settings & import" : "Einstellungen & Import", + "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", + "_{duration} minute_::_{duration} minutes_" : ["{duration} Minute","{duration} Minuten"], + "0 minutes" : "0 Minuten", + "_{duration} hour_::_{duration} hours_" : ["{duration} Stunde","{duration} Stunden"], + "_{duration} day_::_{duration} days_" : ["{duration} Tag","{duration} Tage"], + "_{duration} week_::_{duration} weeks_" : ["{duration} Woche","{duration} Wochen"], + "_{duration} month_::_{duration} months_" : ["{duration} Monat","{duration} Monate"], + "_{duration} year_::_{duration} years_" : ["{duration} Jahr","{duration} Jahre"], + "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 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", + "Increments" : "Schritte", + "Additional calendars to check for conflicts" : "Zusätzliche Kalender zur Überprüfung auf Konflikte", + "Pick time ranges where appointments are allowed" : "Wählen Sie Zeitbereiche, in denen Termine erlaubt sind", + "to" : "bis", + "Delete slot" : "Zeitfenster löschen", + "No times set" : "Keine Zeiten gesetzt", + "Add" : "Hinzufügen", + "Monday" : "Montag", + "Tuesday" : "Dienstag", + "Wednesday" : "Mittwoch", + "Thursday" : "Donnerstag", + "Friday" : "Freitag", + "Saturday" : "Samstag", + "Sunday" : "Sonntag", + "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", + "Planning restrictions" : "Planungsbeschränkungen", + "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", + "Create appointment" : "Termin erstellen", + "Edit appointment" : "Termin bearbeiten", + "Update" : "Aktualisieren", + "Please confirm your reservation" : "Bitte bestätigen Sie Ihre 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 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.", + "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", "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" : "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"], - "No reminders yet" : "Keine Erinnerungen bislang", + "No attachments" : "Keine Anhänge", + "Add from Files" : "Aus Dateien auswählen", + "Upload from device" : "Von Gerät hochladen", + "Delete file" : "Datei löschen", + "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", + "_{count} attachment_::_{count} attachments_" : ["{count} Anhang","{count} Anhänge"], + "Invitation accepted" : "Einladung angenommen", + "Available" : "Verfügbar", + "Suggested" : "Vorgeschlagen", + "Participation marked as tentative" : "Teilnahme als vorläufig markiert", + "Accepted {organizerName}'s invitation" : "Einladung von {organizerName} angenommen", + "Not available" : "Nicht verfügbar", + "Invitation declined" : "Einladung abgelehnt", + "Declined {organizerName}'s invitation" : "Einladung von {organizerName} abgelehnt", + "Invitation is delegated" : "Einladung ist delegiert", + "Checking availability" : "Verfügbarkeit prüfen", + "Invitation sent" : "Einladung verschickt", + "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", + "{organizer} (organizer)" : "{organizer} (Organisator)", + "Free" : "Frei", "Busy (tentative)" : "Beschäftigt (vorläufig)", "Busy" : "Beschäftigt", "Out of office" : "Nicht im Büro", "Unknown" : "Unbekannt", - "{name} accepted your invitation." : "{name} hat Ihre Einladung akzeptiert.", - "{name} accepted {organizerName}'s invitation." : "{name} hat die Einladung von {organizerName} akzeptiert.", - "{name} declined your invitation." : "{name} hat Ihre Einladung abgelehnt.", - "{name} declined {organizerName}'s invitation." : "{name} hat die Einladung von {organizerName} abgelehnt.", - "{name} has delegated their invitation." : "{name} hat seine Einladung delegiert.", - "{name} marked their participation as tentative." : "{name} hat die Teilnahme vorläufig zugesagt.", - "{name} did not respond to your invitation yet." : "{name} hat bislang nicht auf Ihre Einladung reagiert.", - "{name} did not respond to {organizerName}'s invitation yet." : "{name} hat bislang nicht auf {organizerName}s Einladung reagiert.", + "Accept" : "Annehmen", + "Decline" : "Ablehnen", + "Tentative" : "Vorläufig", + "The invitation has been accepted successfully." : "Die Einladung wurde angenommen.", + "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.", + "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", + "No attendees yet" : "Keine Teilnehmer bislang", + "You don't own this calendar, so you cannot add attendees to this event" : "Sie sind nicht Eigentümer dieses Kalenders und können daher dieser Veranstaltung keine 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 e-mail" : "E-Mail senden", + "Send email" : "E-Mail senden", "Chairperson" : "Vorsitz", "Required participant" : "Benötigter Teilnehmer", "Optional participant" : "Optionaler Teilnehmer", "Non-participant" : "Nicht-Teilnehmer", "Remove attendee" : "Teilnehmer entfernen", - "Search for e-mails, users, contacts, resources or rooms" : "Suche nach E-Mails, Benutzern, Adressen, Resourcen oder Räumen", + "Search for emails, users or contacts" : "Suche nach E-Mails, Benutzern oder Kontakten", "No match found" : "Keine Übereinstimmung gefunden", - "No attendees yet" : "Keine Teilnehmer bislang", "(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ü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", - "Can not modify all-day setting for events that are part of a recurrence-set." : "Die ganztägige Einstellung kann nicht für Termine geändert werden, die Teil einer Menge von Wiederholungen sind.", + "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}", + "Repeat" : "Wiederholen", "End repeat" : "Wiederholung beenden", "Select to end repeat" : "Auswählen um Wiederholung beenden", "never" : "Niemals", - "on date" : "am Datum", + "on date" : "zum Datum", "after" : "Nach", "_time_::_times_" : ["Mal","Mal"], - "This event is the recurrence-exception of a recurrence-set. You can not add a recurrence-rule to it." : "Dieser Termin ist die Wiederholungs-Ausnahme einer Wiederholungs-Menge. Sie können ihm keine Wiederholungsregel hinzufügen.", + "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", @@ -187,25 +353,37 @@ OC.L10N.register( "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" : "Wiederholen", "Repeat every" : "Wiederhole jeden", "By day of the month" : "Nach Tag des Monats", "On the" : "Am", "_month_::_months_" : ["Monat","Monate"], "_year_::_years_" : ["Jahr","Jahre"], - "Monday" : "Montag", "weekday" : "Wochentag", "weekend day" : "Wochenendtag", - "Summary" : "Zusammenfassung", - "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 von diesem Termin wird nicht vollständig von Nextcloud unterstützt. Wenn Sie die Wiederholungs-Optionen bearbeiten, könnten bestimmte Wiederholungen verlorengehen.", + "No recurrence" : "Keine Wiederholung", + "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", + "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", + "Room type" : "Raum-Typ", + "Any" : "Irgendein", + "Minimum seating capacity" : "Mindestsitzplatzkapazität", "More" : "Mehr", - "Save" : "Speichern", - "Update" : "Aktualisieren", "Update this occurrence" : "Dieses Vorkommen aktualisieren", "Update this and all future" : "Aktualisiere dieses und alle Künftigen", "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 timezone:" : "Bitte eine Zeitzone wählen:", + "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}", @@ -217,41 +395,53 @@ 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", - "Type to search timezone" : "Zum Suchen der Zeitzone tippen", - "Personal" : "Persönlich", - "The automatic timezone detection determined your timezone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your timezone 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 timezone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your timezone 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", + "Type to search time zone" : "Zum Suchen der Zeitzone tippen", + "Global" : "Weltweit", + "Public holiday calendars" : "Feiertagskalender", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Feiertagskalender werden von Thunderbird bereitgestellt. Kalenderdaten werden von {website} heruntergeladen.", + "By {authors}" : "Von {authors}", + "Subscribed" : "Abonniert", + "Subscribe" : "Abonnieren", + "Holidays in {region}" : "Feiertage in {region}", + "An error occurred, unable to create the public holiday calendar." : "Es ist ein Fehler aufgetreten, der Feiertagskalender konnte nicht erstellt werden.", + "Select date" : "Datum auswählen", + "Select slot" : "Zeitfenster auswählen", + "No slots available" : "Keine Zeitfenster verfügbar", + "Could not fetch slots" : "Abruf der Slots fehlgeschlagen", + "The slot for your appointment has been confirmed" : "Das Zeitfenster für Ihren Termin wurde bestätigt", + "Appointment Details:" : "Termindetails:", + "Time:" : "Zeit:", + "Booked for:" : "Gebucht für:", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "Danke schön. Ihre Buchung vom {startDate} bis {endDate} wurde bestätigt.", + "Book another appointment:" : "Einen weiteren Termin buchen:", + "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 Ihren Termin von {startDate} bis {endDate} ist nicht mehr verfügbar.", + "Please book a different slot:" : "Buchen Sie bitte ein anderes Zeitfenster:", + "Book an appointment with {name}" : "Buchen Sie einen Termin mit {name}", + "No public appointments found for {name}" : "Keine öffentlichen Termine für {name} gefunden", + "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.", "Create a new event" : "Neuen Termin erstellen", "[Today]" : "[Heute]", "[Tomorrow]" : "[Morgen]", "[Yesterday]" : "[Gestern]", "[Last] dddd" : "[Letzten] dddd", "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", + "Managing shared access" : "Geteilten Zugriff verwalten", + "Deny access" : "Zugriff verweigern", + "Invite" : "Einladen", "Attendees" : "Teilnehmer", - "Reminders" : "Erinnerungen", + "Resources" : "Ressourcen", + "_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"], "Close" : "Schließen", "Show more details" : "Weitere Einzelheiten anzeigen", "Subscribe to {name}" : "{name} abonnieren", - "Download {name}" : "{name} herunterladen", - "Anniversary" : "Jahrestag", - "Appointment" : "Verabredung", - "Business" : "Geschäftlich", - "Education" : "Bildung", - "Holiday" : "Feiertag", - "Meeting" : "Treffen", - "Miscellaneous" : "Verschiedenes", - "Non-working hours" : "Arbeitsfreie Stunden", - "Not in office" : "Nicht im Büro", - "Phone call" : "Anruf", - "Sick day" : "Krankheitstag", - "Special occasion" : "Besondere Gelegenheit", - "Travel" : "Reise", - "Vacation" : "Urlaub", + "Export {name}" : "{name} exportieren", "Midnight on the day the event starts" : "Mitternacht am Tag des Starts des Termins", "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n Tag vor dem Start des Termins um {formattedHourMinute}","%n Tage vor dem Start des Termins um {formattedHourMinute}"], "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n Woche vor dem Start des Termins um {formattedHourMinute}","%n Wochen vor dem Start des Termins um {formattedHourMinute}"], @@ -284,77 +474,103 @@ OC.L10N.register( "Untitled event" : "Unbenannter Termin", "Untitled task" : "Unbenannte Aufgabe", "Please ask your administrator to enable the Tasks App." : "Bitten Sie Ihren Administrator die Aufgaben-App (Tasks) zu aktivieren.", - "prev" : "Voriges", - "next" : "Nächstes", - "prev year" : "Voriges Jahr", - "next year" : "Nächstes Jahr", - "today" : "Heute", - "list" : "Liste", "W" : "W", - "all-day" : "Ganztägig", "%n more" : "%n weitere", - "No events to display" : "Keine Ereignisse zum Anzeigen", + "No events to display" : "Keine Termine zum Anzeigen", "_+%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", "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", - "When shared show" : "Wenn geteilt, zeige", + "Meeting room" : "Besprechungsraum", + "Lecture hall" : "Hörsaal", + "Seminar room" : "Seminarraum", + "Other" : "Sonstiges", + "When shared show" : "Anzeigen, wenn geteilt", "When shared show full event" : "Wenn geteilt, zeige den vollständigen Termin an", - "When shared show only busy" : "Wenn geteilt, zeige nur den Status 'beschäftigt' an", + "When shared show only busy" : "Wenn geteilt, zeige nur den Status \"beschäftigt\" an", "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.", - "Location" : "Ort", "Add a location" : "Ort hinzufügen", - "Description" : "Beschreibung", "Add a description" : "Beschreibung hinzufügen", "Status" : "Status", "Confirmed" : "Bestätigt", - "Tentative" : "Vorläufig", "Canceled" : "Abgesagt", "Confirmation about the overall status of the event." : "Bestätigung über den Gesamtstatus des Termins.", "Show as" : "Anzeigen als", - "Take this event into account when calculating free-busy information." : "Diesen Termin bei der Berechnung der Frei- / Gebucht-Informationen berücksichtigen.", - "Free" : "Frei", + "Take this event into account when calculating free-busy information." : "Diesen Termin bei der Berechnung der Frei- / Beschäftigt-Informationen berücksichtigen.", "Categories" : "Kategorien", "Categories help you to structure and organize your events." : "Mithilfe von Kategorien können Sie Ihre Termine strukturieren und organisieren.", "Search or add categories" : "Suchen oder fügen Sie Kategorien hinzu", "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 dieses Termins. Überschreibt die Kalenderfarbe.", + "Special color of this event. Overrides the calendar-color." : "Sonderfarbe für diesen Termin. Überschreibt die Kalenderfarbe.", + "Error while sharing file" : "Fehler beim Teilen der Datei", + "Error while sharing file with user" : "Fehler beim Teilen der Datei mit Benutzer", + "Attachment {fileName} already exists!" : "Anhang {fileName} existiert bereits", + "An error occurred during getting file information" : "Es ist ein Fehler beim Abrufen von Dateiinformationen aufgetreten", "Chat room for event" : "Chat-Raum für Termin", - "Imported {filename}" : "Importiert {filename}", + "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.", "Meditation" : "Meditation", "Relaxing" : "Entspannen", "Relax" : "Entspannen", + "Break" : "Pause", + "Commute" : "Pendelt", + "Commuting" : "Pendeln", + "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", - "Present" : "Geschenk", + "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" : "Inspektion", + "Proofreading" : "Korrekturlesen", "Baseball" : "Baseball", "Meet" : "Treffen", "Planning" : "Planung", "Pointing" : "Hinweis", "Retrospective" : "Rückblick", - "Review" : "Überprüfen", "Office" : "Büro", "Contributor week" : "Woche der Mitwirkenden", - "Party" : "Party", - "Celebration" : "Feier", "Mail" : "E-Mail", "Soccer" : "Fußball", "Football" : "Football", "Gaming" : "Gaming", - "Play" : "Spielen", - "Game" : "Spiel", "Drive" : "Fahren", + "Driving" : "Autofahren", "Bicycle" : "Fahrrad", "Cycle" : "Radfahren", + "Cycling" : "Radfahren", "Biking" : "Fahrradfahren", + "Bike" : "Fahrrad", "Podcast" : "Podcast", "Basketball" : "Basketball", "Fishing" : "Angeln", @@ -365,11 +581,13 @@ OC.L10N.register( "Museum" : "Museum", "Pilates" : "Pilates", "Park" : "Park", + "Walk" : "Gehen", "Studying" : "Studieren", "Doctor" : "Arzt", "Health" : "Gesundheit", "Dentist" : "Zahnarzt", - "Interview" : "Interview", + "Hospital" : "Krankenhaus", + "Interview" : "Vorstellungsgespräch", "Training" : "Training", "Practice" : "Übung", "Sports" : "Sport", @@ -379,7 +597,10 @@ OC.L10N.register( "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", @@ -397,21 +618,28 @@ OC.L10N.register( "Christmas" : "Weihnachten", "Conference" : "Konferenz", "Pizza" : "Pizza", - "Travelling" : "Reise", + "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", - "Global" : "Weltweit" + "Appointment not found" : "Termin nicht gefunden", + "User not found" : "Benutzer nicht gefunden" }, "nplurals=2; plural=(n != 1);"); diff --git a/l10n/de_DE.json b/l10n/de_DE.json index 5956606a18..5abe184341 100644 --- a/l10n/de_DE.json +++ b/l10n/de_DE.json @@ -1,57 +1,135 @@ { "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 " : "E-Mail erfolgreich versandt an", + "Successfully sent email to %1$s" : "E-Mail erfolgreich 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", + "More events" : "Weitere Termine", + "No more events today" : "Heute keine weiteren Termine", + "No upcoming events" : "Keine anstehenden 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", + "%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", + "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 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:", + "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.", + "Anniversary" : "Jahrestag", + "Appointment" : "Verabredung", + "Business" : "Geschäftlich", + "Education" : "Bildung", + "Holiday" : "Feiertag", + "Meeting" : "Treffen", + "Miscellaneous" : "Verschiedenes", + "Non-working hours" : "Arbeitsfreie Stunden", + "Not in office" : "Nicht im Büro", + "Personal" : "Persönlich", + "Phone call" : "Anruf", + "Sick day" : "Krankheitstag", + "Special occasion" : "Besondere Gelegenheit", + "Travel" : "Reise", + "Vacation" : "Urlaub", + "Custom Categories" : "Benutzerdefinierte Kategorien", + "Collaborative Tags" : "Kollaborative Schlagworte", + "Standard Categories" : "Standardkategorien", "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.", "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", + "Event" : "Ereignis", + "Create new event" : "Neuen Termin erstellen", "Today" : "Heute", "Day" : "Tag", "Week" : "Woche", "Month" : "Monat", + "Year" : "Jahr", "List" : "Liste", - "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", - "Download" : "Herunterladen", - "Unshare from me" : "Nicht mehr mit mir teilen", + "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", + "Shared with you by" : "Mit Ihnen geteilt von", + "Edit and share calendar" : "Kalender bearbeiten und teilen", + "Edit calendar" : "Kalender bearbeiten", + "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.", + "_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"], + "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", + "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://)", + "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", "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.", - "_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"], + "Trash bin" : "Papierkorb", + "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", + "Empty trash bin" : "Papierkorb leeren", + "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 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?", + "_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"], + "Could not update calendar order." : "Kalenderreihenfolge konnte nicht aktualisiert werden.", + "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", "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", + "Enter one address" : "Eine einzige Adresse eingeben", "Sending email …" : "Sende E-Mail …", - "Copy subscription link" : "Abonnements-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", @@ -60,35 +138,35 @@ "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 Zwischenblage kopiert.", - "Embed code could not be copied to clipboard." : "Einbettungscode konnte nicht in die Zwischenblage kopiert 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 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.", - "+ New calendar" : "+ Neuer Kalender", - "New calendar" : "Neuer 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://)", - "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", + "Calendar name …" : "Kalendername …", + "Share calendar" : "Kalender teilen", + "Unshare from me" : "Nicht mehr mit mir teilen", + "Save" : "Speichern", + "Failed to save calendar name and color" : "Fehler beim Speichern von Kalendername und -farbe", "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.", "Cancel" : "Abbrechen", "_Import calendar_::_Import calendars_" : ["Kalender importieren","Kalender importieren"], - "{filename} is an unsupported file-type" : "{filename} ist ein ungültiger Dateityp", + "Default attachments location" : "Standard-Speicherort für Anhänge", + "Select the default location for attachments" : "Standard-Speicherort für Anhänge 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.", "{filename} could not be parsed" : "{filename} konnte nicht analysiert werden", "No valid files found, aborting import" : "Keine gültige Dateien gefunden, Import wird abgebrochen.", "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."], + "_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.", @@ -101,83 +179,171 @@ "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", + "Editor" : "Editor", + "Close editor" : "Bearbeitung schließen", + "Save edited event" : "Bearbeiteten Termin speichern", + "Delete edited event" : "Bearbeiteten Termin löschen", + "Duplicate event" : "Termin duplizieren", "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" : "Begrenzung der Anzahl der in der Monatsansicht angezeigten Termine", "Show weekends" : "Wochenenden anzeigen", "Show week numbers" : "Kalenderwochen anzeigen", + "Time increments" : "Zeitschritte", + "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", - "Settings & import" : "Einstellungen & Import", + "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", + "_{duration} minute_::_{duration} minutes_" : ["{duration} Minute","{duration} Minuten"], + "0 minutes" : "0 Minuten", + "_{duration} hour_::_{duration} hours_" : ["{duration} Stunde","{duration} Stunden"], + "_{duration} day_::_{duration} days_" : ["{duration} Tag","{duration} Tage"], + "_{duration} week_::_{duration} weeks_" : ["{duration} Woche","{duration} Wochen"], + "_{duration} month_::_{duration} months_" : ["{duration} Monat","{duration} Monate"], + "_{duration} year_::_{duration} years_" : ["{duration} Jahr","{duration} Jahre"], + "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 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", + "Increments" : "Schritte", + "Additional calendars to check for conflicts" : "Zusätzliche Kalender zur Überprüfung auf Konflikte", + "Pick time ranges where appointments are allowed" : "Wählen Sie Zeitbereiche, in denen Termine erlaubt sind", + "to" : "bis", + "Delete slot" : "Zeitfenster löschen", + "No times set" : "Keine Zeiten gesetzt", + "Add" : "Hinzufügen", + "Monday" : "Montag", + "Tuesday" : "Dienstag", + "Wednesday" : "Mittwoch", + "Thursday" : "Donnerstag", + "Friday" : "Freitag", + "Saturday" : "Samstag", + "Sunday" : "Sonntag", + "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", + "Planning restrictions" : "Planungsbeschränkungen", + "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", + "Create appointment" : "Termin erstellen", + "Edit appointment" : "Termin bearbeiten", + "Update" : "Aktualisieren", + "Please confirm your reservation" : "Bitte bestätigen Sie Ihre 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 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.", + "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", "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" : "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"], - "No reminders yet" : "Keine Erinnerungen bislang", + "No attachments" : "Keine Anhänge", + "Add from Files" : "Aus Dateien auswählen", + "Upload from device" : "Von Gerät hochladen", + "Delete file" : "Datei löschen", + "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", + "_{count} attachment_::_{count} attachments_" : ["{count} Anhang","{count} Anhänge"], + "Invitation accepted" : "Einladung angenommen", + "Available" : "Verfügbar", + "Suggested" : "Vorgeschlagen", + "Participation marked as tentative" : "Teilnahme als vorläufig markiert", + "Accepted {organizerName}'s invitation" : "Einladung von {organizerName} angenommen", + "Not available" : "Nicht verfügbar", + "Invitation declined" : "Einladung abgelehnt", + "Declined {organizerName}'s invitation" : "Einladung von {organizerName} abgelehnt", + "Invitation is delegated" : "Einladung ist delegiert", + "Checking availability" : "Verfügbarkeit prüfen", + "Invitation sent" : "Einladung verschickt", + "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", + "{organizer} (organizer)" : "{organizer} (Organisator)", + "Free" : "Frei", "Busy (tentative)" : "Beschäftigt (vorläufig)", "Busy" : "Beschäftigt", "Out of office" : "Nicht im Büro", "Unknown" : "Unbekannt", - "{name} accepted your invitation." : "{name} hat Ihre Einladung akzeptiert.", - "{name} accepted {organizerName}'s invitation." : "{name} hat die Einladung von {organizerName} akzeptiert.", - "{name} declined your invitation." : "{name} hat Ihre Einladung abgelehnt.", - "{name} declined {organizerName}'s invitation." : "{name} hat die Einladung von {organizerName} abgelehnt.", - "{name} has delegated their invitation." : "{name} hat seine Einladung delegiert.", - "{name} marked their participation as tentative." : "{name} hat die Teilnahme vorläufig zugesagt.", - "{name} did not respond to your invitation yet." : "{name} hat bislang nicht auf Ihre Einladung reagiert.", - "{name} did not respond to {organizerName}'s invitation yet." : "{name} hat bislang nicht auf {organizerName}s Einladung reagiert.", + "Accept" : "Annehmen", + "Decline" : "Ablehnen", + "Tentative" : "Vorläufig", + "The invitation has been accepted successfully." : "Die Einladung wurde angenommen.", + "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.", + "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", + "No attendees yet" : "Keine Teilnehmer bislang", + "You don't own this calendar, so you cannot add attendees to this event" : "Sie sind nicht Eigentümer dieses Kalenders und können daher dieser Veranstaltung keine 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 e-mail" : "E-Mail senden", + "Send email" : "E-Mail senden", "Chairperson" : "Vorsitz", "Required participant" : "Benötigter Teilnehmer", "Optional participant" : "Optionaler Teilnehmer", "Non-participant" : "Nicht-Teilnehmer", "Remove attendee" : "Teilnehmer entfernen", - "Search for e-mails, users, contacts, resources or rooms" : "Suche nach E-Mails, Benutzern, Adressen, Resourcen oder Räumen", + "Search for emails, users or contacts" : "Suche nach E-Mails, Benutzern oder Kontakten", "No match found" : "Keine Übereinstimmung gefunden", - "No attendees yet" : "Keine Teilnehmer bislang", "(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ü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", - "Can not modify all-day setting for events that are part of a recurrence-set." : "Die ganztägige Einstellung kann nicht für Termine geändert werden, die Teil einer Menge von Wiederholungen sind.", + "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}", + "Repeat" : "Wiederholen", "End repeat" : "Wiederholung beenden", "Select to end repeat" : "Auswählen um Wiederholung beenden", "never" : "Niemals", - "on date" : "am Datum", + "on date" : "zum Datum", "after" : "Nach", "_time_::_times_" : ["Mal","Mal"], - "This event is the recurrence-exception of a recurrence-set. You can not add a recurrence-rule to it." : "Dieser Termin ist die Wiederholungs-Ausnahme einer Wiederholungs-Menge. Sie können ihm keine Wiederholungsregel hinzufügen.", + "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", @@ -185,25 +351,37 @@ "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" : "Wiederholen", "Repeat every" : "Wiederhole jeden", "By day of the month" : "Nach Tag des Monats", "On the" : "Am", "_month_::_months_" : ["Monat","Monate"], "_year_::_years_" : ["Jahr","Jahre"], - "Monday" : "Montag", "weekday" : "Wochentag", "weekend day" : "Wochenendtag", - "Summary" : "Zusammenfassung", - "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 von diesem Termin wird nicht vollständig von Nextcloud unterstützt. Wenn Sie die Wiederholungs-Optionen bearbeiten, könnten bestimmte Wiederholungen verlorengehen.", + "No recurrence" : "Keine Wiederholung", + "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", + "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", + "Room type" : "Raum-Typ", + "Any" : "Irgendein", + "Minimum seating capacity" : "Mindestsitzplatzkapazität", "More" : "Mehr", - "Save" : "Speichern", - "Update" : "Aktualisieren", "Update this occurrence" : "Dieses Vorkommen aktualisieren", "Update this and all future" : "Aktualisiere dieses und alle Künftigen", "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 timezone:" : "Bitte eine Zeitzone wählen:", + "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}", @@ -215,41 +393,53 @@ "{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", - "Type to search timezone" : "Zum Suchen der Zeitzone tippen", - "Personal" : "Persönlich", - "The automatic timezone detection determined your timezone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your timezone 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 timezone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your timezone 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", + "Type to search time zone" : "Zum Suchen der Zeitzone tippen", + "Global" : "Weltweit", + "Public holiday calendars" : "Feiertagskalender", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Feiertagskalender werden von Thunderbird bereitgestellt. Kalenderdaten werden von {website} heruntergeladen.", + "By {authors}" : "Von {authors}", + "Subscribed" : "Abonniert", + "Subscribe" : "Abonnieren", + "Holidays in {region}" : "Feiertage in {region}", + "An error occurred, unable to create the public holiday calendar." : "Es ist ein Fehler aufgetreten, der Feiertagskalender konnte nicht erstellt werden.", + "Select date" : "Datum auswählen", + "Select slot" : "Zeitfenster auswählen", + "No slots available" : "Keine Zeitfenster verfügbar", + "Could not fetch slots" : "Abruf der Slots fehlgeschlagen", + "The slot for your appointment has been confirmed" : "Das Zeitfenster für Ihren Termin wurde bestätigt", + "Appointment Details:" : "Termindetails:", + "Time:" : "Zeit:", + "Booked for:" : "Gebucht für:", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "Danke schön. Ihre Buchung vom {startDate} bis {endDate} wurde bestätigt.", + "Book another appointment:" : "Einen weiteren Termin buchen:", + "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 Ihren Termin von {startDate} bis {endDate} ist nicht mehr verfügbar.", + "Please book a different slot:" : "Buchen Sie bitte ein anderes Zeitfenster:", + "Book an appointment with {name}" : "Buchen Sie einen Termin mit {name}", + "No public appointments found for {name}" : "Keine öffentlichen Termine für {name} gefunden", + "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.", "Create a new event" : "Neuen Termin erstellen", "[Today]" : "[Heute]", "[Tomorrow]" : "[Morgen]", "[Yesterday]" : "[Gestern]", "[Last] dddd" : "[Letzten] dddd", "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", + "Managing shared access" : "Geteilten Zugriff verwalten", + "Deny access" : "Zugriff verweigern", + "Invite" : "Einladen", "Attendees" : "Teilnehmer", - "Reminders" : "Erinnerungen", + "Resources" : "Ressourcen", + "_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"], "Close" : "Schließen", "Show more details" : "Weitere Einzelheiten anzeigen", "Subscribe to {name}" : "{name} abonnieren", - "Download {name}" : "{name} herunterladen", - "Anniversary" : "Jahrestag", - "Appointment" : "Verabredung", - "Business" : "Geschäftlich", - "Education" : "Bildung", - "Holiday" : "Feiertag", - "Meeting" : "Treffen", - "Miscellaneous" : "Verschiedenes", - "Non-working hours" : "Arbeitsfreie Stunden", - "Not in office" : "Nicht im Büro", - "Phone call" : "Anruf", - "Sick day" : "Krankheitstag", - "Special occasion" : "Besondere Gelegenheit", - "Travel" : "Reise", - "Vacation" : "Urlaub", + "Export {name}" : "{name} exportieren", "Midnight on the day the event starts" : "Mitternacht am Tag des Starts des Termins", "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n Tag vor dem Start des Termins um {formattedHourMinute}","%n Tage vor dem Start des Termins um {formattedHourMinute}"], "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n Woche vor dem Start des Termins um {formattedHourMinute}","%n Wochen vor dem Start des Termins um {formattedHourMinute}"], @@ -282,77 +472,103 @@ "Untitled event" : "Unbenannter Termin", "Untitled task" : "Unbenannte Aufgabe", "Please ask your administrator to enable the Tasks App." : "Bitten Sie Ihren Administrator die Aufgaben-App (Tasks) zu aktivieren.", - "prev" : "Voriges", - "next" : "Nächstes", - "prev year" : "Voriges Jahr", - "next year" : "Nächstes Jahr", - "today" : "Heute", - "list" : "Liste", "W" : "W", - "all-day" : "Ganztägig", "%n more" : "%n weitere", - "No events to display" : "Keine Ereignisse zum Anzeigen", + "No events to display" : "Keine Termine zum Anzeigen", "_+%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", "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", - "When shared show" : "Wenn geteilt, zeige", + "Meeting room" : "Besprechungsraum", + "Lecture hall" : "Hörsaal", + "Seminar room" : "Seminarraum", + "Other" : "Sonstiges", + "When shared show" : "Anzeigen, wenn geteilt", "When shared show full event" : "Wenn geteilt, zeige den vollständigen Termin an", - "When shared show only busy" : "Wenn geteilt, zeige nur den Status 'beschäftigt' an", + "When shared show only busy" : "Wenn geteilt, zeige nur den Status \"beschäftigt\" an", "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.", - "Location" : "Ort", "Add a location" : "Ort hinzufügen", - "Description" : "Beschreibung", "Add a description" : "Beschreibung hinzufügen", "Status" : "Status", "Confirmed" : "Bestätigt", - "Tentative" : "Vorläufig", "Canceled" : "Abgesagt", "Confirmation about the overall status of the event." : "Bestätigung über den Gesamtstatus des Termins.", "Show as" : "Anzeigen als", - "Take this event into account when calculating free-busy information." : "Diesen Termin bei der Berechnung der Frei- / Gebucht-Informationen berücksichtigen.", - "Free" : "Frei", + "Take this event into account when calculating free-busy information." : "Diesen Termin bei der Berechnung der Frei- / Beschäftigt-Informationen berücksichtigen.", "Categories" : "Kategorien", "Categories help you to structure and organize your events." : "Mithilfe von Kategorien können Sie Ihre Termine strukturieren und organisieren.", "Search or add categories" : "Suchen oder fügen Sie Kategorien hinzu", "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 dieses Termins. Überschreibt die Kalenderfarbe.", + "Special color of this event. Overrides the calendar-color." : "Sonderfarbe für diesen Termin. Überschreibt die Kalenderfarbe.", + "Error while sharing file" : "Fehler beim Teilen der Datei", + "Error while sharing file with user" : "Fehler beim Teilen der Datei mit Benutzer", + "Attachment {fileName} already exists!" : "Anhang {fileName} existiert bereits", + "An error occurred during getting file information" : "Es ist ein Fehler beim Abrufen von Dateiinformationen aufgetreten", "Chat room for event" : "Chat-Raum für Termin", - "Imported {filename}" : "Importiert {filename}", + "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.", "Meditation" : "Meditation", "Relaxing" : "Entspannen", "Relax" : "Entspannen", + "Break" : "Pause", + "Commute" : "Pendelt", + "Commuting" : "Pendeln", + "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", - "Present" : "Geschenk", + "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" : "Inspektion", + "Proofreading" : "Korrekturlesen", "Baseball" : "Baseball", "Meet" : "Treffen", "Planning" : "Planung", "Pointing" : "Hinweis", "Retrospective" : "Rückblick", - "Review" : "Überprüfen", "Office" : "Büro", "Contributor week" : "Woche der Mitwirkenden", - "Party" : "Party", - "Celebration" : "Feier", "Mail" : "E-Mail", "Soccer" : "Fußball", "Football" : "Football", "Gaming" : "Gaming", - "Play" : "Spielen", - "Game" : "Spiel", "Drive" : "Fahren", + "Driving" : "Autofahren", "Bicycle" : "Fahrrad", "Cycle" : "Radfahren", + "Cycling" : "Radfahren", "Biking" : "Fahrradfahren", + "Bike" : "Fahrrad", "Podcast" : "Podcast", "Basketball" : "Basketball", "Fishing" : "Angeln", @@ -363,11 +579,13 @@ "Museum" : "Museum", "Pilates" : "Pilates", "Park" : "Park", + "Walk" : "Gehen", "Studying" : "Studieren", "Doctor" : "Arzt", "Health" : "Gesundheit", "Dentist" : "Zahnarzt", - "Interview" : "Interview", + "Hospital" : "Krankenhaus", + "Interview" : "Vorstellungsgespräch", "Training" : "Training", "Practice" : "Übung", "Sports" : "Sport", @@ -377,7 +595,10 @@ "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", @@ -395,21 +616,28 @@ "Christmas" : "Weihnachten", "Conference" : "Konferenz", "Pizza" : "Pizza", - "Travelling" : "Reise", + "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", - "Global" : "Weltweit" + "Appointment not found" : "Termin nicht gefunden", + "User not found" : "Benutzer nicht gefunden" },"pluralForm" :"nplurals=2; plural=(n != 1);" } \ No newline at end of file diff --git a/l10n/el.js b/l10n/el.js index 9b24e39b96..32bcb20d12 100644 --- a/l10n/el.js +++ b/l10n/el.js @@ -1,17 +1,58 @@ OC.L10N.register( "calendar", { - "User-Session unexpectedly expired" : "Η σύνδεση-χρήστη έληξε απότομα", + "User-Session unexpectedly expired" : "Η συνεδρία-χρήστη έληξε απότομα", "Provided email-address is not valid" : "Η διεύθυνση email δεν είναι έγκυρη", - "%s has published the calendar »%s«" : "Ο %s έχει δημοσιεύσει το ημερολόγιο »%s«", + "%s has published the calendar »%s«" : "Ο/η %s έχει δημοσιεύσει το ημερολόγιο »%s«", "Unexpected error sending email. Please contact your administrator." : "Απροσδόκητο σφάλμα στην αποστολή email. Παρακαλώ επικοινωνήστε με τον διαχειριστή.", - "Successfully sent email to " : "Επιτυχής αποστολή email σε", + "Successfully sent email to %1$s" : "Επιτυχής αποστολή email %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" : "Προσεχή γεγονότα", + "More events" : "Περισσότερα γεγονότα", + "No more events today" : "Δεν υπάρχουν άλλα γεγονότα για σήμερα", + "No upcoming 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" : "Επιβεβαιώνω", + "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." : "Εάν τελικά θέλετε να ακυρώσετε το ραντεβού, επικοινωνήστε με τον διοργανωτή απαντώντας σε αυτό το 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:" : "Που:", + "Comment:" : "Σχόλιο:", + "You have a new appointment booking \"%s\" from %s" : "Έχετε μια νέα κράτηση για το ραντεβού \"%s\" από τον/την %s", + "Dear %s, %s (%s) booked an appointment with you." : "Αγαπητέ/ή %s, %s (%s) έκανε κράτηση σε ένα ραντεβού σας.", + "Anniversary" : "Επέτειος", + "Appointment" : "Ραντεβού", + "Business" : "Επιχείρηση", + "Education" : "Εκπαίδευση", + "Holiday" : "Διακοπές", + "Meeting" : "Συνάντηση", + "Miscellaneous" : "Διάφορα", + "Non-working hours" : "Μη εργάσιμες ώρες", + "Not in office" : "Εκτός γραφείου", + "Personal" : "Προσωπικά", + "Phone call" : "Τηλεφωνική κλήση", + "Sick day" : "Ημέρα ανάρρωσης", + "Special occasion" : "Ειδική περίπτωση", + "Travel" : "Ταξίδι", + "Vacation" : "Διακοπές", "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" : "Προηγούμενη ημέρα", @@ -19,78 +60,109 @@ OC.L10N.register( "Previous month" : "Προηγούμενος μήνας", "Next day" : "Επόμενη ημέρα", "Next week" : "Επόμενη εβδομάδα", + "Next year" : "Επόμενο έτος", "Next month" : "Επόμενος μήνας", - "+ New event" : "+ Νέο γεγονός", + "Event" : "Συιμβάν", + "Create new event" : "Δημιουργία νέου συμβάντος", "Today" : "Σήμερα", "Day" : "Ημέρα", "Week" : "Εβδομάδα", "Month" : "Μήνας", + "Year" : "Έτος", "List" : "Λίστα", - "Untitled calendar" : "Ημερολόγιο χωρίς τίτλο", - "Edit name" : "Επεξεργασία ονόματος", - "Saving name …" : "Αποθήκευση ονόματος …", - "Edit color" : "Επεξεργασία χρώματος", - "Saving color …" : "Αποθήκευση χρώματος …", - "Copy private link" : "Αντιγραφή ιδιωτικού συνδέσμου", - "Download" : "Λήψη", - "Unshare from me" : "Διακοπή διαμοιρασμού με εμένα", + "Preview" : "Προεπισκόπηση", + "Copy link" : "Αντιγραφή συνδέσμου", + "Edit" : "Επεξεργασία", "Delete" : "Διαγραφή", + "Appointment link was copied to clipboard" : "Ο σύνδεσμος του ραντεβού αντιγράφηκε στο πρόχειρο.", + "Appointment link could not be copied to clipboard" : "Δεν ήταν δυνατή η αντιγραφή του συνδέσμου ραντεβού στο πρόχειρο.", + "Add new" : "Προσθήκη νέου", + "Untitled calendar" : "Ημερολόγιο χωρίς τίτλο", + "Shared with you by" : "Διαμοιρασμένα μαζί σας από", + "Edit and share calendar" : "Επεξεργασία και κοινή χρήση ημερολογίου", + "Edit calendar" : "Επεξεργασία ημερολογίου", + "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." : "Παρουσιάστηκε σφάλμα, δεν δύναται να διαγραφή το ημερολόγιο.", + "_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} δευτερόλεπτα"], + "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://)", + "Copy subscription link" : "Αντιγραφή συνδέσμου συνδρομής", + "Copying link …" : "Αντιγραφή συνδέσμου '...'", + "Copied link" : "Αντιγραμμένος σύνδεσμος", + "Could not copy link" : "Ο σύνδεσμος δεν μπορεί να αντιγραφεί", + "Export" : "Εξαγωγή", "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} δεύτερα","Αφαίρεση κοινής χρήσης ημερολογίου σε {countdown} δεύτερα"], - "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Διαγραφή ημερολογίου σε {countdown} δεύτερα","Διαγραφή ημερολογίου σε {countdown} δεύτερα"], + "Trash bin" : "Κάδος απορριμμάτων", + "Loading deleted items." : "Φόρτωση διαγραμμένων στοιχείων.", + "You do not have any deleted items." : "Δεν έχετε διαγραμμένα στοιχεία.", + "Name" : "Όνομα", + "Deleted" : "Διαγράφηκε", + "Restore" : "Επαναφορά", + "Delete permanently" : "Οριστική διαγραφή", + "Empty trash bin" : "Άδειασμα κάδου", + "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?" : "Θέλετε να αδειάσετε τον κάδο απορριμμάτων;", + "_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." : "Δεν μπορεί να γίνει ενημέρωση εντολών ημερολογίου.", + "Internal link" : "Εσωτερικός σύνδεσμος", + "A private link that can be used with external clients" : "Ένας ιδιωτικός σύνδεσμος που μπορεί να χρησιμοποιηθεί με τρίτες εφαρμογές", + "Copy internal link" : "Αντιγραφή εσωτερικού συνδέσμου", "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" : "Αντεγραμένος κώδικας", + "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." : "Ο ενσωματωμένος κώδικας δεν μπορεί να αντιγραφή στο πρόχειρο.", + "Embed code could not be copied to clipboard." : "Ο ενσωματωμένος κώδικας δεν μπορεί να αντιγραφεί στο πρόχειρο.", "Unpublishing calendar failed" : "Η κατάργηση δημοσιευμένου ημερολογίου απέτυχε", - "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 while unsharing 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://)", - "Could not update calendar order." : "Δεν μπορεί να γίνει ενημέρωση εντολών ημερολογίου.", + "Share with users or groups" : "Κοινή χρήση με χρήστες ή ομάδες", + "No users or groups" : "Δεν υπάρχουν χρήστες ή ομάδες", + "Calendar name …" : "Όνομα ημερολογίου …", + "Share calendar" : "Κοινή χρήση ημερολογίου", + "Unshare from me" : "Διακοπή διαμοιρασμού με εμένα", + "Save" : "Αποθήκευση", + "Failed to save calendar name and color" : "Απέτυχε η αποθήκευση του ονόματος και του χρώματος του ημερολογίου", "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_" : ["Εισαγωγή ημερολογίου","Εισαγωγή ημερολογίων"], - "{filename} is an unsupported file-type" : "το {filename} είναι μη υποστηριζόμενος τύπος-αρχείου", + "Default attachments location" : "Προεπιλεγμένη τοποθεσία συνημμένων", + "Select the default location for attachments" : "Επιλέξτε την προεπιλεγμένη θέση για τα συνημμένα", + "Invalid location selected" : "Επιλέχθηκε μη έγκυρη τοποθεσία", + "Attachments folder successfully saved." : "Ο φάκελος συνημμένων αποθηκεύτηκε με επιτυχία.", + "Error on saving attachments folder." : "Σφάλμα κατά την αποθήκευση του φακέλου συνημμένων.", "{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 γεγονότων"], + "_Successfully imported %n event_::_Successfully imported %n events_" : ["Επιτυχής εισαγωγή %n συμβάν","Επιτυχής εισαγωγή %n συμβάντων"], "Automatic" : "Αυτόματο", "Automatic ({detected})" : "Αυτόματα ({detected})", "New setting was not saved successfully." : "Οι νέες ρυθμίσεις δεν αποθηκεύτηκαν επιτυχώς.", @@ -103,21 +175,80 @@ OC.L10N.register( "Day view" : "Εμφάνιση ημέρας", "Week view" : "Εμφάνιση εβδομάδας", "Month view" : "Εμφάνιση μήνα", + "List view" : "Προβολή λίστας", "Actions" : "Ενέργειες", "Create event" : "Δημιουργία συμβάντος", "Show shortcuts" : "Εμφάνιση συντομεύσεων", + "Editor" : "Επεξεργαστής", + "Close editor" : "Κλείσιμο του επεξεργαστή", + "Save edited event" : "Αποθήκευση επεξεργασμένης εκδήλωσης", + "Delete edited event" : "Διαγραφή επεξεργασμένης εκδήλωσης", + "Duplicate event" : "Αντιγραφή εκδήλωσης", "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 reminder" : "Προεπιλεγμένη υπενθύμιση", "Copy primary CalDAV address" : "Αντιγραφή κύριας διεύθυνσης CalDAV", "Copy iOS/macOS CalDAV address" : "Αντιγραφή διεύθυνσης iOS/macOS CalDAV", + "Personal availability settings" : "Ρυθμίσεις προσωπικής διαθεσιμότητας", "Show keyboard shortcuts" : "Εμφάνιση συντομεύσεων πληκτρολογίου", - "Settings & import" : "Ρυθμίσεις & εισαγωγή", + "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} ώρες"], + "_{duration} day_::_{duration} days_" : ["{duration} ημέρα","{duration} ημέρες"], + "_{duration} week_::_{duration} weeks_" : ["{duration} εβδομάδα","{duration} εβδομάδες"], + "_{duration} month_::_{duration} months_" : ["{duration} μήνα","{duration} μήνες"], + "_{duration} year_::_{duration} years_" : ["{duration} χρόνο","{duration} χρόνια"], + "To configure appointments, add your email address in personal settings." : "Για να ρυθμίσετε τα ραντεβού σας, προσθέστε την διεύθυνση email στις προσωπικές ρυθμίσεις", + "Public – shown on the profile page" : "Δημόσιο - εμφανίζεται στο προφίλ", + "Private – only accessible via secret link" : "Ιδιωτικό - προσβάσιμο μόνο μέσω κρυφού συνδέσμου", + "Appointment name" : "Όνομα ραντεβού", + "Location" : "Τοποθεσία", + "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" : "Τρίτη", + "Wednesday" : "Τετάρτη", + "Thursday" : "Πέμπτη", + "Friday" : "Παρασκευή", + "Saturday" : "Σάββατο", + "Sunday" : "Κυριακή", + "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" : "Επεξεργασία ραντεβού", + "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" : "Υπενθύμιση", "before at" : "πριν από το", "Notification" : "Ειδοποίηση", "Email" : "Ηλ. ταχυδρομείο", @@ -131,55 +262,79 @@ OC.L10N.register( "on" : "σε", "at" : "στις", "+ Add reminder" : "+ Προσθήκη υπενθύμισης", + "Add reminder" : "Προσθήκη υπενθύμισης", "_second_::_seconds_" : ["δευτερόλεπτο","δευτερόλεπτα"], "_minute_::_minutes_" : ["λεπτό","λεπτά"], "_hour_::_hours_" : ["ώρα","ώρες"], "_day_::_days_" : ["ημέρα","ημέρες"], "_week_::_weeks_" : ["εβδομάδα","εβδομάδες"], - "No reminders yet" : "Δεν υπάρχουν ακόμα υπενθυμίσεις", + "No attachments" : "Χωρίς συνημμένα", + "Add from Files" : "Προσθήκη από τα Αρχεία", + "Upload from device" : "Μεταφόρτωση από συσκευή", + "Delete file" : "Διαγραφή αρχείου", + "Choose a file to add as attachment" : "Επιλέξτε ένα αρχείο για να προσθέσετε ως συνημμένο", + "Choose a file to share as a link" : "Επιλέξτε ένα αρχείο για κοινή χρήση ως σύνδεσμο", + "Attachment {name} already exist!" : "Το συνημμένο {name} υπάρχει ήδη", + "_{count} attachment_::_{count} attachments_" : ["{count} συνημμένo","{count} συνημμένα"], + "Invitation accepted" : "Η πρόσκληση έγινε αποδεκτή.", + "Available" : "Διαθέσιμα", + "Suggested" : "Προτεινόμενο", + "Participation marked as tentative" : "Η συμμετοχή χαρακτηρίστηκε ως με επιφύλαξη", + "Accepted {organizerName}'s invitation" : "Αποδοχή της πρόσκλησης του/της {organizerName}", + "Not available" : "Δεν είναι διαθέσιμο", + "Invitation declined" : "Η πρόσκληση απορρίφθηκε.", + "Declined {organizerName}'s invitation" : "Απόρριψη της πρόσκλησης του {organizerName}", + "Invitation is delegated" : "Η πρόσκληση παραπέμφθηκε", + "Checking availability" : "Έλεγχος διαθεσιμότητας", + "Invitation sent" : "Η πρόσκληση εστάλη", + "Has not responded to {organizerName}'s invitation yet" : "Δεν έχετε απαντήσει ακόμα στην πρόσκληση του/της {organizerName}", "Availability of attendees, resources and rooms" : "Διαθεσιμότητα των συμμετεχόντων, των πόρων και των δωματίων", - "Busy (tentative)" : "Απασχολημένο (δοκιμαστικό)", + "{organizer} (organizer)" : "{organizer} (διοργανωτής)", + "Free" : "Ελεύθερος", + "Busy (tentative)" : "Απασχολημένος (με επιφύλαξη)", "Busy" : "Απασχολημένος", "Out of office" : "Εκτός γραφείου", "Unknown" : "Άγνωστο", - "{name} accepted your invitation." : "Ο {name} αποδέχτηκε την πρόσκλησή σας.", - "{name} accepted {organizerName}'s invitation." : "Ο {name} αποδέχτηκε την πρόσκλησή {organizerName}'s", - "{name} declined your invitation." : "Ο {name} απέρριψε την πρόσκλησή σας.", - "{name} declined {organizerName}'s invitation." : "Ο {name} απέρριψε την πρόσκλησή {organizerName}'s", - "{name} has delegated their invitation." : "Ο {name} έχει αναθέσει την πρόσκλησή τους.", - "{name} marked their participation as tentative." : "Ο {name} σημείωσε τη συμμετοχή τους ως δοκιμαστική.", - "{name} did not respond to your invitation yet." : "Ο {name} δεν αντέδρασε στην πρόσκλησή σας ακόμη.", - "{name} did not respond to {organizerName}'s invitation yet." : "Ο {name} δεν αντέδρασε στην πρόσκλησή του {organizerName}'s ακόμη.", + "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" : "Εμφάνιση ωρών ως απασχολημένων ", + "Show busy times" : "Εμφάνιση απασχολημένων ωρών", + "No attendees yet" : "Δεν υπάρχουν ακόμη συμμετέχοντες", "Successfully appended link to talk room to description." : "Ο σύνδεσμος στο δωμάτιο Talk προστέθηκε με επιτυχία στην περιγραφή.", "Error creating Talk room" : "Σφάλμα δημιουργίας δωματίου Talk", - "Send e-mail" : "Αποστολή e-mail", + "Send email" : "Αποστολή email", "Chairperson" : "Επικεφαλής", "Required participant" : "Απαιτείται συμμετοχή", "Optional participant" : "Προαιρετική συμμετοχή", "Non-participant" : "Μη-συμμετέχοντας", "Remove attendee" : "Κατάργηση του συμμετέχοντα", - "Search for e-mails, users, contacts, resources or rooms" : "Αναζητήστε μηνύματα ηλεκτρονικού ταχυδρομείου, χρήστες, επαφές, πόρους ή δωμάτια", + "Search for emails, users or contacts" : "Αναζήτηση για ηλ. διευθύνσεις, χρήστες ή επαφές", "No match found" : "Δεν βρέθηκε αποτέλεσμα.", - "No attendees 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" : "Ολοήμερο", - "Can not 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 {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" : "ποτέ", "on date" : "την ημερομηνία", "after" : "μετά", "_time_::_times_" : ["φορά","φορές"], - "This event is the recurrence-exception of a recurrence-set. You can not 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" : "τέταρτο", @@ -187,25 +342,37 @@ OC.L10N.register( "second to last" : "προτελευταίο", "last" : "τελευταίο", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Οι αλλαγές στον κανόνα-επανάληψης θα ισχύουν μόνο για αυτό και για όλα τα μελλοντικά συμβάντα.", - "Repeat" : "Επανάληψη", "Repeat every" : "Επανάληψη κάθε", "By day of the month" : "Την ημέρα του μήνα", "On the" : "Στο", "_month_::_months_" : ["μήνας","μήνες"], "_year_::_years_" : ["έτος","έτη"], - "Monday" : "Δευτέρα", "weekday" : "καθημερινή", "weekend day" : "ημέρα Σαββατοκύριακου", - "Summary" : "Σύνοψη", + "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" : "Προτάσεις", + "No rooms or resources yet" : "Κανένα δωμάτιο ή πόροι ακόμα", + "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" : "μη διαθέσιμο", + "Room type" : "Τύπος δωματίου", + "Any" : "Οποιοδήποτε", + "Minimum seating capacity" : "Ελάχιστος αριθμός θέσεων", "More" : "Περισσότερα", - "Save" : "Αποθήκευση", - "Update" : "Ενημέρωση", - "Update this occurrence" : "Ενημερώστε το περιστατικό", - "Update this and all future" : "Ενημερώστε αυτό και όλα τα σχετικά", - "Public calendar does not exist" : "Το κοινόχρηστο ημερολόγιο δεν υπάρχει", + "Update this occurrence" : "Ενημερώστε αυτό το περιστατικό", + "Update this and all future" : "Ενημερώστε αυτό και όλα τα μελλοντικά", + "Public calendar does not exist" : "Το δημόσιο ημερολόγιο δεν υπάρχει", "Maybe the share was deleted or has expired?" : "Ίσως το κοινόχρηστο διαγράφηκε ή δεν υπάρχει;", - "Please select a timezone:" : "Παρακαλώ επιλέξτε χρονική ζώνη:", + "Please select a time zone:" : "Παρακαλούμε επιλέξτε χρονική ζώνη:", "Pick a time" : "Επιλογή χρόνου", "Pick a date" : "Επιλογή ημερομηνίας", "from {formattedDate}" : "από {formattedDate}", @@ -217,45 +384,53 @@ OC.L10N.register( "{formattedDate} at {formattedTime}" : "{formattedDate} στις {formattedTime}", "Please enter a valid date" : "Παρακαλώ εισάγετε έγκυρη ημερομηνία", "Please enter a valid date and time" : "Παρακαλώ εισάγετε έγκυρη ημερομηνία και ώρα", - "Type to search timezone" : "Πληκρολογίστε για αναζήτηση ζώνης ώρας", - "Personal" : "Προσωπικά", - "The automatic timezone detection determined your timezone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your timezone manually in the calendar settings." : "Η αυτόματη επιλογή ζώνης ώρας καθορίστηκε σε UTC.\nΑυτό συμβαίνει συνήθως λόγω ρυθμίσεων ασφαλείας του περιηγητή σας.\nΠαρακαλώ επιλέξτε ζώνη ώρας χειροκίνητα από τις ρυθμίσεις ημερολογίου.", - "Your configured timezone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your timezone in the settings and report this issue." : "Η ζώνη ώρας ({timezoneId}) που καθορίσατε δεν βρέθηκε. Επιστροφή σε UTC.\nΠαρακαλώ αλλαξτε την ζώνη ώρας σας από τις ρυθμίσεις και αναφέρετε το σφάλμα.", - "No more events today" : "Δεν υπάρχουν άλλα γεγονότα για σήμερα", - "No upcoming events" : "Κανένα προσεχές συμβάν", + "Type to search time zone" : "Πληκτρολογήστε για αναζήτηση χρονικής ζώνης", + "Global" : "Καθολικό", + "By {authors}" : "Από {authors}", + "Subscribed" : "Εγγεγραμμένα", + "Subscribe" : "Εγγραφή", + "Holidays in {region}" : "Αργίες σε {region}", + "Select date" : "Επιλέξτε ημερομηνία", + "Select slot" : "Επιλογή θέσης", + "No slots available" : "Καμμια διαθέσιμη θέση", + "The slot for your appointment has been confirmed" : "H θέση σας για το ραντεβού σας έχει επιβεβαιωθεί", + "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} to {endDate} δεν είναι διαθέσιμο πιά.", + "Please book a different slot:" : "Παρακαλώ καντε κράτηση σε διαφορετικό κενό:", + "Book an appointment with {name}" : "Κάντε κράτηση για ραντεβού με τον/την {name}", + "No public appointments found for {name}" : "Δεν βρέθηκαν ραντεβού για τον/την {name}", + "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Παρακαλούμε αλλάξτε τη χρονική ζώνη σας από τις ρυθμίσεις και αναφέρετε το σφάλμα.", "Create a new event" : "Δημιουργία νέου γεγονότος", "[Today]" : "[Σήμερα]", "[Tomorrow]" : "[Αύριο]", "[Yesterday]" : "[Χθες]", "[Last] dddd" : "[Last] ηηηη", "Event does not exist" : "Δεν υπάρχει το γεγονός", + "Duplicate" : "Διπλότυπο", "Delete this occurrence" : "Διαγράψτε το περιστατικό", - "Delete this and all future" : "Διαγράψτε αυτό και όλα τα σχετικά", + "Delete this and all future" : "Διαγράψτε αυτό και όλα τα μελλοντικά", "Details" : "Λεπτομέρειες", + "Managing shared access" : "Διαχείριση κοινής πρόσβασης", + "Deny access" : "Άρνηση πρόσβασης", + "Invite" : "Πρόσκληση", "Attendees" : "Συμμετέχοντες", - "Reminders" : "Υπενθυμίσεις", + "Resources" : "Πηγές", + "_User requires access to your file_::_Users require access to your file_" : ["Ο χρήστης απαιτεί πρόσβαση στο αρχείο σας","Οι χρήστες χρειάζονται πρόσβαση στο αρχείο σας"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Συνημμένο που απαιτεί κοινόχρηστη πρόσβαση","Συνημμένα που απαιτούν κοινόχρηστη πρόσβαση"], "Close" : "Κλείσιμο", "Show more details" : "Δείτε περισσότερες λεπτομέρειες", "Subscribe to {name}" : "Εγγραφείτε στον {name}", - "Download {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" : "Το γεγονός ξεκινά μεσάνυχτα", + "Export {name}" : "Εξαγωγη {name}", + "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 week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n εβδομάδα πριν το γεγονός σε {formattedHourMinute}","%n εβδομάδες πριν το γεγονός σε {formattedHourMinute}"], - "on the day of the event at {formattedHourMinute}" : "την ημέρα της εκδήλωσης στο {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} πριν την έναρξη του γεγονότος", @@ -284,14 +459,7 @@ OC.L10N.register( "Untitled event" : "Συμβάν χωρίς τίτλο", "Untitled task" : "Εργασία χωρίς όνομα", "Please ask your administrator to enable the Tasks App." : "Παρακαλώ ζητήστε από τον διαχειριστή την ενεργοποίηση της εφαρμογής Εργασίες.", - "prev" : "προηγούμενο", - "next" : "επόμενο", - "prev year" : "προηγούμενος χρόνος", - "next year" : "επόμενος χρόνος", - "today" : "σήμερα", - "list" : "λίστα", - "W" : "W", - "all-day" : "Ολοήμερο", + "W" : "Εβδ", "%n more" : "%n επιπλέον", "No events to display" : "Κανένα γεγονός για εμφάνιση", "_+%n more_::_+%n more_" : ["+ %n επιπλέον","+ %n επιπλέον"], @@ -299,62 +467,92 @@ OC.L10N.register( "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" : "Χώρος σεμιναρίων", + "Other" : "Άλλο", "When shared show" : "Εμφάνιση με τον διαμοιρασμό", "When shared show full event" : "Προβολή πλήρους συμβάντος, όταν κοινοποιείται", - "When shared show only busy" : "Προβολή μόνο απασχολημένων, όταν κοινοποιείται", + "When shared show only busy" : "Όταν είναι σε κοινή χρήση να προβάλλονται μόνο απασχολημένοι ", "When shared hide this event" : "Απόκρυψη αυτού του συμβάντος, όταν κοινοποιείται", - "The visibility of this event in shared calendars." : "Η αμφάνιση του γεγονότος στα ημερολόγια κοινής χρήσης.", - "Location" : "Τοποθεσία", + "The visibility of this event in shared calendars." : "Η ορατότητα του γεγονότος στα ημερολόγια κοινής χρήσης.", "Add a location" : "Προσθήκη τοποθεσίας", - "Description" : "Περιγραφή", "Add a description" : "Προσθήκη περιγραφής", "Status" : "Κατάσταση", "Confirmed" : "Επιβεβαιώθηκε", - "Tentative" : "Δοκιμαστικό", "Canceled" : "Ακυρώθηκε", "Confirmation about the overall status of the event." : "Επιβεβαίωση της συνολικής κατάστασης του γεγονότος.", "Show as" : "Εμφάνιση ως", - "Take this event into account when calculating free-busy information." : "Κατά τον υπολογισμό των πληροφοριών που είναι εργασίας-ρεπό υπολόγισε και αυτό το γεγονός.", - "Free" : "Ελεύθερο", + "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" : "Χώρος μηνυμάτων για την εκδήλωση", - "Imported {filename}" : "Εισήχθει {filename}", + "Error while sharing file" : "Σφάλμα κατά τον διαμοιρασμό αρχείου", + "Error while sharing file with user" : "Σφάλμα κατά την κοινή χρήση του αρχείου με τον χρήστη", + "Attachment {fileName} already exists!" : "Το συνημμένο {name} υπάρχει ήδη!", + "An error occurred during getting file information" : "Εμφανίστηκε σφάλμα κατά τη λήψη πληροφοριών αρχείου", + "Chat room for event" : "Χώρος άμεσων μηνυμάτων για το γεγονός ", + "An error occurred, unable to delete the calendar." : "Παρουσιάστηκε σφάλμα, δεν δύναται να διαγραφή το ημερολόγιο.", + "Imported {filename}" : "Εισηγμένο {filename}", + "This is an event reminder." : "Αυτή είναι μια υπενθύμιση γεγονότος.", "Meditation" : "Διαλογισμός", "Relaxing" : "Χαλάρωση", "Relax" : "Ξεκούραση", + "Break" : "Διάλειμμα", + "Commute" : "Μετακίνηση προς την εργασία", + "Commuting" : "Μετακίνηση", + "Invoice" : "Tιμολόγιο", + "Finance" : "Χρηματοοικονομικά", + "Bank" : "Τράπεζα", + "Money" : "Χρήματα", + "Wedding" : "Γάμος", + "Dog" : "Σκύλος", + "Concert" : "Συναυλία", + "Festival" : "Φεστιβάλ", + "Theater" : "Θέατρο", + "Theatre" : "Θέατρο", "Presentation" : "Παρουσίαση", - "Present" : "Παρόν", + "Talk" : "Ομιλία", + "Speech" : "Λόγος", + "Deadline" : "Προθεσμία", + "Submission" : "Υποβολή", + "Reporting" : "Αναφορά", "Camping" : "Κατασκήνωση", "Camp" : "Κατασκήνωση", + "Election" : "Εκλογή", + "Voting" : "Ψηφοφορία", + "Vote" : "Ψήφος", + "Garden" : "Κήπος", + "Farm" : "Φάρμα", "Movie" : "Ταινία", "Cinema" : "Σινεμά", "Graduation" : "Αποφοίτηση", "Brainstorm" : "Καταιγισμός ιδεών", - "Baseball" : "Μπέισμπολ", + "Review" : "Επισκόπηση", + "Audit" : "Έλεγχος", + "Inspection" : "Επιθεώρηση", + "Proofreading" : "Γρήγορη ανάγνωση", + "Baseball" : "Μπέιζμπολ", "Meet" : "Συνάντηση", "Planning" : "Σχεδιασμός", "Pointing" : "Επισήμανση", "Retrospective" : "Αναδρομικά", - "Review" : "Επισκόπηση", "Office" : "Γραφείο", "Contributor week" : "Εβδομάδα συνεργάτη", - "Party" : "Πάρτυ", - "Celebration" : "Εορτασμός", "Mail" : "Αλληλογραφία", "Soccer" : "Ποδόσφαιρο", "Football" : "Ποδόσφαιρο", "Gaming" : "Παιχνίδια", - "Play" : "Αναπαραγωγή", - "Game" : "Παιχνίδι", "Drive" : "Οδήγηση", + "Driving" : "Οδήγηση", "Bicycle" : "Ποδήλατο", "Cycle" : "Cycle", + "Cycling" : "Ποδηλασία", "Biking" : "Ποδηλασία", + "Bike" : "Ποδήλατο", "Podcast" : "Podcast", "Basketball" : "Μπάσκετ", "Fishing" : "Ψάρεμα", @@ -365,21 +563,26 @@ OC.L10N.register( "Museum" : "Μουσείο", "Pilates" : "Πιλάτες", "Park" : "Πάρκο", - "Studying" : "Μελετώντας", + "Walk" : "Περίπατος", + "Studying" : "Μελέτη", "Doctor" : "Ιατρός", "Health" : "Υγεία", "Dentist" : "Οδοντίατρος", + "Hospital" : "Νοσοκομείο", "Interview" : "Συνέντευξη", - "Training" : "Εκπαίδευση", + "Training" : "Training", "Practice" : "Πρακτική", "Sports" : "Αθλήματα", "Exercise" : "Ασκηση", - "Work out" : "Άθληση", - "Working out" : "Εκτέλεση", + "Work out" : "Work out", + "Working out" : "Working out", "Gym" : "Γυμναστήριο", "Barber" : "Μπαρμπέρης", "Haircut" : "Κόμμωση", + "Hairdresser" : "Κουρείο", "Exam" : "Εξετάσεις", + "Written test" : "Γραπτή εξέταση", + "Oral test" : "Προφορική εξέταση", "Working" : "Εργαζόμενος", "New Years Eve" : "Πρωτοχρονιά", "NYE" : "Νέα χρονιά", @@ -395,23 +598,30 @@ OC.L10N.register( "Call" : "Κλήση", "Calling" : "Σε κλήση", "Christmas" : "Χριστούγεννα", - "Conference" : "Τηλεδιάσκεψη", + "Conference" : "Διάσκεψη", "Pizza" : "Πίτσα", "Travelling" : "Ταξιδεύοντας", + "Trip" : "Εκδρομή", "Journey" : "Διαδρομή", "Collaborate" : "Συνεργασία", "Pair" : "Ζεύγος", - "Lecture" : "Ανάγνωση", + "Lecture" : "Διάλεξη", "Seminar" : "Σεμινάριο", + "Teaching" : "Διδασκαλία", "Photograph" : "Φωτογραφία", + "Party" : "Πάρτυ", + "Celebration" : "Εορτασμός", "Celebrate" : "Εορτασμός", + "Birthday" : "Γενέθλια", "Shopping" : "Ψώνια", + "Groceries" : "Ψώνια", "Skate" : "Πατινάζ", "Skateboard" : "Skateboard", "Wine tasting" : "Γευσιγνωσία κρασιού", "Golf" : "Γκόλφ", "Dinner" : "Δείπνο", "Lunch" : "Γεύμα", - "Global" : "Καθολικό" + "Appointment not found" : "Το ραντεβού δεν βρέθηκε", + "User not found" : "Ο/Η χρήστης δεν βρέθηκε" }, "nplurals=2; plural=(n != 1);"); diff --git a/l10n/el.json b/l10n/el.json index d7016afb00..f962f52420 100644 --- a/l10n/el.json +++ b/l10n/el.json @@ -1,15 +1,56 @@ { "translations": { - "User-Session unexpectedly expired" : "Η σύνδεση-χρήστη έληξε απότομα", + "User-Session unexpectedly expired" : "Η συνεδρία-χρήστη έληξε απότομα", "Provided email-address is not valid" : "Η διεύθυνση email δεν είναι έγκυρη", - "%s has published the calendar »%s«" : "Ο %s έχει δημοσιεύσει το ημερολόγιο »%s«", + "%s has published the calendar »%s«" : "Ο/η %s έχει δημοσιεύσει το ημερολόγιο »%s«", "Unexpected error sending email. Please contact your administrator." : "Απροσδόκητο σφάλμα στην αποστολή email. Παρακαλώ επικοινωνήστε με τον διαχειριστή.", - "Successfully sent email to " : "Επιτυχής αποστολή email σε", + "Successfully sent email to %1$s" : "Επιτυχής αποστολή email %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" : "Προσεχή γεγονότα", + "More events" : "Περισσότερα γεγονότα", + "No more events today" : "Δεν υπάρχουν άλλα γεγονότα για σήμερα", + "No upcoming 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" : "Επιβεβαιώνω", + "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." : "Εάν τελικά θέλετε να ακυρώσετε το ραντεβού, επικοινωνήστε με τον διοργανωτή απαντώντας σε αυτό το 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:" : "Που:", + "Comment:" : "Σχόλιο:", + "You have a new appointment booking \"%s\" from %s" : "Έχετε μια νέα κράτηση για το ραντεβού \"%s\" από τον/την %s", + "Dear %s, %s (%s) booked an appointment with you." : "Αγαπητέ/ή %s, %s (%s) έκανε κράτηση σε ένα ραντεβού σας.", + "Anniversary" : "Επέτειος", + "Appointment" : "Ραντεβού", + "Business" : "Επιχείρηση", + "Education" : "Εκπαίδευση", + "Holiday" : "Διακοπές", + "Meeting" : "Συνάντηση", + "Miscellaneous" : "Διάφορα", + "Non-working hours" : "Μη εργάσιμες ώρες", + "Not in office" : "Εκτός γραφείου", + "Personal" : "Προσωπικά", + "Phone call" : "Τηλεφωνική κλήση", + "Sick day" : "Ημέρα ανάρρωσης", + "Special occasion" : "Ειδική περίπτωση", + "Travel" : "Ταξίδι", + "Vacation" : "Διακοπές", "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" : "Προηγούμενη ημέρα", @@ -17,78 +58,109 @@ "Previous month" : "Προηγούμενος μήνας", "Next day" : "Επόμενη ημέρα", "Next week" : "Επόμενη εβδομάδα", + "Next year" : "Επόμενο έτος", "Next month" : "Επόμενος μήνας", - "+ New event" : "+ Νέο γεγονός", + "Event" : "Συιμβάν", + "Create new event" : "Δημιουργία νέου συμβάντος", "Today" : "Σήμερα", "Day" : "Ημέρα", "Week" : "Εβδομάδα", "Month" : "Μήνας", + "Year" : "Έτος", "List" : "Λίστα", - "Untitled calendar" : "Ημερολόγιο χωρίς τίτλο", - "Edit name" : "Επεξεργασία ονόματος", - "Saving name …" : "Αποθήκευση ονόματος …", - "Edit color" : "Επεξεργασία χρώματος", - "Saving color …" : "Αποθήκευση χρώματος …", - "Copy private link" : "Αντιγραφή ιδιωτικού συνδέσμου", - "Download" : "Λήψη", - "Unshare from me" : "Διακοπή διαμοιρασμού με εμένα", + "Preview" : "Προεπισκόπηση", + "Copy link" : "Αντιγραφή συνδέσμου", + "Edit" : "Επεξεργασία", "Delete" : "Διαγραφή", + "Appointment link was copied to clipboard" : "Ο σύνδεσμος του ραντεβού αντιγράφηκε στο πρόχειρο.", + "Appointment link could not be copied to clipboard" : "Δεν ήταν δυνατή η αντιγραφή του συνδέσμου ραντεβού στο πρόχειρο.", + "Add new" : "Προσθήκη νέου", + "Untitled calendar" : "Ημερολόγιο χωρίς τίτλο", + "Shared with you by" : "Διαμοιρασμένα μαζί σας από", + "Edit and share calendar" : "Επεξεργασία και κοινή χρήση ημερολογίου", + "Edit calendar" : "Επεξεργασία ημερολογίου", + "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." : "Παρουσιάστηκε σφάλμα, δεν δύναται να διαγραφή το ημερολόγιο.", + "_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} δευτερόλεπτα"], + "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://)", + "Copy subscription link" : "Αντιγραφή συνδέσμου συνδρομής", + "Copying link …" : "Αντιγραφή συνδέσμου '...'", + "Copied link" : "Αντιγραμμένος σύνδεσμος", + "Could not copy link" : "Ο σύνδεσμος δεν μπορεί να αντιγραφεί", + "Export" : "Εξαγωγή", "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} δεύτερα","Αφαίρεση κοινής χρήσης ημερολογίου σε {countdown} δεύτερα"], - "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Διαγραφή ημερολογίου σε {countdown} δεύτερα","Διαγραφή ημερολογίου σε {countdown} δεύτερα"], + "Trash bin" : "Κάδος απορριμμάτων", + "Loading deleted items." : "Φόρτωση διαγραμμένων στοιχείων.", + "You do not have any deleted items." : "Δεν έχετε διαγραμμένα στοιχεία.", + "Name" : "Όνομα", + "Deleted" : "Διαγράφηκε", + "Restore" : "Επαναφορά", + "Delete permanently" : "Οριστική διαγραφή", + "Empty trash bin" : "Άδειασμα κάδου", + "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?" : "Θέλετε να αδειάσετε τον κάδο απορριμμάτων;", + "_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." : "Δεν μπορεί να γίνει ενημέρωση εντολών ημερολογίου.", + "Internal link" : "Εσωτερικός σύνδεσμος", + "A private link that can be used with external clients" : "Ένας ιδιωτικός σύνδεσμος που μπορεί να χρησιμοποιηθεί με τρίτες εφαρμογές", + "Copy internal link" : "Αντιγραφή εσωτερικού συνδέσμου", "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" : "Αντεγραμένος κώδικας", + "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." : "Ο ενσωματωμένος κώδικας δεν μπορεί να αντιγραφή στο πρόχειρο.", + "Embed code could not be copied to clipboard." : "Ο ενσωματωμένος κώδικας δεν μπορεί να αντιγραφεί στο πρόχειρο.", "Unpublishing calendar failed" : "Η κατάργηση δημοσιευμένου ημερολογίου απέτυχε", - "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 while unsharing 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://)", - "Could not update calendar order." : "Δεν μπορεί να γίνει ενημέρωση εντολών ημερολογίου.", + "Share with users or groups" : "Κοινή χρήση με χρήστες ή ομάδες", + "No users or groups" : "Δεν υπάρχουν χρήστες ή ομάδες", + "Calendar name …" : "Όνομα ημερολογίου …", + "Share calendar" : "Κοινή χρήση ημερολογίου", + "Unshare from me" : "Διακοπή διαμοιρασμού με εμένα", + "Save" : "Αποθήκευση", + "Failed to save calendar name and color" : "Απέτυχε η αποθήκευση του ονόματος και του χρώματος του ημερολογίου", "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_" : ["Εισαγωγή ημερολογίου","Εισαγωγή ημερολογίων"], - "{filename} is an unsupported file-type" : "το {filename} είναι μη υποστηριζόμενος τύπος-αρχείου", + "Default attachments location" : "Προεπιλεγμένη τοποθεσία συνημμένων", + "Select the default location for attachments" : "Επιλέξτε την προεπιλεγμένη θέση για τα συνημμένα", + "Invalid location selected" : "Επιλέχθηκε μη έγκυρη τοποθεσία", + "Attachments folder successfully saved." : "Ο φάκελος συνημμένων αποθηκεύτηκε με επιτυχία.", + "Error on saving attachments folder." : "Σφάλμα κατά την αποθήκευση του φακέλου συνημμένων.", "{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 γεγονότων"], + "_Successfully imported %n event_::_Successfully imported %n events_" : ["Επιτυχής εισαγωγή %n συμβάν","Επιτυχής εισαγωγή %n συμβάντων"], "Automatic" : "Αυτόματο", "Automatic ({detected})" : "Αυτόματα ({detected})", "New setting was not saved successfully." : "Οι νέες ρυθμίσεις δεν αποθηκεύτηκαν επιτυχώς.", @@ -101,21 +173,80 @@ "Day view" : "Εμφάνιση ημέρας", "Week view" : "Εμφάνιση εβδομάδας", "Month view" : "Εμφάνιση μήνα", + "List view" : "Προβολή λίστας", "Actions" : "Ενέργειες", "Create event" : "Δημιουργία συμβάντος", "Show shortcuts" : "Εμφάνιση συντομεύσεων", + "Editor" : "Επεξεργαστής", + "Close editor" : "Κλείσιμο του επεξεργαστή", + "Save edited event" : "Αποθήκευση επεξεργασμένης εκδήλωσης", + "Delete edited event" : "Διαγραφή επεξεργασμένης εκδήλωσης", + "Duplicate event" : "Αντιγραφή εκδήλωσης", "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 reminder" : "Προεπιλεγμένη υπενθύμιση", "Copy primary CalDAV address" : "Αντιγραφή κύριας διεύθυνσης CalDAV", "Copy iOS/macOS CalDAV address" : "Αντιγραφή διεύθυνσης iOS/macOS CalDAV", + "Personal availability settings" : "Ρυθμίσεις προσωπικής διαθεσιμότητας", "Show keyboard shortcuts" : "Εμφάνιση συντομεύσεων πληκτρολογίου", - "Settings & import" : "Ρυθμίσεις & εισαγωγή", + "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} ώρες"], + "_{duration} day_::_{duration} days_" : ["{duration} ημέρα","{duration} ημέρες"], + "_{duration} week_::_{duration} weeks_" : ["{duration} εβδομάδα","{duration} εβδομάδες"], + "_{duration} month_::_{duration} months_" : ["{duration} μήνα","{duration} μήνες"], + "_{duration} year_::_{duration} years_" : ["{duration} χρόνο","{duration} χρόνια"], + "To configure appointments, add your email address in personal settings." : "Για να ρυθμίσετε τα ραντεβού σας, προσθέστε την διεύθυνση email στις προσωπικές ρυθμίσεις", + "Public – shown on the profile page" : "Δημόσιο - εμφανίζεται στο προφίλ", + "Private – only accessible via secret link" : "Ιδιωτικό - προσβάσιμο μόνο μέσω κρυφού συνδέσμου", + "Appointment name" : "Όνομα ραντεβού", + "Location" : "Τοποθεσία", + "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" : "Τρίτη", + "Wednesday" : "Τετάρτη", + "Thursday" : "Πέμπτη", + "Friday" : "Παρασκευή", + "Saturday" : "Σάββατο", + "Sunday" : "Κυριακή", + "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" : "Επεξεργασία ραντεβού", + "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" : "Υπενθύμιση", "before at" : "πριν από το", "Notification" : "Ειδοποίηση", "Email" : "Ηλ. ταχυδρομείο", @@ -129,55 +260,79 @@ "on" : "σε", "at" : "στις", "+ Add reminder" : "+ Προσθήκη υπενθύμισης", + "Add reminder" : "Προσθήκη υπενθύμισης", "_second_::_seconds_" : ["δευτερόλεπτο","δευτερόλεπτα"], "_minute_::_minutes_" : ["λεπτό","λεπτά"], "_hour_::_hours_" : ["ώρα","ώρες"], "_day_::_days_" : ["ημέρα","ημέρες"], "_week_::_weeks_" : ["εβδομάδα","εβδομάδες"], - "No reminders yet" : "Δεν υπάρχουν ακόμα υπενθυμίσεις", + "No attachments" : "Χωρίς συνημμένα", + "Add from Files" : "Προσθήκη από τα Αρχεία", + "Upload from device" : "Μεταφόρτωση από συσκευή", + "Delete file" : "Διαγραφή αρχείου", + "Choose a file to add as attachment" : "Επιλέξτε ένα αρχείο για να προσθέσετε ως συνημμένο", + "Choose a file to share as a link" : "Επιλέξτε ένα αρχείο για κοινή χρήση ως σύνδεσμο", + "Attachment {name} already exist!" : "Το συνημμένο {name} υπάρχει ήδη", + "_{count} attachment_::_{count} attachments_" : ["{count} συνημμένo","{count} συνημμένα"], + "Invitation accepted" : "Η πρόσκληση έγινε αποδεκτή.", + "Available" : "Διαθέσιμα", + "Suggested" : "Προτεινόμενο", + "Participation marked as tentative" : "Η συμμετοχή χαρακτηρίστηκε ως με επιφύλαξη", + "Accepted {organizerName}'s invitation" : "Αποδοχή της πρόσκλησης του/της {organizerName}", + "Not available" : "Δεν είναι διαθέσιμο", + "Invitation declined" : "Η πρόσκληση απορρίφθηκε.", + "Declined {organizerName}'s invitation" : "Απόρριψη της πρόσκλησης του {organizerName}", + "Invitation is delegated" : "Η πρόσκληση παραπέμφθηκε", + "Checking availability" : "Έλεγχος διαθεσιμότητας", + "Invitation sent" : "Η πρόσκληση εστάλη", + "Has not responded to {organizerName}'s invitation yet" : "Δεν έχετε απαντήσει ακόμα στην πρόσκληση του/της {organizerName}", "Availability of attendees, resources and rooms" : "Διαθεσιμότητα των συμμετεχόντων, των πόρων και των δωματίων", - "Busy (tentative)" : "Απασχολημένο (δοκιμαστικό)", + "{organizer} (organizer)" : "{organizer} (διοργανωτής)", + "Free" : "Ελεύθερος", + "Busy (tentative)" : "Απασχολημένος (με επιφύλαξη)", "Busy" : "Απασχολημένος", "Out of office" : "Εκτός γραφείου", "Unknown" : "Άγνωστο", - "{name} accepted your invitation." : "Ο {name} αποδέχτηκε την πρόσκλησή σας.", - "{name} accepted {organizerName}'s invitation." : "Ο {name} αποδέχτηκε την πρόσκλησή {organizerName}'s", - "{name} declined your invitation." : "Ο {name} απέρριψε την πρόσκλησή σας.", - "{name} declined {organizerName}'s invitation." : "Ο {name} απέρριψε την πρόσκλησή {organizerName}'s", - "{name} has delegated their invitation." : "Ο {name} έχει αναθέσει την πρόσκλησή τους.", - "{name} marked their participation as tentative." : "Ο {name} σημείωσε τη συμμετοχή τους ως δοκιμαστική.", - "{name} did not respond to your invitation yet." : "Ο {name} δεν αντέδρασε στην πρόσκλησή σας ακόμη.", - "{name} did not respond to {organizerName}'s invitation yet." : "Ο {name} δεν αντέδρασε στην πρόσκλησή του {organizerName}'s ακόμη.", + "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" : "Εμφάνιση ωρών ως απασχολημένων ", + "Show busy times" : "Εμφάνιση απασχολημένων ωρών", + "No attendees yet" : "Δεν υπάρχουν ακόμη συμμετέχοντες", "Successfully appended link to talk room to description." : "Ο σύνδεσμος στο δωμάτιο Talk προστέθηκε με επιτυχία στην περιγραφή.", "Error creating Talk room" : "Σφάλμα δημιουργίας δωματίου Talk", - "Send e-mail" : "Αποστολή e-mail", + "Send email" : "Αποστολή email", "Chairperson" : "Επικεφαλής", "Required participant" : "Απαιτείται συμμετοχή", "Optional participant" : "Προαιρετική συμμετοχή", "Non-participant" : "Μη-συμμετέχοντας", "Remove attendee" : "Κατάργηση του συμμετέχοντα", - "Search for e-mails, users, contacts, resources or rooms" : "Αναζητήστε μηνύματα ηλεκτρονικού ταχυδρομείου, χρήστες, επαφές, πόρους ή δωμάτια", + "Search for emails, users or contacts" : "Αναζήτηση για ηλ. διευθύνσεις, χρήστες ή επαφές", "No match found" : "Δεν βρέθηκε αποτέλεσμα.", - "No attendees 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" : "Ολοήμερο", - "Can not 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 {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" : "ποτέ", "on date" : "την ημερομηνία", "after" : "μετά", "_time_::_times_" : ["φορά","φορές"], - "This event is the recurrence-exception of a recurrence-set. You can not 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" : "τέταρτο", @@ -185,25 +340,37 @@ "second to last" : "προτελευταίο", "last" : "τελευταίο", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Οι αλλαγές στον κανόνα-επανάληψης θα ισχύουν μόνο για αυτό και για όλα τα μελλοντικά συμβάντα.", - "Repeat" : "Επανάληψη", "Repeat every" : "Επανάληψη κάθε", "By day of the month" : "Την ημέρα του μήνα", "On the" : "Στο", "_month_::_months_" : ["μήνας","μήνες"], "_year_::_years_" : ["έτος","έτη"], - "Monday" : "Δευτέρα", "weekday" : "καθημερινή", "weekend day" : "ημέρα Σαββατοκύριακου", - "Summary" : "Σύνοψη", + "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" : "Προτάσεις", + "No rooms or resources yet" : "Κανένα δωμάτιο ή πόροι ακόμα", + "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" : "μη διαθέσιμο", + "Room type" : "Τύπος δωματίου", + "Any" : "Οποιοδήποτε", + "Minimum seating capacity" : "Ελάχιστος αριθμός θέσεων", "More" : "Περισσότερα", - "Save" : "Αποθήκευση", - "Update" : "Ενημέρωση", - "Update this occurrence" : "Ενημερώστε το περιστατικό", - "Update this and all future" : "Ενημερώστε αυτό και όλα τα σχετικά", - "Public calendar does not exist" : "Το κοινόχρηστο ημερολόγιο δεν υπάρχει", + "Update this occurrence" : "Ενημερώστε αυτό το περιστατικό", + "Update this and all future" : "Ενημερώστε αυτό και όλα τα μελλοντικά", + "Public calendar does not exist" : "Το δημόσιο ημερολόγιο δεν υπάρχει", "Maybe the share was deleted or has expired?" : "Ίσως το κοινόχρηστο διαγράφηκε ή δεν υπάρχει;", - "Please select a timezone:" : "Παρακαλώ επιλέξτε χρονική ζώνη:", + "Please select a time zone:" : "Παρακαλούμε επιλέξτε χρονική ζώνη:", "Pick a time" : "Επιλογή χρόνου", "Pick a date" : "Επιλογή ημερομηνίας", "from {formattedDate}" : "από {formattedDate}", @@ -215,45 +382,53 @@ "{formattedDate} at {formattedTime}" : "{formattedDate} στις {formattedTime}", "Please enter a valid date" : "Παρακαλώ εισάγετε έγκυρη ημερομηνία", "Please enter a valid date and time" : "Παρακαλώ εισάγετε έγκυρη ημερομηνία και ώρα", - "Type to search timezone" : "Πληκρολογίστε για αναζήτηση ζώνης ώρας", - "Personal" : "Προσωπικά", - "The automatic timezone detection determined your timezone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your timezone manually in the calendar settings." : "Η αυτόματη επιλογή ζώνης ώρας καθορίστηκε σε UTC.\nΑυτό συμβαίνει συνήθως λόγω ρυθμίσεων ασφαλείας του περιηγητή σας.\nΠαρακαλώ επιλέξτε ζώνη ώρας χειροκίνητα από τις ρυθμίσεις ημερολογίου.", - "Your configured timezone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your timezone in the settings and report this issue." : "Η ζώνη ώρας ({timezoneId}) που καθορίσατε δεν βρέθηκε. Επιστροφή σε UTC.\nΠαρακαλώ αλλαξτε την ζώνη ώρας σας από τις ρυθμίσεις και αναφέρετε το σφάλμα.", - "No more events today" : "Δεν υπάρχουν άλλα γεγονότα για σήμερα", - "No upcoming events" : "Κανένα προσεχές συμβάν", + "Type to search time zone" : "Πληκτρολογήστε για αναζήτηση χρονικής ζώνης", + "Global" : "Καθολικό", + "By {authors}" : "Από {authors}", + "Subscribed" : "Εγγεγραμμένα", + "Subscribe" : "Εγγραφή", + "Holidays in {region}" : "Αργίες σε {region}", + "Select date" : "Επιλέξτε ημερομηνία", + "Select slot" : "Επιλογή θέσης", + "No slots available" : "Καμμια διαθέσιμη θέση", + "The slot for your appointment has been confirmed" : "H θέση σας για το ραντεβού σας έχει επιβεβαιωθεί", + "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} to {endDate} δεν είναι διαθέσιμο πιά.", + "Please book a different slot:" : "Παρακαλώ καντε κράτηση σε διαφορετικό κενό:", + "Book an appointment with {name}" : "Κάντε κράτηση για ραντεβού με τον/την {name}", + "No public appointments found for {name}" : "Δεν βρέθηκαν ραντεβού για τον/την {name}", + "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Παρακαλούμε αλλάξτε τη χρονική ζώνη σας από τις ρυθμίσεις και αναφέρετε το σφάλμα.", "Create a new event" : "Δημιουργία νέου γεγονότος", "[Today]" : "[Σήμερα]", "[Tomorrow]" : "[Αύριο]", "[Yesterday]" : "[Χθες]", "[Last] dddd" : "[Last] ηηηη", "Event does not exist" : "Δεν υπάρχει το γεγονός", + "Duplicate" : "Διπλότυπο", "Delete this occurrence" : "Διαγράψτε το περιστατικό", - "Delete this and all future" : "Διαγράψτε αυτό και όλα τα σχετικά", + "Delete this and all future" : "Διαγράψτε αυτό και όλα τα μελλοντικά", "Details" : "Λεπτομέρειες", + "Managing shared access" : "Διαχείριση κοινής πρόσβασης", + "Deny access" : "Άρνηση πρόσβασης", + "Invite" : "Πρόσκληση", "Attendees" : "Συμμετέχοντες", - "Reminders" : "Υπενθυμίσεις", + "Resources" : "Πηγές", + "_User requires access to your file_::_Users require access to your file_" : ["Ο χρήστης απαιτεί πρόσβαση στο αρχείο σας","Οι χρήστες χρειάζονται πρόσβαση στο αρχείο σας"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Συνημμένο που απαιτεί κοινόχρηστη πρόσβαση","Συνημμένα που απαιτούν κοινόχρηστη πρόσβαση"], "Close" : "Κλείσιμο", "Show more details" : "Δείτε περισσότερες λεπτομέρειες", "Subscribe to {name}" : "Εγγραφείτε στον {name}", - "Download {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" : "Το γεγονός ξεκινά μεσάνυχτα", + "Export {name}" : "Εξαγωγη {name}", + "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 week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n εβδομάδα πριν το γεγονός σε {formattedHourMinute}","%n εβδομάδες πριν το γεγονός σε {formattedHourMinute}"], - "on the day of the event at {formattedHourMinute}" : "την ημέρα της εκδήλωσης στο {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} πριν την έναρξη του γεγονότος", @@ -282,14 +457,7 @@ "Untitled event" : "Συμβάν χωρίς τίτλο", "Untitled task" : "Εργασία χωρίς όνομα", "Please ask your administrator to enable the Tasks App." : "Παρακαλώ ζητήστε από τον διαχειριστή την ενεργοποίηση της εφαρμογής Εργασίες.", - "prev" : "προηγούμενο", - "next" : "επόμενο", - "prev year" : "προηγούμενος χρόνος", - "next year" : "επόμενος χρόνος", - "today" : "σήμερα", - "list" : "λίστα", - "W" : "W", - "all-day" : "Ολοήμερο", + "W" : "Εβδ", "%n more" : "%n επιπλέον", "No events to display" : "Κανένα γεγονός για εμφάνιση", "_+%n more_::_+%n more_" : ["+ %n επιπλέον","+ %n επιπλέον"], @@ -297,62 +465,92 @@ "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" : "Χώρος σεμιναρίων", + "Other" : "Άλλο", "When shared show" : "Εμφάνιση με τον διαμοιρασμό", "When shared show full event" : "Προβολή πλήρους συμβάντος, όταν κοινοποιείται", - "When shared show only busy" : "Προβολή μόνο απασχολημένων, όταν κοινοποιείται", + "When shared show only busy" : "Όταν είναι σε κοινή χρήση να προβάλλονται μόνο απασχολημένοι ", "When shared hide this event" : "Απόκρυψη αυτού του συμβάντος, όταν κοινοποιείται", - "The visibility of this event in shared calendars." : "Η αμφάνιση του γεγονότος στα ημερολόγια κοινής χρήσης.", - "Location" : "Τοποθεσία", + "The visibility of this event in shared calendars." : "Η ορατότητα του γεγονότος στα ημερολόγια κοινής χρήσης.", "Add a location" : "Προσθήκη τοποθεσίας", - "Description" : "Περιγραφή", "Add a description" : "Προσθήκη περιγραφής", "Status" : "Κατάσταση", "Confirmed" : "Επιβεβαιώθηκε", - "Tentative" : "Δοκιμαστικό", "Canceled" : "Ακυρώθηκε", "Confirmation about the overall status of the event." : "Επιβεβαίωση της συνολικής κατάστασης του γεγονότος.", "Show as" : "Εμφάνιση ως", - "Take this event into account when calculating free-busy information." : "Κατά τον υπολογισμό των πληροφοριών που είναι εργασίας-ρεπό υπολόγισε και αυτό το γεγονός.", - "Free" : "Ελεύθερο", + "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" : "Χώρος μηνυμάτων για την εκδήλωση", - "Imported {filename}" : "Εισήχθει {filename}", + "Error while sharing file" : "Σφάλμα κατά τον διαμοιρασμό αρχείου", + "Error while sharing file with user" : "Σφάλμα κατά την κοινή χρήση του αρχείου με τον χρήστη", + "Attachment {fileName} already exists!" : "Το συνημμένο {name} υπάρχει ήδη!", + "An error occurred during getting file information" : "Εμφανίστηκε σφάλμα κατά τη λήψη πληροφοριών αρχείου", + "Chat room for event" : "Χώρος άμεσων μηνυμάτων για το γεγονός ", + "An error occurred, unable to delete the calendar." : "Παρουσιάστηκε σφάλμα, δεν δύναται να διαγραφή το ημερολόγιο.", + "Imported {filename}" : "Εισηγμένο {filename}", + "This is an event reminder." : "Αυτή είναι μια υπενθύμιση γεγονότος.", "Meditation" : "Διαλογισμός", "Relaxing" : "Χαλάρωση", "Relax" : "Ξεκούραση", + "Break" : "Διάλειμμα", + "Commute" : "Μετακίνηση προς την εργασία", + "Commuting" : "Μετακίνηση", + "Invoice" : "Tιμολόγιο", + "Finance" : "Χρηματοοικονομικά", + "Bank" : "Τράπεζα", + "Money" : "Χρήματα", + "Wedding" : "Γάμος", + "Dog" : "Σκύλος", + "Concert" : "Συναυλία", + "Festival" : "Φεστιβάλ", + "Theater" : "Θέατρο", + "Theatre" : "Θέατρο", "Presentation" : "Παρουσίαση", - "Present" : "Παρόν", + "Talk" : "Ομιλία", + "Speech" : "Λόγος", + "Deadline" : "Προθεσμία", + "Submission" : "Υποβολή", + "Reporting" : "Αναφορά", "Camping" : "Κατασκήνωση", "Camp" : "Κατασκήνωση", + "Election" : "Εκλογή", + "Voting" : "Ψηφοφορία", + "Vote" : "Ψήφος", + "Garden" : "Κήπος", + "Farm" : "Φάρμα", "Movie" : "Ταινία", "Cinema" : "Σινεμά", "Graduation" : "Αποφοίτηση", "Brainstorm" : "Καταιγισμός ιδεών", - "Baseball" : "Μπέισμπολ", + "Review" : "Επισκόπηση", + "Audit" : "Έλεγχος", + "Inspection" : "Επιθεώρηση", + "Proofreading" : "Γρήγορη ανάγνωση", + "Baseball" : "Μπέιζμπολ", "Meet" : "Συνάντηση", "Planning" : "Σχεδιασμός", "Pointing" : "Επισήμανση", "Retrospective" : "Αναδρομικά", - "Review" : "Επισκόπηση", "Office" : "Γραφείο", "Contributor week" : "Εβδομάδα συνεργάτη", - "Party" : "Πάρτυ", - "Celebration" : "Εορτασμός", "Mail" : "Αλληλογραφία", "Soccer" : "Ποδόσφαιρο", "Football" : "Ποδόσφαιρο", "Gaming" : "Παιχνίδια", - "Play" : "Αναπαραγωγή", - "Game" : "Παιχνίδι", "Drive" : "Οδήγηση", + "Driving" : "Οδήγηση", "Bicycle" : "Ποδήλατο", "Cycle" : "Cycle", + "Cycling" : "Ποδηλασία", "Biking" : "Ποδηλασία", + "Bike" : "Ποδήλατο", "Podcast" : "Podcast", "Basketball" : "Μπάσκετ", "Fishing" : "Ψάρεμα", @@ -363,21 +561,26 @@ "Museum" : "Μουσείο", "Pilates" : "Πιλάτες", "Park" : "Πάρκο", - "Studying" : "Μελετώντας", + "Walk" : "Περίπατος", + "Studying" : "Μελέτη", "Doctor" : "Ιατρός", "Health" : "Υγεία", "Dentist" : "Οδοντίατρος", + "Hospital" : "Νοσοκομείο", "Interview" : "Συνέντευξη", - "Training" : "Εκπαίδευση", + "Training" : "Training", "Practice" : "Πρακτική", "Sports" : "Αθλήματα", "Exercise" : "Ασκηση", - "Work out" : "Άθληση", - "Working out" : "Εκτέλεση", + "Work out" : "Work out", + "Working out" : "Working out", "Gym" : "Γυμναστήριο", "Barber" : "Μπαρμπέρης", "Haircut" : "Κόμμωση", + "Hairdresser" : "Κουρείο", "Exam" : "Εξετάσεις", + "Written test" : "Γραπτή εξέταση", + "Oral test" : "Προφορική εξέταση", "Working" : "Εργαζόμενος", "New Years Eve" : "Πρωτοχρονιά", "NYE" : "Νέα χρονιά", @@ -393,23 +596,30 @@ "Call" : "Κλήση", "Calling" : "Σε κλήση", "Christmas" : "Χριστούγεννα", - "Conference" : "Τηλεδιάσκεψη", + "Conference" : "Διάσκεψη", "Pizza" : "Πίτσα", "Travelling" : "Ταξιδεύοντας", + "Trip" : "Εκδρομή", "Journey" : "Διαδρομή", "Collaborate" : "Συνεργασία", "Pair" : "Ζεύγος", - "Lecture" : "Ανάγνωση", + "Lecture" : "Διάλεξη", "Seminar" : "Σεμινάριο", + "Teaching" : "Διδασκαλία", "Photograph" : "Φωτογραφία", + "Party" : "Πάρτυ", + "Celebration" : "Εορτασμός", "Celebrate" : "Εορτασμός", + "Birthday" : "Γενέθλια", "Shopping" : "Ψώνια", + "Groceries" : "Ψώνια", "Skate" : "Πατινάζ", "Skateboard" : "Skateboard", "Wine tasting" : "Γευσιγνωσία κρασιού", "Golf" : "Γκόλφ", "Dinner" : "Δείπνο", "Lunch" : "Γεύμα", - "Global" : "Καθολικό" + "Appointment not found" : "Το ραντεβού δεν βρέθηκε", + "User not found" : "Ο/Η χρήστης δεν βρέθηκε" },"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 4ec9f60a04..be0620d665 100644 --- a/l10n/en_GB.js +++ b/l10n/en_GB.js @@ -1,69 +1,645 @@ 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", + "More events" : "More events", + "No more events today" : "No more events today", + "No upcoming events" : "No upcoming 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", + "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.", + "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", + "Personal" : "Personal", + "Phone call" : "Phone call", + "Sick day" : "Sick day", + "Special occasion" : "Special occasion", + "Travel" : "Travel", + "Vacation" : "Vacation", + "Custom Categories" : "Custom Categories", + "Collaborative Tags" : "Collaborative Tags", + "Standard Categories" : "Standard Categories", "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 favourite 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.", + "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", + "Event" : "Event", + "Create new event" : "Create new event", "Today" : "Today", "Day" : "Day", "Week" : "Week", "Month" : "Month", + "Year" : "Year", "List" : "List", - "Download" : "Download", + "Preview" : "Preview", + "Copy link" : "Copy link", + "Edit" : "Edit", "Delete" : "Delete", + "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", + "Add new" : "Add new", + "Untitled calendar" : "Untitled calendar", + "Shared with you by" : "Shared with you by", + "Edit and share calendar" : "Edit and share calendar", + "Edit calendar" : "Edit calendar", + "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.", + "_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"], + "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", + "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://)", + "Copy subscription link" : "Copy subscription link", + "Copying link …" : "Copying link …", + "Copied link" : "Copied link", + "Could not copy link" : "Could not copy link", + "Export" : "Export", + "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.", + "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", + "Untitled item" : "Untitled item", + "Unknown calendar" : "Unknown calendar", + "Could not load deleted calendars and objects" : "Could not load deleted calendars and objects", + "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?", + "_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.", + "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", "Share link" : "Share link", - "Share with users or groups" : "Share with users or groups", + "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, 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", "can edit" : "can edit", - "New calendar" : "New calendar", + "Unshare with {displayName}" : "Unshare with {displayName}", + "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.", + "Share with users or groups" : "Share with users or groups", + "No users or groups" : "No users or groups", + "Calendar name …" : "Calendar name …", + "Share calendar" : "Share calendar", + "Unshare from me" : "Unshare from me", + "Save" : "Save", + "Failed to save calendar name and color" : "Failed to save calendar name and colour", + "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"], + "Default attachments location" : "Default attachments location", + "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.", + "{filename} could not be parsed" : "{filename} could not be parsed", + "No valid files found, aborting import" : "No valid files found, aborting import", + "Import partially failed. Imported {accepted} out of {total}." : "Import partially failed. Imported {accepted} out of {total}.", + "_Successfully imported %n event_::_Successfully imported %n events_" : ["Successfully imported %n event","Successfully imported %n events"], "Automatic" : "Automatic", + "Automatic ({detected})" : "Automatic ({detected})", + "New setting was not saved successfully." : "New setting was not saved successfully.", + "Shortcut overview" : "Shortcut overview", "or" : "or", + "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", + "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", - "Settings & import" : "Settings & import", + "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", + "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.", + "Appointment was created successfully" : "Appointment was created successfully", + "Appointment was updated successfully" : "Appointment was updated successfully", + "_{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 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", + "Create appointment" : "Create appointment", + "Edit appointment" : "Edit appointment", + "Update" : "Update", + "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.", + "Book the appointment" : "Book the appointment", + "Reminder" : "Reminder", + "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", + "on" : "on", + "at" : "at", + "+ Add reminder" : "+ Add reminder", + "Add reminder" : "Add reminder", + "_second_::_seconds_" : ["second","seconds"], + "_minute_::_minutes_" : ["minute","minutes"], + "_hour_::_hours_" : ["hour","hours"], + "_day_::_days_" : ["day","days"], + "_week_::_weeks_" : ["week","weeks"], + "No attachments" : "No attachments", + "Add from Files" : "Add from Files", + "Upload from device" : "Upload from device", + "Delete file" : "Delete file", + "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!", + "_{count} attachment_::_{count} attachments_" : ["{count} attachment","{count} attachments"], + "Invitation accepted" : "Invitation accepted", + "Available" : "Available", + "Suggested" : "Suggested", + "Participation marked as tentative" : "Participation marked as tentative", + "Accepted {organizerName}'s invitation" : "Accepted {organizerName}'s invitation", + "Not available" : "Not available", + "Invitation declined" : "Invitation declined", + "Declined {organizerName}'s invitation" : "Declined {organizerName}'s invitation", + "Invitation is delegated" : "Invitation is delegated", + "Checking availability" : "Checking availability", + "Invitation sent" : "Invitation sent", + "Has not responded to {organizerName}'s invitation yet" : "Has not responded to {organizerName}'s invitation yet", + "Availability of attendees, resources and rooms" : "Availability of attendees, resources and rooms", + "{organizer} (organizer)" : "{organizer} (organiser)", + "Free" : "Free", + "Busy (tentative)" : "Busy (tentative)", "Busy" : "Busy", + "Out of office" : "Out of office", "Unknown" : "Unknown", + "Accept" : "Accept", + "Decline" : "Decline", + "Tentative" : "Tentative", + "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.", + "Create Talk room for this event" : "Create Talk room for this event", + "Show busy times" : "Show busy times", + "No attendees yet" : "No attendees yet", + "You don't own this calendar, so you cannot add attendees to this event" : "You don't own this calendar, so you cannot add attendees to this event", + "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", + "Send email" : "Send email", + "Chairperson" : "Chairperson", + "Required participant" : "Required participant", + "Optional participant" : "Optional participant", + "Non-participant" : "Non-participant", + "Remove attendee" : "Remove attendee", + "Search for emails, users or contacts" : "Search for emails, users or contacts", + "No match found" : "No match found", + "(organizer)" : "(organiser)", + "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", "All day" : "All day", + "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 {startDate}" : "from {startDate}", + "from {startDate} at {startTime}" : "from {startDate} at {startTime}", + "to {endDate}" : "to {endDate}", + "to {endDate} at {endTime}" : "to {endDate} at {endTime}", + "Repeat" : "Repeat", + "End repeat" : "End repeat", + "Select to end repeat" : "Select to end repeat", "never" : "never", + "on date" : "on date", "after" : "after", - "Repeat" : "Repeat", - "Monday" : "Monday", - "Summary" : "Summary", + "_time_::_times_" : ["time","times"], + "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", + "third" : "third", + "fourth" : "fourth", + "fifth" : "fifth", + "second to last" : "second to last", + "last" : "last", + "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", + "_month_::_months_" : ["month","months"], + "_year_::_years_" : ["year","years"], + "weekday" : "weekday", + "weekend day" : "weekend day", + "No recurrence" : "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." : "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost.", + "Suggestions" : "Suggestions", + "No rooms or resources yet" : "No rooms or resources yet", + "Add resource" : "Add resource", + "Has a projector" : "Has a projector", + "Has a whiteboard" : "Has a whiteboard", + "Wheelchair accessible" : "Wheelchair accessible", + "Remove resource" : "Remove resource", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} seat","{seatingCapacity} seats"], + "Projector" : "Projector", + "Whiteboard" : "Whiteboard", + "Search for resources or rooms" : "Search for resources or rooms", + "available" : "available", + "unavailable" : "unavailable", + "Room type" : "Room type", + "Any" : "Any", + "Minimum seating capacity" : "Minimum seating capacity", "More" : "More", - "Save" : "Save", - "Update" : "Update", - "Personal" : "Personal", + "Update this occurrence" : "Update this occurrence", + "Update this and all future" : "Update this and all future", + "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?", + "Please select a time zone:" : "Please select a time zone:", + "Pick a time" : "Pick a time", + "Pick a date" : "Pick a date", + "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", + "Type to search time zone" : "Type to search time zone", + "Global" : "Global", + "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" : "Subscribe", + "Holidays in {region}" : "Holidays in {region}", + "An error occurred, unable to create the public holiday calendar." : "An error occurred, unable to create the public holiday calendar.", + "Select date" : "Select date", + "Select slot" : "Select slot", + "No slots available" : "No slots available", + "Could not fetch slots" : "Could not fetch slots", + "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}", + "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.", + "Create a new event" : "Create a new event", + "[Today]" : "[Today]", + "[Tomorrow]" : "[Tomorrow]", + "[Yesterday]" : "[Yesterday]", + "[Last] dddd" : "[Last] dddd", + "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", "Details" : "Details", + "Managing shared access" : "Managing shared access", + "Deny access" : "Deny access", + "Invite" : "Invite", "Attendees" : "Attendees", - "Reminders" : "Reminders", + "Resources" : "Resources", + "_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"], "Close" : "Close", - "Anniversary" : "Anniversary", + "Show more details" : "Show more details", + "Subscribe to {name}" : "Subscribe to {name}", + "Export {name}" : "Export {name}", + "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}", + "Does not repeat" : "Does not repeat", "Daily" : "Daily", "Weekly" : "Weekly", - "next year" : "next year", - "today" : "today", + "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}" : "in {monthNames}", + "in {monthNames} on the {ordinalNumber} {byDaySet}" : "in {monthNames} on the {ordinalNumber} {byDaySet}", + "until {untilDate}" : "until {untilDate}", + "_%n time_::_%n times_" : ["%n time","%n times"], + "Untitled event" : "Untitled event", + "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", - "Location" : "Location", - "Description" : "Description", + "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" : "Add a description", "Status" : "Status", "Confirmed" : "Confirmed", - "Tentative" : "Tentative", + "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", + "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", + "Attachment {fileName} already exists!" : "Attachment {fileName} already exists!", + "An error occurred during getting file information" : "An error occurred during getting file information", + "Chat room for event" : "Chat room 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.", + "Meditation" : "Meditation", + "Relaxing" : "Relaxing", + "Relax" : "Relax", + "Break" : "Break", + "Commute" : "Commute", + "Commuting" : "Commuting", + "Shuttle" : "Shuttle", + "Invoice" : "Invoice", + "Finance" : "Finance", + "Bank" : "Bank", + "Money" : "Money", + "Wedding" : "Wedding", + "Dog" : "Dog", + "Concert" : "Concert", + "Festival" : "Festival", + "Theater" : "Theater", + "Theatre" : "Theatre", "Presentation" : "Presentation", + "Talk" : "Talk", + "Speech" : "Speech", + "Deadline" : "Deadline", + "Submission" : "Submission", + "Reporting" : "Reporting", + "Camping" : "Camping", + "Camp" : "Camp", + "Election" : "Election", + "Voting" : "Voting", + "Vote" : "Vote", + "Barbecue" : "Barbecue", + "Barbeque" : "Barbeque", + "Garden" : "Garden", + "Farm" : "Farm", + "Movie" : "Movie", + "Cinema" : "Cinema", + "Graduation" : "Graduation", + "Brainstorm" : "Brainstorm", "Review" : "Review", + "Audit" : "Audit", + "Inspection" : "Inspection", + "Proofreading" : "Proofreading", + "Baseball" : "Baseball", + "Meet" : "Meet", + "Planning" : "Planning", + "Pointing" : "Pointing", + "Retrospective" : "Retrospective", "Office" : "Office", + "Contributor week" : "Contributor week", "Mail" : "Mail", - "Play" : "Play", - "Global" : "Global" + "Soccer" : "Soccer", + "Football" : "Football", + "Gaming" : "Gaming", + "Drive" : "Drive", + "Driving" : "Driving", + "Bicycle" : "Bicycle", + "Cycle" : "Cycle", + "Cycling" : "Cycling", + "Biking" : "Biking", + "Bike" : "Bike", + "Podcast" : "Podcast", + "Basketball" : "Basketball", + "Fishing" : "Fishing", + "Hiking" : "Hiking", + "Hike" : "Hike", + "Art" : "Art", + "Exhibition" : "Exhibition", + "Museum" : "Museum", + "Pilates" : "Pilates", + "Park" : "Park", + "Walk" : "Walk", + "Studying" : "Studying", + "Doctor" : "Doctor", + "Health" : "Health", + "Dentist" : "Dentist", + "Hospital" : "Hospital", + "Interview" : "Interview", + "Training" : "Training", + "Practice" : "Practice", + "Sports" : "Sports", + "Exercise" : "Exercise", + "Work out" : "Work out", + "Working out" : "Working out", + "Gym" : "Gym", + "Barber" : "Barber", + "Haircut" : "Haircut", + "Hairdresser" : "Hairdresser", + "Exam" : "Exam", + "Written test" : "Written test", + "Oral test" : "Oral test", + "Working" : "Working", + "New Years Eve" : "New Years Eve", + "NYE" : "NYE", + "Fireworks" : "Fireworks", + "Running" : "Running", + "Go for a run" : "Go for a run", + "Marathon" : "Marathon", + "Video-conference" : "Video-conference", + "Conference-call" : "Conference-call", + "Video-call" : "Video-call", + "Video-chat" : "Video-chat", + "Video-meeting" : "Video-meeting", + "Call" : "Call", + "Calling" : "Calling", + "Christmas" : "Christmas", + "Conference" : "Conference", + "Pizza" : "Pizza", + "Travelling" : "Travelling", + "Trip" : "Trip", + "Journey" : "Journey", + "Collaborate" : "Collaborate", + "Pair" : "Pair", + "Lecture" : "Lecture", + "Seminar" : "Seminar", + "Teaching" : "Teaching", + "Photograph" : "Photograph", + "Party" : "Party", + "Celebration" : "Celebration", + "Celebrate" : "Celebrate", + "Birthday" : "Birthday", + "Shopping" : "Shopping", + "Groceries" : "Groceries", + "Skate" : "Skate", + "Skateboard" : "Skateboard", + "Wine tasting" : "Wine tasting", + "Golf" : "Golf", + "Dinner" : "Dinner", + "Lunch" : "Lunch", + "Appointment not found" : "Appointment not found", + "User not found" : "User not found" }, "nplurals=2; plural=(n != 1);"); diff --git a/l10n/en_GB.json b/l10n/en_GB.json index 640294b011..5fa5deaa48 100644 --- a/l10n/en_GB.json +++ b/l10n/en_GB.json @@ -1,67 +1,643 @@ { "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", + "More events" : "More events", + "No more events today" : "No more events today", + "No upcoming events" : "No upcoming 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", + "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.", + "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", + "Personal" : "Personal", + "Phone call" : "Phone call", + "Sick day" : "Sick day", + "Special occasion" : "Special occasion", + "Travel" : "Travel", + "Vacation" : "Vacation", + "Custom Categories" : "Custom Categories", + "Collaborative Tags" : "Collaborative Tags", + "Standard Categories" : "Standard Categories", "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 favourite 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.", + "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", + "Event" : "Event", + "Create new event" : "Create new event", "Today" : "Today", "Day" : "Day", "Week" : "Week", "Month" : "Month", + "Year" : "Year", "List" : "List", - "Download" : "Download", + "Preview" : "Preview", + "Copy link" : "Copy link", + "Edit" : "Edit", "Delete" : "Delete", + "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", + "Add new" : "Add new", + "Untitled calendar" : "Untitled calendar", + "Shared with you by" : "Shared with you by", + "Edit and share calendar" : "Edit and share calendar", + "Edit calendar" : "Edit calendar", + "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.", + "_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"], + "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", + "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://)", + "Copy subscription link" : "Copy subscription link", + "Copying link …" : "Copying link …", + "Copied link" : "Copied link", + "Could not copy link" : "Could not copy link", + "Export" : "Export", + "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.", + "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", + "Untitled item" : "Untitled item", + "Unknown calendar" : "Unknown calendar", + "Could not load deleted calendars and objects" : "Could not load deleted calendars and objects", + "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?", + "_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.", + "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", "Share link" : "Share link", - "Share with users or groups" : "Share with users or groups", + "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, 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", "can edit" : "can edit", - "New calendar" : "New calendar", + "Unshare with {displayName}" : "Unshare with {displayName}", + "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.", + "Share with users or groups" : "Share with users or groups", + "No users or groups" : "No users or groups", + "Calendar name …" : "Calendar name …", + "Share calendar" : "Share calendar", + "Unshare from me" : "Unshare from me", + "Save" : "Save", + "Failed to save calendar name and color" : "Failed to save calendar name and colour", + "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"], + "Default attachments location" : "Default attachments location", + "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.", + "{filename} could not be parsed" : "{filename} could not be parsed", + "No valid files found, aborting import" : "No valid files found, aborting import", + "Import partially failed. Imported {accepted} out of {total}." : "Import partially failed. Imported {accepted} out of {total}.", + "_Successfully imported %n event_::_Successfully imported %n events_" : ["Successfully imported %n event","Successfully imported %n events"], "Automatic" : "Automatic", + "Automatic ({detected})" : "Automatic ({detected})", + "New setting was not saved successfully." : "New setting was not saved successfully.", + "Shortcut overview" : "Shortcut overview", "or" : "or", + "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", + "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", - "Settings & import" : "Settings & import", + "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", + "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.", + "Appointment was created successfully" : "Appointment was created successfully", + "Appointment was updated successfully" : "Appointment was updated successfully", + "_{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 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", + "Create appointment" : "Create appointment", + "Edit appointment" : "Edit appointment", + "Update" : "Update", + "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.", + "Book the appointment" : "Book the appointment", + "Reminder" : "Reminder", + "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", + "on" : "on", + "at" : "at", + "+ Add reminder" : "+ Add reminder", + "Add reminder" : "Add reminder", + "_second_::_seconds_" : ["second","seconds"], + "_minute_::_minutes_" : ["minute","minutes"], + "_hour_::_hours_" : ["hour","hours"], + "_day_::_days_" : ["day","days"], + "_week_::_weeks_" : ["week","weeks"], + "No attachments" : "No attachments", + "Add from Files" : "Add from Files", + "Upload from device" : "Upload from device", + "Delete file" : "Delete file", + "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!", + "_{count} attachment_::_{count} attachments_" : ["{count} attachment","{count} attachments"], + "Invitation accepted" : "Invitation accepted", + "Available" : "Available", + "Suggested" : "Suggested", + "Participation marked as tentative" : "Participation marked as tentative", + "Accepted {organizerName}'s invitation" : "Accepted {organizerName}'s invitation", + "Not available" : "Not available", + "Invitation declined" : "Invitation declined", + "Declined {organizerName}'s invitation" : "Declined {organizerName}'s invitation", + "Invitation is delegated" : "Invitation is delegated", + "Checking availability" : "Checking availability", + "Invitation sent" : "Invitation sent", + "Has not responded to {organizerName}'s invitation yet" : "Has not responded to {organizerName}'s invitation yet", + "Availability of attendees, resources and rooms" : "Availability of attendees, resources and rooms", + "{organizer} (organizer)" : "{organizer} (organiser)", + "Free" : "Free", + "Busy (tentative)" : "Busy (tentative)", "Busy" : "Busy", + "Out of office" : "Out of office", "Unknown" : "Unknown", + "Accept" : "Accept", + "Decline" : "Decline", + "Tentative" : "Tentative", + "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.", + "Create Talk room for this event" : "Create Talk room for this event", + "Show busy times" : "Show busy times", + "No attendees yet" : "No attendees yet", + "You don't own this calendar, so you cannot add attendees to this event" : "You don't own this calendar, so you cannot add attendees to this event", + "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", + "Send email" : "Send email", + "Chairperson" : "Chairperson", + "Required participant" : "Required participant", + "Optional participant" : "Optional participant", + "Non-participant" : "Non-participant", + "Remove attendee" : "Remove attendee", + "Search for emails, users or contacts" : "Search for emails, users or contacts", + "No match found" : "No match found", + "(organizer)" : "(organiser)", + "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", "All day" : "All day", + "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 {startDate}" : "from {startDate}", + "from {startDate} at {startTime}" : "from {startDate} at {startTime}", + "to {endDate}" : "to {endDate}", + "to {endDate} at {endTime}" : "to {endDate} at {endTime}", + "Repeat" : "Repeat", + "End repeat" : "End repeat", + "Select to end repeat" : "Select to end repeat", "never" : "never", + "on date" : "on date", "after" : "after", - "Repeat" : "Repeat", - "Monday" : "Monday", - "Summary" : "Summary", + "_time_::_times_" : ["time","times"], + "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", + "third" : "third", + "fourth" : "fourth", + "fifth" : "fifth", + "second to last" : "second to last", + "last" : "last", + "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", + "_month_::_months_" : ["month","months"], + "_year_::_years_" : ["year","years"], + "weekday" : "weekday", + "weekend day" : "weekend day", + "No recurrence" : "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." : "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost.", + "Suggestions" : "Suggestions", + "No rooms or resources yet" : "No rooms or resources yet", + "Add resource" : "Add resource", + "Has a projector" : "Has a projector", + "Has a whiteboard" : "Has a whiteboard", + "Wheelchair accessible" : "Wheelchair accessible", + "Remove resource" : "Remove resource", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} seat","{seatingCapacity} seats"], + "Projector" : "Projector", + "Whiteboard" : "Whiteboard", + "Search for resources or rooms" : "Search for resources or rooms", + "available" : "available", + "unavailable" : "unavailable", + "Room type" : "Room type", + "Any" : "Any", + "Minimum seating capacity" : "Minimum seating capacity", "More" : "More", - "Save" : "Save", - "Update" : "Update", - "Personal" : "Personal", + "Update this occurrence" : "Update this occurrence", + "Update this and all future" : "Update this and all future", + "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?", + "Please select a time zone:" : "Please select a time zone:", + "Pick a time" : "Pick a time", + "Pick a date" : "Pick a date", + "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", + "Type to search time zone" : "Type to search time zone", + "Global" : "Global", + "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" : "Subscribe", + "Holidays in {region}" : "Holidays in {region}", + "An error occurred, unable to create the public holiday calendar." : "An error occurred, unable to create the public holiday calendar.", + "Select date" : "Select date", + "Select slot" : "Select slot", + "No slots available" : "No slots available", + "Could not fetch slots" : "Could not fetch slots", + "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}", + "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.", + "Create a new event" : "Create a new event", + "[Today]" : "[Today]", + "[Tomorrow]" : "[Tomorrow]", + "[Yesterday]" : "[Yesterday]", + "[Last] dddd" : "[Last] dddd", + "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", "Details" : "Details", + "Managing shared access" : "Managing shared access", + "Deny access" : "Deny access", + "Invite" : "Invite", "Attendees" : "Attendees", - "Reminders" : "Reminders", + "Resources" : "Resources", + "_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"], "Close" : "Close", - "Anniversary" : "Anniversary", + "Show more details" : "Show more details", + "Subscribe to {name}" : "Subscribe to {name}", + "Export {name}" : "Export {name}", + "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}", + "Does not repeat" : "Does not repeat", "Daily" : "Daily", "Weekly" : "Weekly", - "next year" : "next year", - "today" : "today", + "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}" : "in {monthNames}", + "in {monthNames} on the {ordinalNumber} {byDaySet}" : "in {monthNames} on the {ordinalNumber} {byDaySet}", + "until {untilDate}" : "until {untilDate}", + "_%n time_::_%n times_" : ["%n time","%n times"], + "Untitled event" : "Untitled event", + "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", - "Location" : "Location", - "Description" : "Description", + "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" : "Add a description", "Status" : "Status", "Confirmed" : "Confirmed", - "Tentative" : "Tentative", + "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", + "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", + "Attachment {fileName} already exists!" : "Attachment {fileName} already exists!", + "An error occurred during getting file information" : "An error occurred during getting file information", + "Chat room for event" : "Chat room 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.", + "Meditation" : "Meditation", + "Relaxing" : "Relaxing", + "Relax" : "Relax", + "Break" : "Break", + "Commute" : "Commute", + "Commuting" : "Commuting", + "Shuttle" : "Shuttle", + "Invoice" : "Invoice", + "Finance" : "Finance", + "Bank" : "Bank", + "Money" : "Money", + "Wedding" : "Wedding", + "Dog" : "Dog", + "Concert" : "Concert", + "Festival" : "Festival", + "Theater" : "Theater", + "Theatre" : "Theatre", "Presentation" : "Presentation", + "Talk" : "Talk", + "Speech" : "Speech", + "Deadline" : "Deadline", + "Submission" : "Submission", + "Reporting" : "Reporting", + "Camping" : "Camping", + "Camp" : "Camp", + "Election" : "Election", + "Voting" : "Voting", + "Vote" : "Vote", + "Barbecue" : "Barbecue", + "Barbeque" : "Barbeque", + "Garden" : "Garden", + "Farm" : "Farm", + "Movie" : "Movie", + "Cinema" : "Cinema", + "Graduation" : "Graduation", + "Brainstorm" : "Brainstorm", "Review" : "Review", + "Audit" : "Audit", + "Inspection" : "Inspection", + "Proofreading" : "Proofreading", + "Baseball" : "Baseball", + "Meet" : "Meet", + "Planning" : "Planning", + "Pointing" : "Pointing", + "Retrospective" : "Retrospective", "Office" : "Office", + "Contributor week" : "Contributor week", "Mail" : "Mail", - "Play" : "Play", - "Global" : "Global" + "Soccer" : "Soccer", + "Football" : "Football", + "Gaming" : "Gaming", + "Drive" : "Drive", + "Driving" : "Driving", + "Bicycle" : "Bicycle", + "Cycle" : "Cycle", + "Cycling" : "Cycling", + "Biking" : "Biking", + "Bike" : "Bike", + "Podcast" : "Podcast", + "Basketball" : "Basketball", + "Fishing" : "Fishing", + "Hiking" : "Hiking", + "Hike" : "Hike", + "Art" : "Art", + "Exhibition" : "Exhibition", + "Museum" : "Museum", + "Pilates" : "Pilates", + "Park" : "Park", + "Walk" : "Walk", + "Studying" : "Studying", + "Doctor" : "Doctor", + "Health" : "Health", + "Dentist" : "Dentist", + "Hospital" : "Hospital", + "Interview" : "Interview", + "Training" : "Training", + "Practice" : "Practice", + "Sports" : "Sports", + "Exercise" : "Exercise", + "Work out" : "Work out", + "Working out" : "Working out", + "Gym" : "Gym", + "Barber" : "Barber", + "Haircut" : "Haircut", + "Hairdresser" : "Hairdresser", + "Exam" : "Exam", + "Written test" : "Written test", + "Oral test" : "Oral test", + "Working" : "Working", + "New Years Eve" : "New Years Eve", + "NYE" : "NYE", + "Fireworks" : "Fireworks", + "Running" : "Running", + "Go for a run" : "Go for a run", + "Marathon" : "Marathon", + "Video-conference" : "Video-conference", + "Conference-call" : "Conference-call", + "Video-call" : "Video-call", + "Video-chat" : "Video-chat", + "Video-meeting" : "Video-meeting", + "Call" : "Call", + "Calling" : "Calling", + "Christmas" : "Christmas", + "Conference" : "Conference", + "Pizza" : "Pizza", + "Travelling" : "Travelling", + "Trip" : "Trip", + "Journey" : "Journey", + "Collaborate" : "Collaborate", + "Pair" : "Pair", + "Lecture" : "Lecture", + "Seminar" : "Seminar", + "Teaching" : "Teaching", + "Photograph" : "Photograph", + "Party" : "Party", + "Celebration" : "Celebration", + "Celebrate" : "Celebrate", + "Birthday" : "Birthday", + "Shopping" : "Shopping", + "Groceries" : "Groceries", + "Skate" : "Skate", + "Skateboard" : "Skateboard", + "Wine tasting" : "Wine tasting", + "Golf" : "Golf", + "Dinner" : "Dinner", + "Lunch" : "Lunch", + "Appointment not found" : "Appointment not found", + "User not found" : "User not found" },"pluralForm" :"nplurals=2; plural=(n != 1);" } \ No newline at end of file diff --git a/l10n/eo.js b/l10n/eo.js index 6ce58a9af0..4a62bf74d0 100644 --- a/l10n/eo.js +++ b/l10n/eo.js @@ -7,68 +7,95 @@ OC.L10N.register( "Open »%s«" : "Malfermi „%s“", "Cheers!" : "Ĝis!", "Calendar" : "Kalendaro", + "Confirm" : "Konfirmi", + "Date:" : "Dato:", + "Where:" : "Kie:", + "Anniversary" : "Datreveno", + "Personal" : "Persona", "A Calendar app for Nextcloud" : "Aplikaĵo pri kalendaro por Nextcloud", "Today" : "Hodiaŭ", "Day" : "Tago", "Week" : "Semajno", "Month" : "Monato", - "Copy private link" : "Kopii privatan ligilon", - "Download" : "Elŝuti", + "Preview" : "Antaŭvidi", + "Copy link" : "Kopii ligilon", + "Edit" : "Modifi", "Delete" : "Forigi", + "New calendar" : "Nova kalendaro", + "Export" : "Eksporti", "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", + "Name" : "Nomo", + "Deleted" : "Forigita", + "Restore" : "Restaŭri", + "Delete permanently" : "Forigi por ĉiam", + "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", - "can edit" : "povas redakti", - "New calendar" : "Nova kalendaro", + "Save" : "Konservi", "Filename" : "Dosiernomo", "Cancel" : "Nuligi", "Automatic" : "Aŭtomata", + "List view" : "Lista vido", "Actions" : "Agoj", "Show week numbers" : "Montri numerojn de semajno", - "Settings & import" : "Agordoj kaj enporto", + "Location" : "Loko", + "Description" : "Priskribo", + "to" : "al", + "Add" : "Aldoni", + "Monday" : "lundo", + "Tuesday" : "mardo", + "Wednesday" : "merkredo", + "Thursday" : "ĵaŭdo", + "Friday" : "vendredo", + "Saturday" : "sabato", + "Sunday" : "dimanĉo", + "Update" : "Ĝisdatigi", + "Your email address" : "Via retpoŝta adreso", + "Notification" : "Atentigo", "Email" : "Retpoŝto", + "Delete file" : "Forigi dosieron", + "Choose a file to add as attachment" : "Elektu dosieron aldonotan kiel kunsendaĵon", + "Available" : "Disponeblaj", "Busy" : "Okupita", "Unknown" : "Nekonata", + "Accept" : "Akcepti", + "Decline" : "Malakcepti", + "Tentative" : "Nekonfirmita", + "Send email" : "Sendi retpoŝtmesaĝon", "All day" : "Tuttage", + "Repeat" : "Ripeti", "never" : "neniam", "after" : "post", - "Repeat" : "Ripeti", - "Monday" : "lundo", - "Summary" : "Resumo", "More" : "Pli", - "Save" : "Konservi", - "Update" : "Ĝisdatigi", - "Personal" : "Persona", + "Global" : "Monda", + "Subscribe" : "Aboni", "[Today]" : "[Hodiaŭ]", "[Tomorrow]" : "[Morgaŭ]", "[Yesterday]" : "[Hieraŭ]", "Details" : "Detaloj", "Attendees" : "Ĉeestontoj", - "Reminders" : "Memorigoj", + "Resources" : "Rimedoj", "Close" : "Fermi", - "Anniversary" : "Datreveno", "Week {number} of {year}" : "Semajno {number} en {year}", "Daily" : "Ĉiutage", "Weekly" : "Ĉiusemajne", "Untitled event" : "Sentitola okazaĵo", - "next year" : "venontjare", - "today" : "hodiaŭ", + "Other" : "Alia", "When shared show full event" : "Kiam kunhavigita, montri plenajn detalojn", "When shared show only busy" : "Kiam kunhavigita, montri nur kiel okupita", "When shared hide this event" : "Kiam kunhavigita, kaŝi tiun okazaĵon", - "Location" : "Loko", - "Description" : "Priskribo", "Status" : "Stato", "Confirmed" : "Konfirmita", - "Tentative" : "Nekonfirmita", "Canceled" : "Nuligita", "Categories" : "Kategorioj", "Add this as a new category" : "Aldoni tion kiel novan kategorion", + "Talk" : "Paroli", "Mail" : "Retpoŝtilo", - "Play" : "Ludi", - "Global" : "Monda" + "Birthday" : "Naskiĝotago", + "User not found" : "Netrovita uzanto" }, "nplurals=2; plural=(n != 1);"); diff --git a/l10n/eo.json b/l10n/eo.json index cc0717b9d9..e57e7c9ca1 100644 --- a/l10n/eo.json +++ b/l10n/eo.json @@ -5,68 +5,95 @@ "Open »%s«" : "Malfermi „%s“", "Cheers!" : "Ĝis!", "Calendar" : "Kalendaro", + "Confirm" : "Konfirmi", + "Date:" : "Dato:", + "Where:" : "Kie:", + "Anniversary" : "Datreveno", + "Personal" : "Persona", "A Calendar app for Nextcloud" : "Aplikaĵo pri kalendaro por Nextcloud", "Today" : "Hodiaŭ", "Day" : "Tago", "Week" : "Semajno", "Month" : "Monato", - "Copy private link" : "Kopii privatan ligilon", - "Download" : "Elŝuti", + "Preview" : "Antaŭvidi", + "Copy link" : "Kopii ligilon", + "Edit" : "Modifi", "Delete" : "Forigi", + "New calendar" : "Nova kalendaro", + "Export" : "Eksporti", "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", + "Name" : "Nomo", + "Deleted" : "Forigita", + "Restore" : "Restaŭri", + "Delete permanently" : "Forigi por ĉiam", + "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", - "can edit" : "povas redakti", - "New calendar" : "Nova kalendaro", + "Save" : "Konservi", "Filename" : "Dosiernomo", "Cancel" : "Nuligi", "Automatic" : "Aŭtomata", + "List view" : "Lista vido", "Actions" : "Agoj", "Show week numbers" : "Montri numerojn de semajno", - "Settings & import" : "Agordoj kaj enporto", + "Location" : "Loko", + "Description" : "Priskribo", + "to" : "al", + "Add" : "Aldoni", + "Monday" : "lundo", + "Tuesday" : "mardo", + "Wednesday" : "merkredo", + "Thursday" : "ĵaŭdo", + "Friday" : "vendredo", + "Saturday" : "sabato", + "Sunday" : "dimanĉo", + "Update" : "Ĝisdatigi", + "Your email address" : "Via retpoŝta adreso", + "Notification" : "Atentigo", "Email" : "Retpoŝto", + "Delete file" : "Forigi dosieron", + "Choose a file to add as attachment" : "Elektu dosieron aldonotan kiel kunsendaĵon", + "Available" : "Disponeblaj", "Busy" : "Okupita", "Unknown" : "Nekonata", + "Accept" : "Akcepti", + "Decline" : "Malakcepti", + "Tentative" : "Nekonfirmita", + "Send email" : "Sendi retpoŝtmesaĝon", "All day" : "Tuttage", + "Repeat" : "Ripeti", "never" : "neniam", "after" : "post", - "Repeat" : "Ripeti", - "Monday" : "lundo", - "Summary" : "Resumo", "More" : "Pli", - "Save" : "Konservi", - "Update" : "Ĝisdatigi", - "Personal" : "Persona", + "Global" : "Monda", + "Subscribe" : "Aboni", "[Today]" : "[Hodiaŭ]", "[Tomorrow]" : "[Morgaŭ]", "[Yesterday]" : "[Hieraŭ]", "Details" : "Detaloj", "Attendees" : "Ĉeestontoj", - "Reminders" : "Memorigoj", + "Resources" : "Rimedoj", "Close" : "Fermi", - "Anniversary" : "Datreveno", "Week {number} of {year}" : "Semajno {number} en {year}", "Daily" : "Ĉiutage", "Weekly" : "Ĉiusemajne", "Untitled event" : "Sentitola okazaĵo", - "next year" : "venontjare", - "today" : "hodiaŭ", + "Other" : "Alia", "When shared show full event" : "Kiam kunhavigita, montri plenajn detalojn", "When shared show only busy" : "Kiam kunhavigita, montri nur kiel okupita", "When shared hide this event" : "Kiam kunhavigita, kaŝi tiun okazaĵon", - "Location" : "Loko", - "Description" : "Priskribo", "Status" : "Stato", "Confirmed" : "Konfirmita", - "Tentative" : "Nekonfirmita", "Canceled" : "Nuligita", "Categories" : "Kategorioj", "Add this as a new category" : "Aldoni tion kiel novan kategorion", + "Talk" : "Paroli", "Mail" : "Retpoŝtilo", - "Play" : "Ludi", - "Global" : "Monda" + "Birthday" : "Naskiĝotago", + "User not found" : "Netrovita uzanto" },"pluralForm" :"nplurals=2; plural=(n != 1);" } \ No newline at end of file diff --git a/l10n/es.js b/l10n/es.js index 032b0fa109..4a6e473714 100644 --- a/l10n/es.js +++ b/l10n/es.js @@ -1,59 +1,137 @@ 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 " : "Correo enviado correctamente", + "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«.", "Open »%s«" : "Abrir »%s«", "Cheers!" : "¡Saludos!", "Upcoming events" : "Próximos eventos", + "More events" : "Más eventos", + "No more events today" : "No hay más eventos hoy", + "No upcoming events" : "No hay eventos próximos", + "%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\" with %s needs confirmation" : "Su cita \"%s\" con %s necesita confirmación", + "Dear %s, please confirm your booking" : "Estimado %s, por favor confirma tu reserva", + "Confirm" : "Confirmar", + "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 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ás 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" : "Tienes una cita reservada \"%s\" por %s", + "Dear %s, %s (%s) booked an appointment with you." : "Estimado %s, %s (%s) ha reservado una cita contigo.", + "Anniversary" : "Aniversario", + "Appointment" : "Cita", + "Business" : "Empresa", + "Education" : "Educación", + "Holiday" : "Vacaciones", + "Meeting" : "Reunión", + "Miscellaneous" : "Varios", + "Non-working hours" : "Horario no laborable", + "Not in office" : "Fuera de la oficina", + "Personal" : "Personal", + "Phone call" : "Llamad de teléfono", + "Sick day" : "Estoy enfermo", + "Special occasion" : "Ocasión especial", + "Travel" : "Viaje", + "Vacation" : "Vacaciones", + "Custom Categories" : "Categorías Personalizadas", + "Collaborative Tags" : "Etiquetas Colaborativas", + "Standard Categories" : "Categorías Estándar", "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", + "Event" : "Evento", + "Create new event" : "Crear evento nuevo", "Today" : "Hoy", "Day" : "Día", "Week" : "Semana", "Month" : "Mes", + "Year" : "Año", "List" : "Lista", - "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", - "Download" : "Descargar", - "Unshare from me" : "Dejado de compartir por mí", + "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", + "Shared with you by" : "Compartida contigo por", + "Edit and share calendar" : "Editar y compartir calendario", + "Edit calendar" : "Editar calendario", + "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.", + "_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"], + "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…", + "Add public holiday calendar" : "Añadir calendario de días feriados públicos", + "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://)", + "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", "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.", - "_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"], - "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Borrando el calendario en {countdown} segundo","Eliminando el calendario en {countdown} segundos"], + "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", + "Empty trash bin" : "Vaciar papelera", + "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 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?", + "_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.", + "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", "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…", "Copied code" : "Código copiado", @@ -65,32 +143,32 @@ OC.L10N.register( "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.", "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 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.", - "+ New calendar" : "Nuevo calendario", - "New calendar" : "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://)", - "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.", + "Calendar name …" : "Nombre de calendario...", + "Share calendar" : "Compartir calendario", + "Unshare from me" : "Dejar de compartir conmigo", + "Save" : "Guardar", + "Failed to save calendar name and color" : "Fallo al guardar el nombre del calendario y el color", "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"], - "{filename} is an unsupported file-type" : "{filename} es un tipo de archivo no soportado", + "_Import calendar_::_Import calendars_" : ["Importar calendario","Importar calendarios","Importar calendarios"], + "Default attachments location" : "Ubicación por defecto de los adjuntos", + "Select the default location for attachments" : "Seleccione la ubicación por defecto para los adjuntos", + "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.", "{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."], + "_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."], "Automatic" : "Automático", "Automatic ({detected})" : "Automático ({detected})", "New setting was not saved successfully." : "El nuevo ajuste no ha podido ser guardado correctamente.", @@ -103,21 +181,83 @@ 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", "Show shortcuts" : "Mostrar atajos", + "Editor" : "Editor", + "Close editor" : "Cerrar editor", + "Save edited event" : "Guardar el evento editado", + "Delete edited event" : "Borrar el evento editado", + "Duplicate event" : "Evento duplicado", "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 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", - "Settings & import" : "Ajustes & importar", + "Calendar settings" : "Configuración del calendario", + "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", + "_{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 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 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", + "Increments" : "Incrementos", + "Additional calendars to check for conflicts" : "Calendarios adicionales sobre los que comprobar conflictos", + "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", + "Add" : "Añadir", + "Monday" : "Lunes", + "Tuesday" : "Martes", + "Wednesday" : "Miércoles", + "Thursday" : "Jueves", + "Friday" : "Viernes", + "Saturday" : "Sábado", + "Sunday" : "Domingo", + "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", + "Update" : "Actualizar", + "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", "before at" : "antes de las", "Notification" : "Notificación", "Email" : "Correo electrónico", @@ -131,55 +271,80 @@ OC.L10N.register( "on" : "activo", "at" : "a", "+ Add reminder" : "+ Añadir recordatorio", - "_second_::_seconds_" : ["segundo","segundos"], - "_minute_::_minutes_" : ["minuto","minutos"], - "_hour_::_hours_" : ["hora","horas"], - "_day_::_days_" : ["día","días"], - "_week_::_weeks_" : ["semana","semanas"], - "No reminders yet" : "Aún no hay recordatorios", + "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"], + "No attachments" : "Sin adjuntos", + "Add from Files" : "Añadir desde Archivos", + "Upload from device" : "Subir desde dispositivo", + "Delete file" : "Eliminar archivo", + "Choose a file to add as attachment" : "Escoja un archivo para adjuntar", + "Choose a file to share as a link" : "Escoge un archivo para compartir como enlace", + "Attachment {name} already exist!" : "¡El adjunto {name} ya existe!", + "_{count} attachment_::_{count} attachments_" : ["{count} adjunto","{count} adjuntos","{count} adjuntos"], + "Invitation accepted" : "Invitación aceptada", + "Available" : "Disponible", + "Suggested" : "Sugerido", + "Participation marked as tentative" : "Participación marcada como provisional", + "Accepted {organizerName}'s invitation" : "Aceptada la invitación de {organizerName}", + "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", + "Checking availability" : "Comprobando disponibilidad", + "Invitation sent" : "Invitación enviada", + "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", + "{organizer} (organizer)" : "{organizer} (organizador)", + "Free" : "Libre", "Busy (tentative)" : "Ocupado (provisional)", "Busy" : "Ocupado", "Out of office" : "Fuera de la oficina", "Unknown" : "Desconocido", - "{name} accepted your invitation." : "{name} ha aceptado su invitación.", - "{name} accepted {organizerName}'s invitation." : "{name} aceptó la invitación de {organizerName}.", - "{name} declined your invitation." : "{name} ha rechazado su invitación.", - "{name} declined {organizerName}'s invitation." : "{name} rechazó la invitación de {organizerName}.", - "{name} has delegated their invitation." : "{name} ha delegado su invitación.", - "{name} marked their participation as tentative." : "{name} marcó su participación como provisional.", - "{name} did not respond to your invitation yet." : "{name} todavía no ha contestado a su invitación.", - "{name} did not respond to {organizerName}'s invitation yet." : "{name} todavía no ha contestado a la invitación de {organizerName}.", + "Accept" : "Aceptar", + "Decline" : "Declinar", + "Tentative" : "Pendiente", + "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", + "No attendees yet" : "Aún no hay asistentes", + "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 e-mail" : "Enviar correo", + "Send email" : "Enviar email", "Chairperson" : "Presidente/a", "Required participant" : "Participante requerido", "Optional participant" : "Participante opcional", "Non-participant" : "No participa", "Remove attendee" : "Eliminar asistente", - "Search for e-mails, users, contacts, resources or rooms" : "Busque correos electrónicos, usuarios, contactos, recursos o salas", + "Search for emails, users or contacts" : "Buscar correos, usuarios o contactos", "No match found" : "No se ha encontrado ningún resultado", - "No attendees yet" : "Aún no hay asistentes", "(organizer)" : "(organizador)", "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", - "Can not 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 los eventos que forman parte de un conjunto de recurrencias.", + "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}", + "Repeat" : "Repetir", "End repeat" : "Finalizar repetición", "Select to end repeat" : "Seleccionar para finalizar la repetición", "never" : "nunca", "on date" : "en fecha", "after" : "después de", - "_time_::_times_" : ["vez","veces"], - "This event is the recurrence-exception of a recurrence-set. You can not add a recurrence-rule to it." : "Este evento es la excepción de recurrencia de un conjunto de recurrencia. No puede agregarle una regla de recurrencia.", + "_time_::_times_" : ["vez","veces","veces"], + "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", @@ -187,25 +352,37 @@ OC.L10N.register( "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" : "Repetir", "Repeat every" : "Repetir cada", "By day of the month" : "Por día del mes", "On the" : "En el", - "_month_::_months_" : ["mes","meses"], - "_year_::_years_" : ["año","años"], - "Monday" : "Lunes", + "_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", - "Summary" : "Resumen", + "No recurrence" : "No recurrente", "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", + "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", + "Room type" : "Tipo de sala", + "Any" : "Cualquiera", + "Minimum seating capacity" : "Capacidad mínima de los asientos", "More" : "Más", - "Save" : "Guardar", - "Update" : "Actualizar", "Update this occurrence" : "Actualiza esta ocurrencia", "Update this and all future" : "Actualiza esto y todo futuro", "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 timezone:" : "Por favor seleccione una 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", "from {formattedDate}" : "desde {formattedDate}", @@ -217,44 +394,55 @@ 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", - "Type to search timezone" : "Escribe para buscar la zona horaria", - "Personal" : "Personal", - "The automatic timezone detection determined your timezone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your timezone 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 timezone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your timezone 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", + "Type to search time zone" : "Escribe para buscar la zona horaria", + "Global" : "Global", + "Public holiday calendars" : "Calendarios de días feriados públicos", + "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}", + "By {authors}" : "Por {authors}", + "Subscribed" : "Suscrito", + "Subscribe" : "Suscribirse", + "Holidays in {region}" : "Días feriados en {region}", + "An error occurred, unable to create the public holiday calendar." : "Ocurrió un error, no fue posible crear el calendario de días feriados públicos.", + "Select date" : "Seleccionar 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", + "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 de {startDate} a {endDate} ha sido confirmada.", + "Book another appointment:" : "Reservar otra cita:", + "See all available slots" : "Ver todos los huecos disponibles", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "La hora de tu cita de {startDate} a {endDate} ya no está disponible.", + "Please book a different slot:" : "Por favor, reserva otra hora distinta:", + "Book an appointment with {name}" : "Reservar una cita con {name}", + "No public appointments found for {name}" : "No se han encontrado citas públicas para {name}", + "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.", "Create a new event" : "Crear un nuevo evento", "[Today]" : "[Hoy]", "[Tomorrow]" : "[Mañana]", "[Yesterday]" : "[Ayer]", "[Last] dddd" : "[Último] dddd", "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", + "Managing shared access" : "Administrando el acceso compartido", + "Deny access" : "Denegar acceso", + "Invite" : "Invitar", "Attendees" : "Asistentes", - "Reminders" : "Recordatorios", + "Resources" : "Recursos", + "_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"], "Close" : "Cerrar", "Show more details" : "Ver más detalles", "Subscribe to {name}" : "Subscribir a {name}", - "Download {name}" : "Descargar {name}", - "Anniversary" : "Aniversario", - "Appointment" : "Cita", - "Business" : "Empresa", - "Education" : "Educación", - "Holiday" : "Vacaciones", - "Meeting" : "Reunión", - "Miscellaneous" : "Varios", - "Non-working hours" : "Horario no laborable", - "Not in office" : "Fuera de la oficina", - "Phone call" : "Llamad de teléfono", - "Sick day" : "Estoy enfermo", - "Special occasion" : "Ocasión especial", - "Travel" : "Viaje", - "Vacation" : "Vacaciones", + "Export {name}" : "Exportar {name}", "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 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 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 final del evento", @@ -270,91 +458,117 @@ OC.L10N.register( "Weekly" : "Semanalmente", "Monthly" : "Mensualmente", "Yearly" : "Anualmente", - "_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}"], + "_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}"], "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 time_::_%n times_" : ["%n vez","%n veces","%n veces"], "Untitled event" : "Evento sin título", "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" : "ant", - "next" : "próx", - "prev year" : "año anterior", - "next year" : "año que viene", - "today" : "hoy", - "list" : "lista", "W" : "S", - "all-day" : "día completo", "%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 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 horas visibles", "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", + "Lecture hall" : "Sala de conferencias", + "Seminar room" : "Sala de seminario", + "Other" : "Otro", "When shared show" : "Al compartir, mostrar", "When shared show full event" : "Al compartir, mostrar el evento completo", "When shared show only busy" : "Al compartir, mostrar solo ocupado", "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", - "Location" : "Ubicación", "Add a location" : "Añadir ubicación", - "Description" : "Descripción", "Add a description" : "Añadir una descripción", "Status" : "Estado", "Confirmed" : "Confirmado", - "Tentative" : "Pendiente", "Canceled" : "Cancelado", "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." : "Tome este evento en consideración cuando calcule la información acerca de libre-ocupado.", - "Free" : "Libre", "Categories" : "Categorías", "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 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.", + "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", + "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", "Chat room for event" : "Sala de conversación 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}", + "This is an event reminder." : "Esto es un recordatorio de evento.", "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", - "Present" : "Presente", + "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", - "Review" : "Revisar", "Office" : "Oficina", "Contributor week" : "Semana del colaborador", - "Party" : "Fiesta", - "Celebration" : "Celebración", "Mail" : "Correo electrónico", "Soccer" : "Fútbol", "Football" : "Rugby", "Gaming" : "Video juegos", - "Play" : "Reproducir", - "Game" : "Juego", "Drive" : "Conducir", + "Driving" : "Conducción", "Bicycle" : "Bicicleta", "Cycle" : "Bici", + "Cycling" : "Ciclismo", "Biking" : "Pedaleando", + "Bike" : "Bici", "Podcast" : "Podcast", "Basketball" : "Baloncesto", "Fishing" : "Pesca", @@ -365,10 +579,12 @@ OC.L10N.register( "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", @@ -379,7 +595,10 @@ OC.L10N.register( "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", @@ -398,20 +617,27 @@ OC.L10N.register( "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", - "Global" : "Global" + "Appointment not found" : "Cita no encontrada", + "User not found" : "Usuario no encontrado" }, -"nplurals=2; plural=(n != 1);"); +"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); diff --git a/l10n/es.json b/l10n/es.json index 3444316427..926184db52 100644 --- a/l10n/es.json +++ b/l10n/es.json @@ -1,57 +1,135 @@ { "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 " : "Correo enviado correctamente", + "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«.", "Open »%s«" : "Abrir »%s«", "Cheers!" : "¡Saludos!", "Upcoming events" : "Próximos eventos", + "More events" : "Más eventos", + "No more events today" : "No hay más eventos hoy", + "No upcoming events" : "No hay eventos próximos", + "%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\" with %s needs confirmation" : "Su cita \"%s\" con %s necesita confirmación", + "Dear %s, please confirm your booking" : "Estimado %s, por favor confirma tu reserva", + "Confirm" : "Confirmar", + "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 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ás 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" : "Tienes una cita reservada \"%s\" por %s", + "Dear %s, %s (%s) booked an appointment with you." : "Estimado %s, %s (%s) ha reservado una cita contigo.", + "Anniversary" : "Aniversario", + "Appointment" : "Cita", + "Business" : "Empresa", + "Education" : "Educación", + "Holiday" : "Vacaciones", + "Meeting" : "Reunión", + "Miscellaneous" : "Varios", + "Non-working hours" : "Horario no laborable", + "Not in office" : "Fuera de la oficina", + "Personal" : "Personal", + "Phone call" : "Llamad de teléfono", + "Sick day" : "Estoy enfermo", + "Special occasion" : "Ocasión especial", + "Travel" : "Viaje", + "Vacation" : "Vacaciones", + "Custom Categories" : "Categorías Personalizadas", + "Collaborative Tags" : "Etiquetas Colaborativas", + "Standard Categories" : "Categorías Estándar", "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", + "Event" : "Evento", + "Create new event" : "Crear evento nuevo", "Today" : "Hoy", "Day" : "Día", "Week" : "Semana", "Month" : "Mes", + "Year" : "Año", "List" : "Lista", - "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", - "Download" : "Descargar", - "Unshare from me" : "Dejado de compartir por mí", + "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", + "Shared with you by" : "Compartida contigo por", + "Edit and share calendar" : "Editar y compartir calendario", + "Edit calendar" : "Editar calendario", + "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.", + "_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"], + "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…", + "Add public holiday calendar" : "Añadir calendario de días feriados públicos", + "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://)", + "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", "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.", - "_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"], - "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Borrando el calendario en {countdown} segundo","Eliminando el calendario en {countdown} segundos"], + "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", + "Empty trash bin" : "Vaciar papelera", + "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 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?", + "_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.", + "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", "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…", "Copied code" : "Código copiado", @@ -63,32 +141,32 @@ "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.", "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 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.", - "+ New calendar" : "Nuevo calendario", - "New calendar" : "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://)", - "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.", + "Calendar name …" : "Nombre de calendario...", + "Share calendar" : "Compartir calendario", + "Unshare from me" : "Dejar de compartir conmigo", + "Save" : "Guardar", + "Failed to save calendar name and color" : "Fallo al guardar el nombre del calendario y el color", "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"], - "{filename} is an unsupported file-type" : "{filename} es un tipo de archivo no soportado", + "_Import calendar_::_Import calendars_" : ["Importar calendario","Importar calendarios","Importar calendarios"], + "Default attachments location" : "Ubicación por defecto de los adjuntos", + "Select the default location for attachments" : "Seleccione la ubicación por defecto para los adjuntos", + "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.", "{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."], + "_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."], "Automatic" : "Automático", "Automatic ({detected})" : "Automático ({detected})", "New setting was not saved successfully." : "El nuevo ajuste no ha podido ser guardado correctamente.", @@ -101,21 +179,83 @@ "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 el evento editado", + "Delete edited event" : "Borrar el evento editado", + "Duplicate event" : "Evento duplicado", "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 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", - "Settings & import" : "Ajustes & importar", + "Calendar settings" : "Configuración del calendario", + "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", + "_{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 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 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", + "Increments" : "Incrementos", + "Additional calendars to check for conflicts" : "Calendarios adicionales sobre los que comprobar conflictos", + "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", + "Add" : "Añadir", + "Monday" : "Lunes", + "Tuesday" : "Martes", + "Wednesday" : "Miércoles", + "Thursday" : "Jueves", + "Friday" : "Viernes", + "Saturday" : "Sábado", + "Sunday" : "Domingo", + "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", + "Update" : "Actualizar", + "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", "before at" : "antes de las", "Notification" : "Notificación", "Email" : "Correo electrónico", @@ -129,55 +269,80 @@ "on" : "activo", "at" : "a", "+ Add reminder" : "+ Añadir recordatorio", - "_second_::_seconds_" : ["segundo","segundos"], - "_minute_::_minutes_" : ["minuto","minutos"], - "_hour_::_hours_" : ["hora","horas"], - "_day_::_days_" : ["día","días"], - "_week_::_weeks_" : ["semana","semanas"], - "No reminders yet" : "Aún no hay recordatorios", + "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"], + "No attachments" : "Sin adjuntos", + "Add from Files" : "Añadir desde Archivos", + "Upload from device" : "Subir desde dispositivo", + "Delete file" : "Eliminar archivo", + "Choose a file to add as attachment" : "Escoja un archivo para adjuntar", + "Choose a file to share as a link" : "Escoge un archivo para compartir como enlace", + "Attachment {name} already exist!" : "¡El adjunto {name} ya existe!", + "_{count} attachment_::_{count} attachments_" : ["{count} adjunto","{count} adjuntos","{count} adjuntos"], + "Invitation accepted" : "Invitación aceptada", + "Available" : "Disponible", + "Suggested" : "Sugerido", + "Participation marked as tentative" : "Participación marcada como provisional", + "Accepted {organizerName}'s invitation" : "Aceptada la invitación de {organizerName}", + "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", + "Checking availability" : "Comprobando disponibilidad", + "Invitation sent" : "Invitación enviada", + "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", + "{organizer} (organizer)" : "{organizer} (organizador)", + "Free" : "Libre", "Busy (tentative)" : "Ocupado (provisional)", "Busy" : "Ocupado", "Out of office" : "Fuera de la oficina", "Unknown" : "Desconocido", - "{name} accepted your invitation." : "{name} ha aceptado su invitación.", - "{name} accepted {organizerName}'s invitation." : "{name} aceptó la invitación de {organizerName}.", - "{name} declined your invitation." : "{name} ha rechazado su invitación.", - "{name} declined {organizerName}'s invitation." : "{name} rechazó la invitación de {organizerName}.", - "{name} has delegated their invitation." : "{name} ha delegado su invitación.", - "{name} marked their participation as tentative." : "{name} marcó su participación como provisional.", - "{name} did not respond to your invitation yet." : "{name} todavía no ha contestado a su invitación.", - "{name} did not respond to {organizerName}'s invitation yet." : "{name} todavía no ha contestado a la invitación de {organizerName}.", + "Accept" : "Aceptar", + "Decline" : "Declinar", + "Tentative" : "Pendiente", + "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", + "No attendees yet" : "Aún no hay asistentes", + "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 e-mail" : "Enviar correo", + "Send email" : "Enviar email", "Chairperson" : "Presidente/a", "Required participant" : "Participante requerido", "Optional participant" : "Participante opcional", "Non-participant" : "No participa", "Remove attendee" : "Eliminar asistente", - "Search for e-mails, users, contacts, resources or rooms" : "Busque correos electrónicos, usuarios, contactos, recursos o salas", + "Search for emails, users or contacts" : "Buscar correos, usuarios o contactos", "No match found" : "No se ha encontrado ningún resultado", - "No attendees yet" : "Aún no hay asistentes", "(organizer)" : "(organizador)", "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", - "Can not 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 los eventos que forman parte de un conjunto de recurrencias.", + "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}", + "Repeat" : "Repetir", "End repeat" : "Finalizar repetición", "Select to end repeat" : "Seleccionar para finalizar la repetición", "never" : "nunca", "on date" : "en fecha", "after" : "después de", - "_time_::_times_" : ["vez","veces"], - "This event is the recurrence-exception of a recurrence-set. You can not add a recurrence-rule to it." : "Este evento es la excepción de recurrencia de un conjunto de recurrencia. No puede agregarle una regla de recurrencia.", + "_time_::_times_" : ["vez","veces","veces"], + "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", @@ -185,25 +350,37 @@ "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" : "Repetir", "Repeat every" : "Repetir cada", "By day of the month" : "Por día del mes", "On the" : "En el", - "_month_::_months_" : ["mes","meses"], - "_year_::_years_" : ["año","años"], - "Monday" : "Lunes", + "_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", - "Summary" : "Resumen", + "No recurrence" : "No recurrente", "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", + "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", + "Room type" : "Tipo de sala", + "Any" : "Cualquiera", + "Minimum seating capacity" : "Capacidad mínima de los asientos", "More" : "Más", - "Save" : "Guardar", - "Update" : "Actualizar", "Update this occurrence" : "Actualiza esta ocurrencia", "Update this and all future" : "Actualiza esto y todo futuro", "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 timezone:" : "Por favor seleccione una 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", "from {formattedDate}" : "desde {formattedDate}", @@ -215,44 +392,55 @@ "{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", - "Type to search timezone" : "Escribe para buscar la zona horaria", - "Personal" : "Personal", - "The automatic timezone detection determined your timezone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your timezone 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 timezone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your timezone 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", + "Type to search time zone" : "Escribe para buscar la zona horaria", + "Global" : "Global", + "Public holiday calendars" : "Calendarios de días feriados públicos", + "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}", + "By {authors}" : "Por {authors}", + "Subscribed" : "Suscrito", + "Subscribe" : "Suscribirse", + "Holidays in {region}" : "Días feriados en {region}", + "An error occurred, unable to create the public holiday calendar." : "Ocurrió un error, no fue posible crear el calendario de días feriados públicos.", + "Select date" : "Seleccionar 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", + "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 de {startDate} a {endDate} ha sido confirmada.", + "Book another appointment:" : "Reservar otra cita:", + "See all available slots" : "Ver todos los huecos disponibles", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "La hora de tu cita de {startDate} a {endDate} ya no está disponible.", + "Please book a different slot:" : "Por favor, reserva otra hora distinta:", + "Book an appointment with {name}" : "Reservar una cita con {name}", + "No public appointments found for {name}" : "No se han encontrado citas públicas para {name}", + "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.", "Create a new event" : "Crear un nuevo evento", "[Today]" : "[Hoy]", "[Tomorrow]" : "[Mañana]", "[Yesterday]" : "[Ayer]", "[Last] dddd" : "[Último] dddd", "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", + "Managing shared access" : "Administrando el acceso compartido", + "Deny access" : "Denegar acceso", + "Invite" : "Invitar", "Attendees" : "Asistentes", - "Reminders" : "Recordatorios", + "Resources" : "Recursos", + "_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"], "Close" : "Cerrar", "Show more details" : "Ver más detalles", "Subscribe to {name}" : "Subscribir a {name}", - "Download {name}" : "Descargar {name}", - "Anniversary" : "Aniversario", - "Appointment" : "Cita", - "Business" : "Empresa", - "Education" : "Educación", - "Holiday" : "Vacaciones", - "Meeting" : "Reunión", - "Miscellaneous" : "Varios", - "Non-working hours" : "Horario no laborable", - "Not in office" : "Fuera de la oficina", - "Phone call" : "Llamad de teléfono", - "Sick day" : "Estoy enfermo", - "Special occasion" : "Ocasión especial", - "Travel" : "Viaje", - "Vacation" : "Vacaciones", + "Export {name}" : "Exportar {name}", "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 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 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 final del evento", @@ -268,91 +456,117 @@ "Weekly" : "Semanalmente", "Monthly" : "Mensualmente", "Yearly" : "Anualmente", - "_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}"], + "_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}"], "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 time_::_%n times_" : ["%n vez","%n veces","%n veces"], "Untitled event" : "Evento sin título", "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" : "ant", - "next" : "próx", - "prev year" : "año anterior", - "next year" : "año que viene", - "today" : "hoy", - "list" : "lista", "W" : "S", - "all-day" : "día completo", "%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 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 horas visibles", "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", + "Lecture hall" : "Sala de conferencias", + "Seminar room" : "Sala de seminario", + "Other" : "Otro", "When shared show" : "Al compartir, mostrar", "When shared show full event" : "Al compartir, mostrar el evento completo", "When shared show only busy" : "Al compartir, mostrar solo ocupado", "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", - "Location" : "Ubicación", "Add a location" : "Añadir ubicación", - "Description" : "Descripción", "Add a description" : "Añadir una descripción", "Status" : "Estado", "Confirmed" : "Confirmado", - "Tentative" : "Pendiente", "Canceled" : "Cancelado", "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." : "Tome este evento en consideración cuando calcule la información acerca de libre-ocupado.", - "Free" : "Libre", "Categories" : "Categorías", "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 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.", + "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", + "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", "Chat room for event" : "Sala de conversación 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}", + "This is an event reminder." : "Esto es un recordatorio de evento.", "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", - "Present" : "Presente", + "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", - "Review" : "Revisar", "Office" : "Oficina", "Contributor week" : "Semana del colaborador", - "Party" : "Fiesta", - "Celebration" : "Celebración", "Mail" : "Correo electrónico", "Soccer" : "Fútbol", "Football" : "Rugby", "Gaming" : "Video juegos", - "Play" : "Reproducir", - "Game" : "Juego", "Drive" : "Conducir", + "Driving" : "Conducción", "Bicycle" : "Bicicleta", "Cycle" : "Bici", + "Cycling" : "Ciclismo", "Biking" : "Pedaleando", + "Bike" : "Bici", "Podcast" : "Podcast", "Basketball" : "Baloncesto", "Fishing" : "Pesca", @@ -363,10 +577,12 @@ "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", @@ -377,7 +593,10 @@ "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", @@ -396,20 +615,27 @@ "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", - "Global" : "Global" -},"pluralForm" :"nplurals=2; plural=(n != 1);" + "Appointment not found" : "Cita no encontrada", + "User not found" : "Usuario no encontrado" +},"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 cfd0993196..f993ad9683 100644 --- a/l10n/es_419.js +++ b/l10n/es_419.js @@ -7,58 +7,82 @@ OC.L10N.register( "Open »%s«" : "Abrir »%s«", "Cheers!" : "¡Saludos!", "Calendar" : "Calendario", + "Confirm" : "Confirmar", + "Where:" : "Dónde:", + "Anniversary" : "Aniversario", + "Personal" : "Personal", "Today" : "Hoy", "Day" : "Día", "Week" : "Semana", "Month" : "Mes", "List" : "Lista", - "Download" : "Descargar", + "Preview" : "Previsualizar", + "Copy link" : "Copiar liga", + "Edit" : "Editar", "Delete" : "Borrar", + "New calendar" : "Nuevo calendario", + "Export" : "Exportar", + "Name" : "Nombre", + "Deleted" : "Borrado", + "Restore" : "Restaurar", + "Delete permanently" : "Borrar permanentemente", "Share link" : "Compartir liga", - "Share with users or groups" : "Compartir con otros usuarios o grupos", "can edit" : "puede editar", - "New calendar" : "Nuevo calendario", + "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", "Show week numbers" : "Mostrar número de semana", - "Settings & import" : "Configuraciones & importar", + "Location" : "Ubicación", + "Description" : "Descripción", + "to" : "para", + "Add" : "Agregar", + "Monday" : "Lunes", + "Tuesday" : "Martes", + "Wednesday" : "Miércoles", + "Thursday" : "Jueves", + "Friday" : "Viernes", + "Saturday" : "Sábado", + "Sunday" : "Domingo", + "Update" : "Actualizar", + "Your email address" : "Tu dirección de correo electrónico", "Notification" : "Notificación", "Email" : "Correo electrónico", + "Delete file" : "Borrar archivo", + "Choose a file to add as attachment" : "Selecciona el archivo a agregar como adjunto", "Unknown" : "Desconocido", + "Accept" : "Aceptar", + "Decline" : "Declinar", + "Tentative" : "Tentativo", + "Send email" : "Enviar correo electrónico", "All day" : "Todo el día", + "Repeat" : "Repetir", "never" : "nunca", "after" : "después", - "Repeat" : "Repetir", - "Monday" : "Lunes", - "Summary" : "Resumen", + "available" : "disponible", "More" : "Más", - "Save" : "Guardar", - "Update" : "Actualizar", - "Personal" : "Personal", + "Global" : "Global", + "Subscribe" : "Suscribir", "Details" : "Detalles", "Attendees" : "Asistentes", - "Reminders" : "Recordatorios", + "Resources" : "Recursos", "Close" : "Cerrar", - "Anniversary" : "Aniversario", "Week {number} of {year}" : "Semana {number} de {year}", "Daily" : "Diariamente", "Weekly" : "Semanalmente", - "next year" : "próximo año", - "today" : "hoy", + "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 ", "When shared hide this event" : "Al compartir, ocultar este evento ", - "Location" : "Ubicación", - "Description" : "Descripción", "Status" : "Estatus", "Confirmed" : "Confirmado", - "Tentative" : "Tentativo", "Categories" : "Categorías", + "Talk" : "Hablar", "Mail" : "Correo", - "Play" : "Reproducir", - "Global" : "Global" + "Birthday" : "Fecha de nacimiento" }, -"nplurals=2; plural=(n != 1);"); +"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 3ec75fab8f..6d76fae60c 100644 --- a/l10n/es_419.json +++ b/l10n/es_419.json @@ -5,58 +5,82 @@ "Open »%s«" : "Abrir »%s«", "Cheers!" : "¡Saludos!", "Calendar" : "Calendario", + "Confirm" : "Confirmar", + "Where:" : "Dónde:", + "Anniversary" : "Aniversario", + "Personal" : "Personal", "Today" : "Hoy", "Day" : "Día", "Week" : "Semana", "Month" : "Mes", "List" : "Lista", - "Download" : "Descargar", + "Preview" : "Previsualizar", + "Copy link" : "Copiar liga", + "Edit" : "Editar", "Delete" : "Borrar", + "New calendar" : "Nuevo calendario", + "Export" : "Exportar", + "Name" : "Nombre", + "Deleted" : "Borrado", + "Restore" : "Restaurar", + "Delete permanently" : "Borrar permanentemente", "Share link" : "Compartir liga", - "Share with users or groups" : "Compartir con otros usuarios o grupos", "can edit" : "puede editar", - "New calendar" : "Nuevo calendario", + "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", "Show week numbers" : "Mostrar número de semana", - "Settings & import" : "Configuraciones & importar", + "Location" : "Ubicación", + "Description" : "Descripción", + "to" : "para", + "Add" : "Agregar", + "Monday" : "Lunes", + "Tuesday" : "Martes", + "Wednesday" : "Miércoles", + "Thursday" : "Jueves", + "Friday" : "Viernes", + "Saturday" : "Sábado", + "Sunday" : "Domingo", + "Update" : "Actualizar", + "Your email address" : "Tu dirección de correo electrónico", "Notification" : "Notificación", "Email" : "Correo electrónico", + "Delete file" : "Borrar archivo", + "Choose a file to add as attachment" : "Selecciona el archivo a agregar como adjunto", "Unknown" : "Desconocido", + "Accept" : "Aceptar", + "Decline" : "Declinar", + "Tentative" : "Tentativo", + "Send email" : "Enviar correo electrónico", "All day" : "Todo el día", + "Repeat" : "Repetir", "never" : "nunca", "after" : "después", - "Repeat" : "Repetir", - "Monday" : "Lunes", - "Summary" : "Resumen", + "available" : "disponible", "More" : "Más", - "Save" : "Guardar", - "Update" : "Actualizar", - "Personal" : "Personal", + "Global" : "Global", + "Subscribe" : "Suscribir", "Details" : "Detalles", "Attendees" : "Asistentes", - "Reminders" : "Recordatorios", + "Resources" : "Recursos", "Close" : "Cerrar", - "Anniversary" : "Aniversario", "Week {number} of {year}" : "Semana {number} de {year}", "Daily" : "Diariamente", "Weekly" : "Semanalmente", - "next year" : "próximo año", - "today" : "hoy", + "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 ", "When shared hide this event" : "Al compartir, ocultar este evento ", - "Location" : "Ubicación", - "Description" : "Descripción", "Status" : "Estatus", "Confirmed" : "Confirmado", - "Tentative" : "Tentativo", "Categories" : "Categorías", + "Talk" : "Hablar", "Mail" : "Correo", - "Play" : "Reproducir", - "Global" : "Global" -},"pluralForm" :"nplurals=2; plural=(n != 1);" + "Birthday" : "Fecha de nacimiento" +},"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 db6c7b0443..264b855832 100644 --- a/l10n/es_AR.js +++ b/l10n/es_AR.js @@ -2,12 +2,14 @@ OC.L10N.register( "calendar", { "Provided email-address is not valid" : "La dirección de E Mail proporcionada no es valida", - "Successfully sent email to " : "E Mail enviado satisfactoriamente a", "Hello," : "Hola,", "Open »%s«" : "Abrir »%s«", "Cheers!" : "¡Saludos!", "Upcoming events" : "Próximos eventos", "Calendar" : "Calendario", + "Confirm" : "Confirmar", + "Anniversary" : "Aniversario", + "Personal" : "Personal", "A Calendar app for Nextcloud" : "Una aplicación de calendario para Nextcloud", "Previous day" : "Día previo", "Previous week" : "Semana previa", @@ -15,65 +17,84 @@ 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", "List" : "Lista", - "Edit name" : "Editar nombre", - "Edit color" : "Editar color", - "Download" : "Descargar", + "Preview" : "Vista previa", + "Copy link" : "Copiar enlace", + "Edit" : "Editar", "Delete" : "Borrar", + "New calendar" : "Nuevo calendario", + "New calendar with task list" : "Nuevo calendario con listado de tareas", + "Copied link" : "Link copiado", + "Export" : "Exportar", + "Name" : "Nombre", + "Deleted" : "Eliminado", + "Restore" : "Restaurar", + "Delete permanently" : "Borrar permanentemente", + "Copy internal link" : "Copiar enlace interno", "Share link" : "Compartir link", "Copy public link" : "Copiar link publico", - "Copied link" : "Link copiado", "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.", - "can edit" : "puede editar", - "New calendar" : "Nuevo calendario", - "New calendar with task list" : "Nuevo calendario con listado de tareas", + "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", - "Settings & import" : "Configuraciones & importar", + "Location" : "Ubicación", + "Description" : "Descripción", + "to" : "para", + "Add" : "Añadir", + "Monday" : "Lunes", + "Tuesday" : "Martes", + "Wednesday" : "Miércoles", + "Thursday" : "Jueves", + "Friday" : "Viernes", + "Saturday" : "Sábado", + "Sunday" : "Domingo", + "Update" : "Actualizar", + "Your email address" : "Su dirección de correo electrónico", "Notification" : "Notificación", "Email" : "Correo electrónico", + "Delete file" : "Borrar archivo", + "Choose a file to add as attachment" : "Seleccione el archivo a agregar como adjunto", + "Available" : "Disponible", "Unknown" : "Desconocido", + "Accept" : "Aceptar", + "Decline" : "Declinar", + "Tentative" : "Tentativo", + "Send email" : "Enviar correo electrónico", "All day" : "Todo el día", + "Repeat" : "Repetir", "never" : "nunca", "after" : "después", - "Repeat" : "Repetir", - "Monday" : "Lunes", - "Summary" : "Resumen", + "available" : "disponible", "More" : "Más", - "Save" : "Guardar", - "Update" : "Actualizar", - "Personal" : "Personal", + "Global" : "Global", + "Subscribe" : "Suscribirse", "Details" : "Detalles", "Attendees" : "Asistentes", - "Reminders" : "Recordatorios", + "Resources" : "Recursos", "Close" : "Cerrar", - "Anniversary" : "Aniversario", "Week {number} of {year}" : "Semana {number} de {year}", "Daily" : "Diariamente", "Weekly" : "Semanalmente", - "today" : "hoy", + "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 ", "When shared hide this event" : "Al compartir, ocultar este evento ", - "Location" : "Ubicación", - "Description" : "Descripción", "Status" : "Estatus", "Confirmed" : "Confirmado", - "Tentative" : "Tentativo", "Categories" : "Categoría", "Movie" : "Película", "Mail" : "Correo Electrónico", - "Play" : "Reproducir", - "Global" : "Global" + "Birthday" : "Fecha de nacimiento" }, -"nplurals=2; plural=(n != 1);"); +"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 6e7139dd6b..4f674745e9 100644 --- a/l10n/es_AR.json +++ b/l10n/es_AR.json @@ -1,11 +1,13 @@ { "translations": { "Provided email-address is not valid" : "La dirección de E Mail proporcionada no es valida", - "Successfully sent email to " : "E Mail enviado satisfactoriamente a", "Hello," : "Hola,", "Open »%s«" : "Abrir »%s«", "Cheers!" : "¡Saludos!", "Upcoming events" : "Próximos eventos", "Calendar" : "Calendario", + "Confirm" : "Confirmar", + "Anniversary" : "Aniversario", + "Personal" : "Personal", "A Calendar app for Nextcloud" : "Una aplicación de calendario para Nextcloud", "Previous day" : "Día previo", "Previous week" : "Semana previa", @@ -13,65 +15,84 @@ "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", "List" : "Lista", - "Edit name" : "Editar nombre", - "Edit color" : "Editar color", - "Download" : "Descargar", + "Preview" : "Vista previa", + "Copy link" : "Copiar enlace", + "Edit" : "Editar", "Delete" : "Borrar", + "New calendar" : "Nuevo calendario", + "New calendar with task list" : "Nuevo calendario con listado de tareas", + "Copied link" : "Link copiado", + "Export" : "Exportar", + "Name" : "Nombre", + "Deleted" : "Eliminado", + "Restore" : "Restaurar", + "Delete permanently" : "Borrar permanentemente", + "Copy internal link" : "Copiar enlace interno", "Share link" : "Compartir link", "Copy public link" : "Copiar link publico", - "Copied link" : "Link copiado", "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.", - "can edit" : "puede editar", - "New calendar" : "Nuevo calendario", - "New calendar with task list" : "Nuevo calendario con listado de tareas", + "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", - "Settings & import" : "Configuraciones & importar", + "Location" : "Ubicación", + "Description" : "Descripción", + "to" : "para", + "Add" : "Añadir", + "Monday" : "Lunes", + "Tuesday" : "Martes", + "Wednesday" : "Miércoles", + "Thursday" : "Jueves", + "Friday" : "Viernes", + "Saturday" : "Sábado", + "Sunday" : "Domingo", + "Update" : "Actualizar", + "Your email address" : "Su dirección de correo electrónico", "Notification" : "Notificación", "Email" : "Correo electrónico", + "Delete file" : "Borrar archivo", + "Choose a file to add as attachment" : "Seleccione el archivo a agregar como adjunto", + "Available" : "Disponible", "Unknown" : "Desconocido", + "Accept" : "Aceptar", + "Decline" : "Declinar", + "Tentative" : "Tentativo", + "Send email" : "Enviar correo electrónico", "All day" : "Todo el día", + "Repeat" : "Repetir", "never" : "nunca", "after" : "después", - "Repeat" : "Repetir", - "Monday" : "Lunes", - "Summary" : "Resumen", + "available" : "disponible", "More" : "Más", - "Save" : "Guardar", - "Update" : "Actualizar", - "Personal" : "Personal", + "Global" : "Global", + "Subscribe" : "Suscribirse", "Details" : "Detalles", "Attendees" : "Asistentes", - "Reminders" : "Recordatorios", + "Resources" : "Recursos", "Close" : "Cerrar", - "Anniversary" : "Aniversario", "Week {number} of {year}" : "Semana {number} de {year}", "Daily" : "Diariamente", "Weekly" : "Semanalmente", - "today" : "hoy", + "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 ", "When shared hide this event" : "Al compartir, ocultar este evento ", - "Location" : "Ubicación", - "Description" : "Descripción", "Status" : "Estatus", "Confirmed" : "Confirmado", - "Tentative" : "Tentativo", "Categories" : "Categoría", "Movie" : "Película", "Mail" : "Correo Electrónico", - "Play" : "Reproducir", - "Global" : "Global" -},"pluralForm" :"nplurals=2; plural=(n != 1);" + "Birthday" : "Fecha de nacimiento" +},"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 cfd0993196..09ba914ad3 100644 --- a/l10n/es_CL.js +++ b/l10n/es_CL.js @@ -7,58 +7,83 @@ OC.L10N.register( "Open »%s«" : "Abrir »%s«", "Cheers!" : "¡Saludos!", "Calendar" : "Calendario", + "Confirm" : "Confirmar", + "Where:" : "Dónde:", + "Anniversary" : "Aniversario", + "Personal" : "Personal", "Today" : "Hoy", "Day" : "Día", "Week" : "Semana", "Month" : "Mes", "List" : "Lista", - "Download" : "Descargar", + "Preview" : "Previsualizar", + "Copy link" : "Copiar liga", + "Edit" : "Editar", "Delete" : "Borrar", + "New calendar" : "Nuevo calendario", + "Export" : "Exportar", + "Name" : "Nombre", + "Deleted" : "Borrado", + "Restore" : "Restaurar", + "Delete permanently" : "Borrar permanentemente", "Share link" : "Compartir liga", - "Share with users or groups" : "Compartir con otros usuarios o grupos", "can edit" : "puede editar", - "New calendar" : "Nuevo calendario", + "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", "Show week numbers" : "Mostrar número de semana", - "Settings & import" : "Configuraciones & importar", + "Location" : "Ubicación", + "Description" : "Descripción", + "to" : "para", + "Add" : "Agregar", + "Monday" : "Lunes", + "Tuesday" : "Martes", + "Wednesday" : "Miércoles", + "Thursday" : "Jueves", + "Friday" : "Viernes", + "Saturday" : "Sábado", + "Sunday" : "Domingo", + "Update" : "Actualizar", + "Your email address" : "Tu dirección de correo electrónico", "Notification" : "Notificación", "Email" : "Correo electrónico", + "Delete file" : "Borrar archivo", + "Choose a file to add as attachment" : "Selecciona el archivo a agregar como adjunto", "Unknown" : "Desconocido", + "Accept" : "Aceptar", + "Decline" : "Declinar", + "Tentative" : "Tentativo", + "Send email" : "Enviar correo electrónico", "All day" : "Todo el día", + "Repeat" : "Repetir", "never" : "nunca", "after" : "después", - "Repeat" : "Repetir", - "Monday" : "Lunes", - "Summary" : "Resumen", + "available" : "disponible", "More" : "Más", - "Save" : "Guardar", - "Update" : "Actualizar", - "Personal" : "Personal", + "Global" : "Global", + "Subscribe" : "Suscribir", "Details" : "Detalles", "Attendees" : "Asistentes", - "Reminders" : "Recordatorios", + "Resources" : "Recursos", "Close" : "Cerrar", - "Anniversary" : "Aniversario", "Week {number} of {year}" : "Semana {number} de {year}", "Daily" : "Diariamente", "Weekly" : "Semanalmente", - "next year" : "próximo año", - "today" : "hoy", + "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 ", "When shared hide this event" : "Al compartir, ocultar este evento ", - "Location" : "Ubicación", - "Description" : "Descripción", "Status" : "Estatus", "Confirmed" : "Confirmado", - "Tentative" : "Tentativo", "Categories" : "Categorías", + "Talk" : "Hablar", "Mail" : "Correo", - "Play" : "Reproducir", - "Global" : "Global" + "Birthday" : "Fecha de nacimiento", + "User not found" : "No se encontró el usuario" }, -"nplurals=2; plural=(n != 1);"); +"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 3ec75fab8f..60305863ca 100644 --- a/l10n/es_CL.json +++ b/l10n/es_CL.json @@ -5,58 +5,83 @@ "Open »%s«" : "Abrir »%s«", "Cheers!" : "¡Saludos!", "Calendar" : "Calendario", + "Confirm" : "Confirmar", + "Where:" : "Dónde:", + "Anniversary" : "Aniversario", + "Personal" : "Personal", "Today" : "Hoy", "Day" : "Día", "Week" : "Semana", "Month" : "Mes", "List" : "Lista", - "Download" : "Descargar", + "Preview" : "Previsualizar", + "Copy link" : "Copiar liga", + "Edit" : "Editar", "Delete" : "Borrar", + "New calendar" : "Nuevo calendario", + "Export" : "Exportar", + "Name" : "Nombre", + "Deleted" : "Borrado", + "Restore" : "Restaurar", + "Delete permanently" : "Borrar permanentemente", "Share link" : "Compartir liga", - "Share with users or groups" : "Compartir con otros usuarios o grupos", "can edit" : "puede editar", - "New calendar" : "Nuevo calendario", + "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", "Show week numbers" : "Mostrar número de semana", - "Settings & import" : "Configuraciones & importar", + "Location" : "Ubicación", + "Description" : "Descripción", + "to" : "para", + "Add" : "Agregar", + "Monday" : "Lunes", + "Tuesday" : "Martes", + "Wednesday" : "Miércoles", + "Thursday" : "Jueves", + "Friday" : "Viernes", + "Saturday" : "Sábado", + "Sunday" : "Domingo", + "Update" : "Actualizar", + "Your email address" : "Tu dirección de correo electrónico", "Notification" : "Notificación", "Email" : "Correo electrónico", + "Delete file" : "Borrar archivo", + "Choose a file to add as attachment" : "Selecciona el archivo a agregar como adjunto", "Unknown" : "Desconocido", + "Accept" : "Aceptar", + "Decline" : "Declinar", + "Tentative" : "Tentativo", + "Send email" : "Enviar correo electrónico", "All day" : "Todo el día", + "Repeat" : "Repetir", "never" : "nunca", "after" : "después", - "Repeat" : "Repetir", - "Monday" : "Lunes", - "Summary" : "Resumen", + "available" : "disponible", "More" : "Más", - "Save" : "Guardar", - "Update" : "Actualizar", - "Personal" : "Personal", + "Global" : "Global", + "Subscribe" : "Suscribir", "Details" : "Detalles", "Attendees" : "Asistentes", - "Reminders" : "Recordatorios", + "Resources" : "Recursos", "Close" : "Cerrar", - "Anniversary" : "Aniversario", "Week {number} of {year}" : "Semana {number} de {year}", "Daily" : "Diariamente", "Weekly" : "Semanalmente", - "next year" : "próximo año", - "today" : "hoy", + "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 ", "When shared hide this event" : "Al compartir, ocultar este evento ", - "Location" : "Ubicación", - "Description" : "Descripción", "Status" : "Estatus", "Confirmed" : "Confirmado", - "Tentative" : "Tentativo", "Categories" : "Categorías", + "Talk" : "Hablar", "Mail" : "Correo", - "Play" : "Reproducir", - "Global" : "Global" -},"pluralForm" :"nplurals=2; plural=(n != 1);" + "Birthday" : "Fecha de nacimiento", + "User not found" : "No se encontró el usuario" +},"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 bbaa9b670a..eff79f28fc 100644 --- a/l10n/es_CO.js +++ b/l10n/es_CO.js @@ -9,58 +9,84 @@ OC.L10N.register( "Open »%s«" : "Abrir »%s«", "Cheers!" : "¡Saludos!", "Calendar" : "Calendario", + "Confirm" : "Confirmar", + "Where:" : "Dónde:", + "Anniversary" : "Aniversario", + "Personal" : "Personal", "Today" : "Hoy", "Day" : "Día", "Week" : "Semana", "Month" : "Mes", "List" : "Lista", - "Download" : "Descargar", + "Preview" : "Previsualizar", + "Copy link" : "Copiar enlace", + "Edit" : "Editar", "Delete" : "Borrar", + "New calendar" : "Nuevo calendario", + "Export" : "Exportar", + "Name" : "Nombre", + "Deleted" : "Borrado", + "Restore" : "Restaurar", + "Delete permanently" : "Borrar permanentemente", + "Empty trash bin" : "Vacíar la papelera", "Share link" : "Compartir enlace", - "Share with users or groups" : "Compartir con otros usuarios o grupos", "can edit" : "puede editar", - "New calendar" : "Nuevo calendario", + "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", "Show week numbers" : "Mostrar número de semana", - "Settings & import" : "Configuraciones & importar", + "Location" : "Ubicación", + "Description" : "Descripción", + "to" : "para", + "Add" : "Agregar", + "Monday" : "Lunes", + "Tuesday" : "Martes", + "Wednesday" : "Miércoles", + "Thursday" : "Jueves", + "Friday" : "Viernes", + "Saturday" : "Sábado", + "Sunday" : "Domingo", + "Update" : "Actualizar", + "Your email address" : "Tu dirección de correo electrónico", "Notification" : "Notificación", "Email" : "Correo electrónico", + "Delete file" : "Borrar archivo", + "Choose a file to add as attachment" : "Selecciona el archivo a agregar como adjunto", "Unknown" : "Desconocido", + "Accept" : "Aceptar", + "Decline" : "Declinar", + "Tentative" : "Tentativo", + "Send email" : "Enviar correo electrónico", "All day" : "Todo el día", + "Repeat" : "Repetir", "never" : "nunca", "after" : "después", - "Repeat" : "Repetir", - "Monday" : "Lunes", - "Summary" : "Resumen", + "available" : "disponible", "More" : "Más", - "Save" : "Guardar", - "Update" : "Actualizar", - "Personal" : "Personal", + "Global" : "Global", + "Subscribe" : "Suscribir", "Details" : "Detalles", "Attendees" : "Asistentes", - "Reminders" : "Recordatorios", + "Resources" : "Recursos", "Close" : "Cerrar", - "Anniversary" : "Aniversario", "Week {number} of {year}" : "Semana {number} de {year}", "Daily" : "Diariamente", "Weekly" : "Semanalmente", - "next year" : "próximo año", - "today" : "hoy", + "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 ", "When shared hide this event" : "Al compartir, ocultar este evento ", - "Location" : "Ubicación", - "Description" : "Descripción", "Status" : "Estatus", "Confirmed" : "Confirmado", - "Tentative" : "Tentativo", "Categories" : "Categorías", + "Talk" : "Hablar", "Mail" : "Correo", - "Play" : "Reproducir", - "Global" : "Global" + "Birthday" : "Fecha de nacimiento", + "User not found" : "No se encontró el usuario" }, -"nplurals=2; plural=(n != 1);"); +"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 85e240e8db..7b8d0344ea 100644 --- a/l10n/es_CO.json +++ b/l10n/es_CO.json @@ -7,58 +7,84 @@ "Open »%s«" : "Abrir »%s«", "Cheers!" : "¡Saludos!", "Calendar" : "Calendario", + "Confirm" : "Confirmar", + "Where:" : "Dónde:", + "Anniversary" : "Aniversario", + "Personal" : "Personal", "Today" : "Hoy", "Day" : "Día", "Week" : "Semana", "Month" : "Mes", "List" : "Lista", - "Download" : "Descargar", + "Preview" : "Previsualizar", + "Copy link" : "Copiar enlace", + "Edit" : "Editar", "Delete" : "Borrar", + "New calendar" : "Nuevo calendario", + "Export" : "Exportar", + "Name" : "Nombre", + "Deleted" : "Borrado", + "Restore" : "Restaurar", + "Delete permanently" : "Borrar permanentemente", + "Empty trash bin" : "Vacíar la papelera", "Share link" : "Compartir enlace", - "Share with users or groups" : "Compartir con otros usuarios o grupos", "can edit" : "puede editar", - "New calendar" : "Nuevo calendario", + "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", "Show week numbers" : "Mostrar número de semana", - "Settings & import" : "Configuraciones & importar", + "Location" : "Ubicación", + "Description" : "Descripción", + "to" : "para", + "Add" : "Agregar", + "Monday" : "Lunes", + "Tuesday" : "Martes", + "Wednesday" : "Miércoles", + "Thursday" : "Jueves", + "Friday" : "Viernes", + "Saturday" : "Sábado", + "Sunday" : "Domingo", + "Update" : "Actualizar", + "Your email address" : "Tu dirección de correo electrónico", "Notification" : "Notificación", "Email" : "Correo electrónico", + "Delete file" : "Borrar archivo", + "Choose a file to add as attachment" : "Selecciona el archivo a agregar como adjunto", "Unknown" : "Desconocido", + "Accept" : "Aceptar", + "Decline" : "Declinar", + "Tentative" : "Tentativo", + "Send email" : "Enviar correo electrónico", "All day" : "Todo el día", + "Repeat" : "Repetir", "never" : "nunca", "after" : "después", - "Repeat" : "Repetir", - "Monday" : "Lunes", - "Summary" : "Resumen", + "available" : "disponible", "More" : "Más", - "Save" : "Guardar", - "Update" : "Actualizar", - "Personal" : "Personal", + "Global" : "Global", + "Subscribe" : "Suscribir", "Details" : "Detalles", "Attendees" : "Asistentes", - "Reminders" : "Recordatorios", + "Resources" : "Recursos", "Close" : "Cerrar", - "Anniversary" : "Aniversario", "Week {number} of {year}" : "Semana {number} de {year}", "Daily" : "Diariamente", "Weekly" : "Semanalmente", - "next year" : "próximo año", - "today" : "hoy", + "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 ", "When shared hide this event" : "Al compartir, ocultar este evento ", - "Location" : "Ubicación", - "Description" : "Descripción", "Status" : "Estatus", "Confirmed" : "Confirmado", - "Tentative" : "Tentativo", "Categories" : "Categorías", + "Talk" : "Hablar", "Mail" : "Correo", - "Play" : "Reproducir", - "Global" : "Global" -},"pluralForm" :"nplurals=2; plural=(n != 1);" + "Birthday" : "Fecha de nacimiento", + "User not found" : "No se encontró el usuario" +},"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 cfd0993196..09ba914ad3 100644 --- a/l10n/es_CR.js +++ b/l10n/es_CR.js @@ -7,58 +7,83 @@ OC.L10N.register( "Open »%s«" : "Abrir »%s«", "Cheers!" : "¡Saludos!", "Calendar" : "Calendario", + "Confirm" : "Confirmar", + "Where:" : "Dónde:", + "Anniversary" : "Aniversario", + "Personal" : "Personal", "Today" : "Hoy", "Day" : "Día", "Week" : "Semana", "Month" : "Mes", "List" : "Lista", - "Download" : "Descargar", + "Preview" : "Previsualizar", + "Copy link" : "Copiar liga", + "Edit" : "Editar", "Delete" : "Borrar", + "New calendar" : "Nuevo calendario", + "Export" : "Exportar", + "Name" : "Nombre", + "Deleted" : "Borrado", + "Restore" : "Restaurar", + "Delete permanently" : "Borrar permanentemente", "Share link" : "Compartir liga", - "Share with users or groups" : "Compartir con otros usuarios o grupos", "can edit" : "puede editar", - "New calendar" : "Nuevo calendario", + "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", "Show week numbers" : "Mostrar número de semana", - "Settings & import" : "Configuraciones & importar", + "Location" : "Ubicación", + "Description" : "Descripción", + "to" : "para", + "Add" : "Agregar", + "Monday" : "Lunes", + "Tuesday" : "Martes", + "Wednesday" : "Miércoles", + "Thursday" : "Jueves", + "Friday" : "Viernes", + "Saturday" : "Sábado", + "Sunday" : "Domingo", + "Update" : "Actualizar", + "Your email address" : "Tu dirección de correo electrónico", "Notification" : "Notificación", "Email" : "Correo electrónico", + "Delete file" : "Borrar archivo", + "Choose a file to add as attachment" : "Selecciona el archivo a agregar como adjunto", "Unknown" : "Desconocido", + "Accept" : "Aceptar", + "Decline" : "Declinar", + "Tentative" : "Tentativo", + "Send email" : "Enviar correo electrónico", "All day" : "Todo el día", + "Repeat" : "Repetir", "never" : "nunca", "after" : "después", - "Repeat" : "Repetir", - "Monday" : "Lunes", - "Summary" : "Resumen", + "available" : "disponible", "More" : "Más", - "Save" : "Guardar", - "Update" : "Actualizar", - "Personal" : "Personal", + "Global" : "Global", + "Subscribe" : "Suscribir", "Details" : "Detalles", "Attendees" : "Asistentes", - "Reminders" : "Recordatorios", + "Resources" : "Recursos", "Close" : "Cerrar", - "Anniversary" : "Aniversario", "Week {number} of {year}" : "Semana {number} de {year}", "Daily" : "Diariamente", "Weekly" : "Semanalmente", - "next year" : "próximo año", - "today" : "hoy", + "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 ", "When shared hide this event" : "Al compartir, ocultar este evento ", - "Location" : "Ubicación", - "Description" : "Descripción", "Status" : "Estatus", "Confirmed" : "Confirmado", - "Tentative" : "Tentativo", "Categories" : "Categorías", + "Talk" : "Hablar", "Mail" : "Correo", - "Play" : "Reproducir", - "Global" : "Global" + "Birthday" : "Fecha de nacimiento", + "User not found" : "No se encontró el usuario" }, -"nplurals=2; plural=(n != 1);"); +"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 3ec75fab8f..60305863ca 100644 --- a/l10n/es_CR.json +++ b/l10n/es_CR.json @@ -5,58 +5,83 @@ "Open »%s«" : "Abrir »%s«", "Cheers!" : "¡Saludos!", "Calendar" : "Calendario", + "Confirm" : "Confirmar", + "Where:" : "Dónde:", + "Anniversary" : "Aniversario", + "Personal" : "Personal", "Today" : "Hoy", "Day" : "Día", "Week" : "Semana", "Month" : "Mes", "List" : "Lista", - "Download" : "Descargar", + "Preview" : "Previsualizar", + "Copy link" : "Copiar liga", + "Edit" : "Editar", "Delete" : "Borrar", + "New calendar" : "Nuevo calendario", + "Export" : "Exportar", + "Name" : "Nombre", + "Deleted" : "Borrado", + "Restore" : "Restaurar", + "Delete permanently" : "Borrar permanentemente", "Share link" : "Compartir liga", - "Share with users or groups" : "Compartir con otros usuarios o grupos", "can edit" : "puede editar", - "New calendar" : "Nuevo calendario", + "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", "Show week numbers" : "Mostrar número de semana", - "Settings & import" : "Configuraciones & importar", + "Location" : "Ubicación", + "Description" : "Descripción", + "to" : "para", + "Add" : "Agregar", + "Monday" : "Lunes", + "Tuesday" : "Martes", + "Wednesday" : "Miércoles", + "Thursday" : "Jueves", + "Friday" : "Viernes", + "Saturday" : "Sábado", + "Sunday" : "Domingo", + "Update" : "Actualizar", + "Your email address" : "Tu dirección de correo electrónico", "Notification" : "Notificación", "Email" : "Correo electrónico", + "Delete file" : "Borrar archivo", + "Choose a file to add as attachment" : "Selecciona el archivo a agregar como adjunto", "Unknown" : "Desconocido", + "Accept" : "Aceptar", + "Decline" : "Declinar", + "Tentative" : "Tentativo", + "Send email" : "Enviar correo electrónico", "All day" : "Todo el día", + "Repeat" : "Repetir", "never" : "nunca", "after" : "después", - "Repeat" : "Repetir", - "Monday" : "Lunes", - "Summary" : "Resumen", + "available" : "disponible", "More" : "Más", - "Save" : "Guardar", - "Update" : "Actualizar", - "Personal" : "Personal", + "Global" : "Global", + "Subscribe" : "Suscribir", "Details" : "Detalles", "Attendees" : "Asistentes", - "Reminders" : "Recordatorios", + "Resources" : "Recursos", "Close" : "Cerrar", - "Anniversary" : "Aniversario", "Week {number} of {year}" : "Semana {number} de {year}", "Daily" : "Diariamente", "Weekly" : "Semanalmente", - "next year" : "próximo año", - "today" : "hoy", + "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 ", "When shared hide this event" : "Al compartir, ocultar este evento ", - "Location" : "Ubicación", - "Description" : "Descripción", "Status" : "Estatus", "Confirmed" : "Confirmado", - "Tentative" : "Tentativo", "Categories" : "Categorías", + "Talk" : "Hablar", "Mail" : "Correo", - "Play" : "Reproducir", - "Global" : "Global" -},"pluralForm" :"nplurals=2; plural=(n != 1);" + "Birthday" : "Fecha de nacimiento", + "User not found" : "No se encontró el usuario" +},"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 cfd0993196..09ba914ad3 100644 --- a/l10n/es_DO.js +++ b/l10n/es_DO.js @@ -7,58 +7,83 @@ OC.L10N.register( "Open »%s«" : "Abrir »%s«", "Cheers!" : "¡Saludos!", "Calendar" : "Calendario", + "Confirm" : "Confirmar", + "Where:" : "Dónde:", + "Anniversary" : "Aniversario", + "Personal" : "Personal", "Today" : "Hoy", "Day" : "Día", "Week" : "Semana", "Month" : "Mes", "List" : "Lista", - "Download" : "Descargar", + "Preview" : "Previsualizar", + "Copy link" : "Copiar liga", + "Edit" : "Editar", "Delete" : "Borrar", + "New calendar" : "Nuevo calendario", + "Export" : "Exportar", + "Name" : "Nombre", + "Deleted" : "Borrado", + "Restore" : "Restaurar", + "Delete permanently" : "Borrar permanentemente", "Share link" : "Compartir liga", - "Share with users or groups" : "Compartir con otros usuarios o grupos", "can edit" : "puede editar", - "New calendar" : "Nuevo calendario", + "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", "Show week numbers" : "Mostrar número de semana", - "Settings & import" : "Configuraciones & importar", + "Location" : "Ubicación", + "Description" : "Descripción", + "to" : "para", + "Add" : "Agregar", + "Monday" : "Lunes", + "Tuesday" : "Martes", + "Wednesday" : "Miércoles", + "Thursday" : "Jueves", + "Friday" : "Viernes", + "Saturday" : "Sábado", + "Sunday" : "Domingo", + "Update" : "Actualizar", + "Your email address" : "Tu dirección de correo electrónico", "Notification" : "Notificación", "Email" : "Correo electrónico", + "Delete file" : "Borrar archivo", + "Choose a file to add as attachment" : "Selecciona el archivo a agregar como adjunto", "Unknown" : "Desconocido", + "Accept" : "Aceptar", + "Decline" : "Declinar", + "Tentative" : "Tentativo", + "Send email" : "Enviar correo electrónico", "All day" : "Todo el día", + "Repeat" : "Repetir", "never" : "nunca", "after" : "después", - "Repeat" : "Repetir", - "Monday" : "Lunes", - "Summary" : "Resumen", + "available" : "disponible", "More" : "Más", - "Save" : "Guardar", - "Update" : "Actualizar", - "Personal" : "Personal", + "Global" : "Global", + "Subscribe" : "Suscribir", "Details" : "Detalles", "Attendees" : "Asistentes", - "Reminders" : "Recordatorios", + "Resources" : "Recursos", "Close" : "Cerrar", - "Anniversary" : "Aniversario", "Week {number} of {year}" : "Semana {number} de {year}", "Daily" : "Diariamente", "Weekly" : "Semanalmente", - "next year" : "próximo año", - "today" : "hoy", + "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 ", "When shared hide this event" : "Al compartir, ocultar este evento ", - "Location" : "Ubicación", - "Description" : "Descripción", "Status" : "Estatus", "Confirmed" : "Confirmado", - "Tentative" : "Tentativo", "Categories" : "Categorías", + "Talk" : "Hablar", "Mail" : "Correo", - "Play" : "Reproducir", - "Global" : "Global" + "Birthday" : "Fecha de nacimiento", + "User not found" : "No se encontró el usuario" }, -"nplurals=2; plural=(n != 1);"); +"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 3ec75fab8f..60305863ca 100644 --- a/l10n/es_DO.json +++ b/l10n/es_DO.json @@ -5,58 +5,83 @@ "Open »%s«" : "Abrir »%s«", "Cheers!" : "¡Saludos!", "Calendar" : "Calendario", + "Confirm" : "Confirmar", + "Where:" : "Dónde:", + "Anniversary" : "Aniversario", + "Personal" : "Personal", "Today" : "Hoy", "Day" : "Día", "Week" : "Semana", "Month" : "Mes", "List" : "Lista", - "Download" : "Descargar", + "Preview" : "Previsualizar", + "Copy link" : "Copiar liga", + "Edit" : "Editar", "Delete" : "Borrar", + "New calendar" : "Nuevo calendario", + "Export" : "Exportar", + "Name" : "Nombre", + "Deleted" : "Borrado", + "Restore" : "Restaurar", + "Delete permanently" : "Borrar permanentemente", "Share link" : "Compartir liga", - "Share with users or groups" : "Compartir con otros usuarios o grupos", "can edit" : "puede editar", - "New calendar" : "Nuevo calendario", + "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", "Show week numbers" : "Mostrar número de semana", - "Settings & import" : "Configuraciones & importar", + "Location" : "Ubicación", + "Description" : "Descripción", + "to" : "para", + "Add" : "Agregar", + "Monday" : "Lunes", + "Tuesday" : "Martes", + "Wednesday" : "Miércoles", + "Thursday" : "Jueves", + "Friday" : "Viernes", + "Saturday" : "Sábado", + "Sunday" : "Domingo", + "Update" : "Actualizar", + "Your email address" : "Tu dirección de correo electrónico", "Notification" : "Notificación", "Email" : "Correo electrónico", + "Delete file" : "Borrar archivo", + "Choose a file to add as attachment" : "Selecciona el archivo a agregar como adjunto", "Unknown" : "Desconocido", + "Accept" : "Aceptar", + "Decline" : "Declinar", + "Tentative" : "Tentativo", + "Send email" : "Enviar correo electrónico", "All day" : "Todo el día", + "Repeat" : "Repetir", "never" : "nunca", "after" : "después", - "Repeat" : "Repetir", - "Monday" : "Lunes", - "Summary" : "Resumen", + "available" : "disponible", "More" : "Más", - "Save" : "Guardar", - "Update" : "Actualizar", - "Personal" : "Personal", + "Global" : "Global", + "Subscribe" : "Suscribir", "Details" : "Detalles", "Attendees" : "Asistentes", - "Reminders" : "Recordatorios", + "Resources" : "Recursos", "Close" : "Cerrar", - "Anniversary" : "Aniversario", "Week {number} of {year}" : "Semana {number} de {year}", "Daily" : "Diariamente", "Weekly" : "Semanalmente", - "next year" : "próximo año", - "today" : "hoy", + "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 ", "When shared hide this event" : "Al compartir, ocultar este evento ", - "Location" : "Ubicación", - "Description" : "Descripción", "Status" : "Estatus", "Confirmed" : "Confirmado", - "Tentative" : "Tentativo", "Categories" : "Categorías", + "Talk" : "Hablar", "Mail" : "Correo", - "Play" : "Reproducir", - "Global" : "Global" -},"pluralForm" :"nplurals=2; plural=(n != 1);" + "Birthday" : "Fecha de nacimiento", + "User not found" : "No se encontró el usuario" +},"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 cfd0993196..9932d7c02b 100644 --- a/l10n/es_EC.js +++ b/l10n/es_EC.js @@ -1,64 +1,639 @@ 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", + "More events" : "Más eventos", + "No more events today" : "No hay más eventos hoy", + "No upcoming events" : "No hay próximos 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", + "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.", + "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", + "Personal" : "Personal", + "Phone call" : "Llamada telefónica", + "Sick day" : "Día de enfermedad", + "Special occasion" : "Ocasión especial", + "Travel" : "Viaje", + "Vacation" : "Vacaciones", + "Custom Categories" : "Categorías personalizadas", + "Collaborative Tags" : "Etiquetas colaborativas", + "Standard Categories" : "Categorías estándar", + "A Calendar app for Nextcloud" : "Una aplicación 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 aplicación de calendario es una interfaz de usuario para el servidor CalDAV de Nextcloud. Sincroniza fácilmente eventos desde varios dispositivos con tu Nextcloud y edítalos en línea.\n \n * 🚀 **Integración con otras aplicaciones de Nextcloud** ¡Actualmente con Contactos y más por venir!\n * 🌐 **Soporte para WebCal** ¿Quieres ver los días de los partidos de tu equipo favorito en tu calendario? ¡No hay problema!\n * 🙋 **Asistentes** Invita a personas a tus eventos\n * ⌚️ **Disponibilidad** Mira cuándo están disponibles tus asistentes para reunirse\n * ⏰ **Recordatorios** Recibe alarmas para eventos en tu navegador y por correo electrónico\n * 🔍 Búsqueda: Encuentra tus eventos fácilmente\n * ☑️ Tareas: Ve las tareas con fecha de vencimiento directamente en el calendario\n * 🙈 **No estamos reinventando la rueda** Basado en las excelentes bibliotecas [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", + "Event" : "Evento", + "Create new event" : "Crear nuevo evento", "Today" : "Hoy", "Day" : "Día", "Week" : "Semana", "Month" : "Mes", + "Year" : "Año", "List" : "Lista", - "Download" : "Descargar", + "Preview" : "Previsualizar", + "Copy link" : "Copiar liga", + "Edit" : "Editar", "Delete" : "Borrar", + "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", + "Add new" : "Agregar nuevo", + "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", + "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.", + "_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"], + "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", + "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://)", + "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", + "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.", + "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", + "Empty trash bin" : "Eliminar papelera de reciclaje", + "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 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?", + "_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.", + "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", "Share link" : "Compartir liga", - "Share with users or groups" : "Compartir con otros usuarios o grupos", + "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, 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", "can edit" : "puede editar", - "New calendar" : "Nuevo calendario", + "Unshare with {displayName}" : "Dejar de compartir con {displayName}", + "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.", + "Share with users or groups" : "Compartir con otros usuarios o grupos", + "No users or groups" : "Sin usuarios ni grupos", + "Calendar name …" : "Nombre del calendario …", + "Share calendar" : "Compartir calendario", + "Unshare from me" : "Dejar de compartir conmigo", + "Save" : "Guardar", + "Failed to save calendar name and color" : "Error al guardar el nombre y el color del calendario", + "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"], + "Default attachments location" : "Ubicación predeterminada para adjuntos", + "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.", + "{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", + "Import partially failed. Imported {accepted} out of {total}." : "La importación falló parcialmente. Se importaron {accepted} de {total}.", + "_Successfully imported %n event_::_Successfully imported %n events_" : ["Se importó correctamente %n evento","Se importaron correctamente %n eventos","Se importaron correctamente %n eventos"], "Automatic" : "Automático", + "Automatic ({detected})" : "Automático ({detected})", + "New setting was not saved successfully." : "No se guardó correctamente la nueva configuración.", + "Shortcut overview" : "Resumen de accesos directos", "or" : "o", + "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", + "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", - "Settings & import" : "Configuraciones & importar", + "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", + "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.", + "Appointment was created successfully" : "La cita se creó correctamente", + "Appointment was updated successfully" : "La cita se actualizó 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"], + "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", + "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", + "Wednesday" : "Miércoles", + "Thursday" : "Jueves", + "Friday" : "Viernes", + "Saturday" : "Sábado", + "Sunday" : "Domingo", + "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", + "Create appointment" : "Crear cita", + "Edit appointment" : "Editar cita", + "Update" : "Actualizar", + "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.", + "Book the appointment" : "Reservar la cita", + "Reminder" : "Recordatorio", + "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", + "on" : "el", + "at" : "a las", + "+ Add reminder" : "+ Agregar recordatorio", + "Add reminder" : "Agregar 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"], + "No attachments" : "Sin adjuntos", + "Add from Files" : "Agregar desde Archivos", + "Upload from device" : "Subir desde el dispositivo", + "Delete file" : "Borrar archivo", + "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!", + "_{count} attachment_::_{count} attachments_" : ["{count} adjunto","{count} adjuntos","{count} adjuntos"], + "Invitation accepted" : "Invitación aceptada", + "Available" : "Disponible", + "Suggested" : "Sugerido", + "Participation marked as tentative" : "Participación marcada como tentativa", + "Accepted {organizerName}'s invitation" : "Aceptó la invitación de {organizerName}", + "Not available" : "No disponible", + "Invitation declined" : "Invitación rechazada", + "Declined {organizerName}'s invitation" : "Rechazó la invitación de {organizerName}", + "Invitation is delegated" : "La invitación ha sido delegada", + "Checking availability" : "Verificando disponibilidad", + "Invitation sent" : "Invitación enviada", + "Has not responded to {organizerName}'s invitation yet" : "No ha respondido a la invitación de {organizerName} aún", + "Availability of attendees, resources and rooms" : "Disponibilidad de asistentes, recursos y salas", + "{organizer} (organizer)" : "{organizer} (organizador)", + "Free" : "Disponible", + "Busy (tentative)" : "Ocupado (tentativo)", + "Busy" : "Ocupado", + "Out of office" : "Fuera de la oficina", "Unknown" : "Desconocido", + "Accept" : "Aceptar", + "Decline" : "Declinar", + "Tentative" : "Tentativo", + "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.", + "Create Talk room for this event" : "Crear sala de Talk para este evento", + "Show busy times" : "Mostrar horarios ocupados", + "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", + "Send email" : "Enviar correo electrónico", + "Chairperson" : "Presidente", + "Required participant" : "Participante requerido", + "Optional participant" : "Participante opcional", + "Non-participant" : "No participante", + "Remove attendee" : "Eliminar asistente", + "Search for emails, users or contacts" : "Buscar correos electrónicos, usuarios o contactos", + "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", "All day" : "Todo el día", + "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 {startDate}" : "desde {startDate}", + "from {startDate} at {startTime}" : "desde {startDate} a las {startTime}", + "to {endDate}" : "a {endDate}", + "to {endDate} at {endTime}" : "a {endDate} a las {endTime}", + "Repeat" : "Repetir", + "End repeat" : "Finalizar repetición", + "Select to end repeat" : "Seleccionar para finalizar la repetición", "never" : "nunca", + "on date" : "en la fecha", "after" : "después", - "Repeat" : "Repetir", - "Monday" : "Lunes", - "Summary" : "Resumen", + "_time_::_times_" : ["hora","veces","veces"], + "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", + "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 esta y a todas las siguientes ocurrencias.", + "Repeat every" : "Repetir cada", + "By day of the month" : "Por día del mes", + "On the" : "El", + "_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", + "No recurrence" : "Sin recurrencia", + "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.", + "Suggestions" : "Sugerencias", + "No rooms or resources yet" : "Aún no hay salas o recursos", + "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", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} asiento","{seatingCapacity} asientos","{seatingCapacity} asientos"], + "Projector" : "Proyector", + "Whiteboard" : "Pizarra", + "Search for resources or rooms" : "Buscar recursos o salas", + "available" : "disponible", + "unavailable" : "no disponible", + "Room type" : "Tipo de sala", + "Any" : "Cualquiera", + "Minimum seating capacity" : "Capacidad mínima de asientos", "More" : "Más", - "Save" : "Guardar", - "Update" : "Actualizar", - "Personal" : "Personal", + "Update this occurrence" : "Actualizar esta ocurrencia", + "Update this and all future" : "Actualizar esta y todas las siguientes", + "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?", + "Please select a time zone:" : "Selecciona una zona horaria:", + "Pick a time" : "Seleccionar una hora", + "Pick a date" : "Selecciona una fecha", + "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", + "Type to search time zone" : "Escribe para buscar la zona horaria", + "Global" : "Global", + "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", + "Holidays in {region}" : "Vacaciones en {región}", + "An error occurred, unable to create the public holiday calendar." : "Ocurrió un error, no se pudo crear el calendario de días festivos públicos.", + "Select date" : "Seleccionar fecha", + "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}", + "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.", + "Create a new event" : "Crear un nuevo evento", + "[Today]" : "[Hoy]", + "[Tomorrow]" : "[Mañana]", + "[Yesterday]" : "[Ayer]", + "[Last] dddd" : "[Último] dddd", + "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", "Details" : "Detalles", + "Managing shared access" : "Gestionar acceso compartido", + "Deny access" : "Denegar acceso", + "Invite" : "Invitar", "Attendees" : "Asistentes", - "Reminders" : "Recordatorios", + "Resources" : "Recursos", + "_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"], "Close" : "Cerrar", - "Anniversary" : "Aniversario", + "Show more details" : "Mostrar más detalles", + "Subscribe to {name}" : "Suscribirse a {name}", + "Export {name}" : "Exportar {name}", + "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}", + "Does not repeat" : "No se repite", "Daily" : "Diariamente", "Weekly" : "Semanalmente", - "next year" : "próximo año", - "today" : "hoy", + "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}" : "en {monthNames}", + "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"], + "Untitled event" : "Evento sin título", + "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 ", - "Location" : "Ubicación", - "Description" : "Descripción", + "The visibility of this event in shared calendars." : "La visibilidad de este evento en calendarios compartidos.", + "Add a location" : "Agregar una ubicación", + "Add a description" : "Agregar una descripción", "Status" : "Estatus", "Confirmed" : "Confirmado", - "Tentative" : "Tentativo", + "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", + "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", + "Chat room for event" : "Sala de chat para el evento", + "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.", + "Meditation" : "Meditación", + "Relaxing" : "Relajante", + "Relax" : "Relajarse", + "Break" : "Descanso", + "Commute" : "Trayecto", + "Commuting" : "Desplazamiento", + "Shuttle" : "Transporte", + "Invoice" : "Factura", + "Finance" : "Finanzas", + "Bank" : "Banco", + "Money" : "Dinero", + "Wedding" : "Boda", + "Dog" : "Perro", + "Concert" : "Concierto", + "Festival" : "Festival", + "Theater" : "Teatro", + "Theatre" : "Teatro", + "Presentation" : "Presentación", + "Talk" : "Hablar", + "Speech" : "Discurso", + "Deadline" : "Fecha límite", + "Submission" : "Entrega", + "Reporting" : "Informes", + "Camping" : "Camping", + "Camp" : "Acampar", + "Election" : "Elección", + "Voting" : "Votación", + "Vote" : "Votar", + "Barbecue" : "Barbacoa", + "Barbeque" : "Jardín", + "Garden" : "Granja", + "Farm" : "Cine", + "Movie" : "Película", + "Cinema" : "Graduación", + "Graduation" : "Tormenta de ideas", + "Brainstorm" : "Revisión", + "Review" : "Auditoría", + "Audit" : "Inspección", + "Inspection" : "Corrección de pruebas", + "Proofreading" : "Béisbol", + "Baseball" : "Reunión", + "Meet" : "Planificación", + "Planning" : "Apuntar", + "Pointing" : "Retroalimentación", + "Retrospective" : "Oficina", + "Office" : "Semana de colaboradores", + "Contributor week" : "Fútbol", "Mail" : "Correo", - "Play" : "Reproducir", - "Global" : "Global" + "Soccer" : "Fútbol americano", + "Football" : "Videojuegos", + "Gaming" : "Conducir", + "Drive" : "Conducción", + "Driving" : "Bicicleta", + "Bicycle" : "Ciclo", + "Cycle" : "Ciclismo", + "Cycling" : "Ciclismo", + "Biking" : "Ciclismo", + "Bike" : "Ciclismo", + "Podcast" : "Podcast", + "Basketball" : "Baloncesto", + "Fishing" : "Pesca", + "Hiking" : "Senderismo", + "Hike" : "Senderismo", + "Art" : "Arte", + "Exhibition" : "Exposición", + "Museum" : "Museo", + "Pilates" : "Pilates", + "Park" : "Parque", + "Walk" : "Caminata", + "Studying" : "Estudiar", + "Doctor" : "Doctor", + "Health" : "Estado", + "Dentist" : "Dentista", + "Hospital" : "Hospital", + "Interview" : "Entrevista", + "Training" : "Entrenamiento", + "Practice" : "Práctica", + "Sports" : "Deportes", + "Exercise" : "Ejercicio", + "Work out" : "Entrenamiento", + "Working out" : "Trabajar fuera", + "Gym" : "Gimnasio", + "Barber" : "Barbero", + "Haircut" : "Corte de pelo", + "Hairdresser" : "Peluquero", + "Exam" : "Examen", + "Written test" : "Prueba escrita", + "Oral test" : "Prueba oral", + "Working" : "Trabajando", + "New Years Eve" : "Nochevieja", + "NYE" : "Nochevieja", + "Fireworks" : "Fuegos artificiales", + "Running" : "Correr", + "Go for a run" : "Salir a correr", + "Marathon" : "Maratón", + "Video-conference" : "Videoconferencia", + "Conference-call" : "Llamada de conferencia", + "Video-call" : "Llamada de video", + "Video-chat" : "Videochat", + "Video-meeting" : "Reunión por video", + "Call" : "Llamar", + "Calling" : "Llamando", + "Christmas" : "Navidad", + "Conference" : "Conferencia", + "Pizza" : "Pizza", + "Travelling" : "Viajar", + "Trip" : "Viaje", + "Journey" : "Trayecto", + "Collaborate" : "Colaborar", + "Pair" : "Pareja", + "Lecture" : "Conferencia", + "Seminar" : "Seminario", + "Teaching" : "Enseñanza", + "Photograph" : "Fotografía", + "Party" : "Fiesta", + "Celebration" : "Celebración", + "Celebrate" : "Celebrar", + "Birthday" : "Fecha de nacimiento", + "Shopping" : "Compras", + "Groceries" : "Comestibles", + "Skate" : "Patinar", + "Skateboard" : "Monopatín", + "Wine tasting" : "Cata de vinos", + "Golf" : "Golf", + "Dinner" : "Cena", + "Lunch" : "Almuerzo", + "Appointment not found" : "Cita no encontrada", + "User not found" : "No se encontró el usuario" }, -"nplurals=2; plural=(n != 1);"); +"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 3ec75fab8f..b0a488d943 100644 --- a/l10n/es_EC.json +++ b/l10n/es_EC.json @@ -1,62 +1,637 @@ { "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", + "More events" : "Más eventos", + "No more events today" : "No hay más eventos hoy", + "No upcoming events" : "No hay próximos 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", + "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.", + "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", + "Personal" : "Personal", + "Phone call" : "Llamada telefónica", + "Sick day" : "Día de enfermedad", + "Special occasion" : "Ocasión especial", + "Travel" : "Viaje", + "Vacation" : "Vacaciones", + "Custom Categories" : "Categorías personalizadas", + "Collaborative Tags" : "Etiquetas colaborativas", + "Standard Categories" : "Categorías estándar", + "A Calendar app for Nextcloud" : "Una aplicación 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 aplicación de calendario es una interfaz de usuario para el servidor CalDAV de Nextcloud. Sincroniza fácilmente eventos desde varios dispositivos con tu Nextcloud y edítalos en línea.\n \n * 🚀 **Integración con otras aplicaciones de Nextcloud** ¡Actualmente con Contactos y más por venir!\n * 🌐 **Soporte para WebCal** ¿Quieres ver los días de los partidos de tu equipo favorito en tu calendario? ¡No hay problema!\n * 🙋 **Asistentes** Invita a personas a tus eventos\n * ⌚️ **Disponibilidad** Mira cuándo están disponibles tus asistentes para reunirse\n * ⏰ **Recordatorios** Recibe alarmas para eventos en tu navegador y por correo electrónico\n * 🔍 Búsqueda: Encuentra tus eventos fácilmente\n * ☑️ Tareas: Ve las tareas con fecha de vencimiento directamente en el calendario\n * 🙈 **No estamos reinventando la rueda** Basado en las excelentes bibliotecas [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", + "Event" : "Evento", + "Create new event" : "Crear nuevo evento", "Today" : "Hoy", "Day" : "Día", "Week" : "Semana", "Month" : "Mes", + "Year" : "Año", "List" : "Lista", - "Download" : "Descargar", + "Preview" : "Previsualizar", + "Copy link" : "Copiar liga", + "Edit" : "Editar", "Delete" : "Borrar", + "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", + "Add new" : "Agregar nuevo", + "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", + "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.", + "_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"], + "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", + "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://)", + "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", + "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.", + "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", + "Empty trash bin" : "Eliminar papelera de reciclaje", + "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 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?", + "_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.", + "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", "Share link" : "Compartir liga", - "Share with users or groups" : "Compartir con otros usuarios o grupos", + "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, 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", "can edit" : "puede editar", - "New calendar" : "Nuevo calendario", + "Unshare with {displayName}" : "Dejar de compartir con {displayName}", + "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.", + "Share with users or groups" : "Compartir con otros usuarios o grupos", + "No users or groups" : "Sin usuarios ni grupos", + "Calendar name …" : "Nombre del calendario …", + "Share calendar" : "Compartir calendario", + "Unshare from me" : "Dejar de compartir conmigo", + "Save" : "Guardar", + "Failed to save calendar name and color" : "Error al guardar el nombre y el color del calendario", + "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"], + "Default attachments location" : "Ubicación predeterminada para adjuntos", + "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.", + "{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", + "Import partially failed. Imported {accepted} out of {total}." : "La importación falló parcialmente. Se importaron {accepted} de {total}.", + "_Successfully imported %n event_::_Successfully imported %n events_" : ["Se importó correctamente %n evento","Se importaron correctamente %n eventos","Se importaron correctamente %n eventos"], "Automatic" : "Automático", + "Automatic ({detected})" : "Automático ({detected})", + "New setting was not saved successfully." : "No se guardó correctamente la nueva configuración.", + "Shortcut overview" : "Resumen de accesos directos", "or" : "o", + "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", + "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", - "Settings & import" : "Configuraciones & importar", + "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", + "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.", + "Appointment was created successfully" : "La cita se creó correctamente", + "Appointment was updated successfully" : "La cita se actualizó 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"], + "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", + "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", + "Wednesday" : "Miércoles", + "Thursday" : "Jueves", + "Friday" : "Viernes", + "Saturday" : "Sábado", + "Sunday" : "Domingo", + "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", + "Create appointment" : "Crear cita", + "Edit appointment" : "Editar cita", + "Update" : "Actualizar", + "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.", + "Book the appointment" : "Reservar la cita", + "Reminder" : "Recordatorio", + "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", + "on" : "el", + "at" : "a las", + "+ Add reminder" : "+ Agregar recordatorio", + "Add reminder" : "Agregar 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"], + "No attachments" : "Sin adjuntos", + "Add from Files" : "Agregar desde Archivos", + "Upload from device" : "Subir desde el dispositivo", + "Delete file" : "Borrar archivo", + "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!", + "_{count} attachment_::_{count} attachments_" : ["{count} adjunto","{count} adjuntos","{count} adjuntos"], + "Invitation accepted" : "Invitación aceptada", + "Available" : "Disponible", + "Suggested" : "Sugerido", + "Participation marked as tentative" : "Participación marcada como tentativa", + "Accepted {organizerName}'s invitation" : "Aceptó la invitación de {organizerName}", + "Not available" : "No disponible", + "Invitation declined" : "Invitación rechazada", + "Declined {organizerName}'s invitation" : "Rechazó la invitación de {organizerName}", + "Invitation is delegated" : "La invitación ha sido delegada", + "Checking availability" : "Verificando disponibilidad", + "Invitation sent" : "Invitación enviada", + "Has not responded to {organizerName}'s invitation yet" : "No ha respondido a la invitación de {organizerName} aún", + "Availability of attendees, resources and rooms" : "Disponibilidad de asistentes, recursos y salas", + "{organizer} (organizer)" : "{organizer} (organizador)", + "Free" : "Disponible", + "Busy (tentative)" : "Ocupado (tentativo)", + "Busy" : "Ocupado", + "Out of office" : "Fuera de la oficina", "Unknown" : "Desconocido", + "Accept" : "Aceptar", + "Decline" : "Declinar", + "Tentative" : "Tentativo", + "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.", + "Create Talk room for this event" : "Crear sala de Talk para este evento", + "Show busy times" : "Mostrar horarios ocupados", + "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", + "Send email" : "Enviar correo electrónico", + "Chairperson" : "Presidente", + "Required participant" : "Participante requerido", + "Optional participant" : "Participante opcional", + "Non-participant" : "No participante", + "Remove attendee" : "Eliminar asistente", + "Search for emails, users or contacts" : "Buscar correos electrónicos, usuarios o contactos", + "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", "All day" : "Todo el día", + "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 {startDate}" : "desde {startDate}", + "from {startDate} at {startTime}" : "desde {startDate} a las {startTime}", + "to {endDate}" : "a {endDate}", + "to {endDate} at {endTime}" : "a {endDate} a las {endTime}", + "Repeat" : "Repetir", + "End repeat" : "Finalizar repetición", + "Select to end repeat" : "Seleccionar para finalizar la repetición", "never" : "nunca", + "on date" : "en la fecha", "after" : "después", - "Repeat" : "Repetir", - "Monday" : "Lunes", - "Summary" : "Resumen", + "_time_::_times_" : ["hora","veces","veces"], + "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", + "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 esta y a todas las siguientes ocurrencias.", + "Repeat every" : "Repetir cada", + "By day of the month" : "Por día del mes", + "On the" : "El", + "_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", + "No recurrence" : "Sin recurrencia", + "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.", + "Suggestions" : "Sugerencias", + "No rooms or resources yet" : "Aún no hay salas o recursos", + "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", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} asiento","{seatingCapacity} asientos","{seatingCapacity} asientos"], + "Projector" : "Proyector", + "Whiteboard" : "Pizarra", + "Search for resources or rooms" : "Buscar recursos o salas", + "available" : "disponible", + "unavailable" : "no disponible", + "Room type" : "Tipo de sala", + "Any" : "Cualquiera", + "Minimum seating capacity" : "Capacidad mínima de asientos", "More" : "Más", - "Save" : "Guardar", - "Update" : "Actualizar", - "Personal" : "Personal", + "Update this occurrence" : "Actualizar esta ocurrencia", + "Update this and all future" : "Actualizar esta y todas las siguientes", + "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?", + "Please select a time zone:" : "Selecciona una zona horaria:", + "Pick a time" : "Seleccionar una hora", + "Pick a date" : "Selecciona una fecha", + "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", + "Type to search time zone" : "Escribe para buscar la zona horaria", + "Global" : "Global", + "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", + "Holidays in {region}" : "Vacaciones en {región}", + "An error occurred, unable to create the public holiday calendar." : "Ocurrió un error, no se pudo crear el calendario de días festivos públicos.", + "Select date" : "Seleccionar fecha", + "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}", + "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.", + "Create a new event" : "Crear un nuevo evento", + "[Today]" : "[Hoy]", + "[Tomorrow]" : "[Mañana]", + "[Yesterday]" : "[Ayer]", + "[Last] dddd" : "[Último] dddd", + "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", "Details" : "Detalles", + "Managing shared access" : "Gestionar acceso compartido", + "Deny access" : "Denegar acceso", + "Invite" : "Invitar", "Attendees" : "Asistentes", - "Reminders" : "Recordatorios", + "Resources" : "Recursos", + "_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"], "Close" : "Cerrar", - "Anniversary" : "Aniversario", + "Show more details" : "Mostrar más detalles", + "Subscribe to {name}" : "Suscribirse a {name}", + "Export {name}" : "Exportar {name}", + "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}", + "Does not repeat" : "No se repite", "Daily" : "Diariamente", "Weekly" : "Semanalmente", - "next year" : "próximo año", - "today" : "hoy", + "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}" : "en {monthNames}", + "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"], + "Untitled event" : "Evento sin título", + "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 ", - "Location" : "Ubicación", - "Description" : "Descripción", + "The visibility of this event in shared calendars." : "La visibilidad de este evento en calendarios compartidos.", + "Add a location" : "Agregar una ubicación", + "Add a description" : "Agregar una descripción", "Status" : "Estatus", "Confirmed" : "Confirmado", - "Tentative" : "Tentativo", + "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", + "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", + "Chat room for event" : "Sala de chat para el evento", + "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.", + "Meditation" : "Meditación", + "Relaxing" : "Relajante", + "Relax" : "Relajarse", + "Break" : "Descanso", + "Commute" : "Trayecto", + "Commuting" : "Desplazamiento", + "Shuttle" : "Transporte", + "Invoice" : "Factura", + "Finance" : "Finanzas", + "Bank" : "Banco", + "Money" : "Dinero", + "Wedding" : "Boda", + "Dog" : "Perro", + "Concert" : "Concierto", + "Festival" : "Festival", + "Theater" : "Teatro", + "Theatre" : "Teatro", + "Presentation" : "Presentación", + "Talk" : "Hablar", + "Speech" : "Discurso", + "Deadline" : "Fecha límite", + "Submission" : "Entrega", + "Reporting" : "Informes", + "Camping" : "Camping", + "Camp" : "Acampar", + "Election" : "Elección", + "Voting" : "Votación", + "Vote" : "Votar", + "Barbecue" : "Barbacoa", + "Barbeque" : "Jardín", + "Garden" : "Granja", + "Farm" : "Cine", + "Movie" : "Película", + "Cinema" : "Graduación", + "Graduation" : "Tormenta de ideas", + "Brainstorm" : "Revisión", + "Review" : "Auditoría", + "Audit" : "Inspección", + "Inspection" : "Corrección de pruebas", + "Proofreading" : "Béisbol", + "Baseball" : "Reunión", + "Meet" : "Planificación", + "Planning" : "Apuntar", + "Pointing" : "Retroalimentación", + "Retrospective" : "Oficina", + "Office" : "Semana de colaboradores", + "Contributor week" : "Fútbol", "Mail" : "Correo", - "Play" : "Reproducir", - "Global" : "Global" -},"pluralForm" :"nplurals=2; plural=(n != 1);" + "Soccer" : "Fútbol americano", + "Football" : "Videojuegos", + "Gaming" : "Conducir", + "Drive" : "Conducción", + "Driving" : "Bicicleta", + "Bicycle" : "Ciclo", + "Cycle" : "Ciclismo", + "Cycling" : "Ciclismo", + "Biking" : "Ciclismo", + "Bike" : "Ciclismo", + "Podcast" : "Podcast", + "Basketball" : "Baloncesto", + "Fishing" : "Pesca", + "Hiking" : "Senderismo", + "Hike" : "Senderismo", + "Art" : "Arte", + "Exhibition" : "Exposición", + "Museum" : "Museo", + "Pilates" : "Pilates", + "Park" : "Parque", + "Walk" : "Caminata", + "Studying" : "Estudiar", + "Doctor" : "Doctor", + "Health" : "Estado", + "Dentist" : "Dentista", + "Hospital" : "Hospital", + "Interview" : "Entrevista", + "Training" : "Entrenamiento", + "Practice" : "Práctica", + "Sports" : "Deportes", + "Exercise" : "Ejercicio", + "Work out" : "Entrenamiento", + "Working out" : "Trabajar fuera", + "Gym" : "Gimnasio", + "Barber" : "Barbero", + "Haircut" : "Corte de pelo", + "Hairdresser" : "Peluquero", + "Exam" : "Examen", + "Written test" : "Prueba escrita", + "Oral test" : "Prueba oral", + "Working" : "Trabajando", + "New Years Eve" : "Nochevieja", + "NYE" : "Nochevieja", + "Fireworks" : "Fuegos artificiales", + "Running" : "Correr", + "Go for a run" : "Salir a correr", + "Marathon" : "Maratón", + "Video-conference" : "Videoconferencia", + "Conference-call" : "Llamada de conferencia", + "Video-call" : "Llamada de video", + "Video-chat" : "Videochat", + "Video-meeting" : "Reunión por video", + "Call" : "Llamar", + "Calling" : "Llamando", + "Christmas" : "Navidad", + "Conference" : "Conferencia", + "Pizza" : "Pizza", + "Travelling" : "Viajar", + "Trip" : "Viaje", + "Journey" : "Trayecto", + "Collaborate" : "Colaborar", + "Pair" : "Pareja", + "Lecture" : "Conferencia", + "Seminar" : "Seminario", + "Teaching" : "Enseñanza", + "Photograph" : "Fotografía", + "Party" : "Fiesta", + "Celebration" : "Celebración", + "Celebrate" : "Celebrar", + "Birthday" : "Fecha de nacimiento", + "Shopping" : "Compras", + "Groceries" : "Comestibles", + "Skate" : "Patinar", + "Skateboard" : "Monopatín", + "Wine tasting" : "Cata de vinos", + "Golf" : "Golf", + "Dinner" : "Cena", + "Lunch" : "Almuerzo", + "Appointment not found" : "Cita no encontrada", + "User not found" : "No se encontró el usuario" +},"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 cfd0993196..7839b8b873 100644 --- a/l10n/es_GT.js +++ b/l10n/es_GT.js @@ -7,58 +7,85 @@ OC.L10N.register( "Open »%s«" : "Abrir »%s«", "Cheers!" : "¡Saludos!", "Calendar" : "Calendario", + "Confirm" : "Confirmar", + "Where:" : "Dónde:", + "Anniversary" : "Aniversario", + "Personal" : "Personal", "Today" : "Hoy", "Day" : "Día", "Week" : "Semana", "Month" : "Mes", "List" : "Lista", - "Download" : "Descargar", + "Preview" : "Previsualizar", + "Copy link" : "Copiar liga", + "Edit" : "Editar", "Delete" : "Borrar", + "New calendar" : "Nuevo calendario", + "Export" : "Exportar", + "Name" : "Nombre", + "Deleted" : "Borrado", + "Restore" : "Restaurar", + "Delete permanently" : "Borrar permanentemente", "Share link" : "Compartir liga", - "Share with users or groups" : "Compartir con otros usuarios o grupos", "can edit" : "puede editar", - "New calendar" : "Nuevo calendario", + "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", "Show week numbers" : "Mostrar número de semana", - "Settings & import" : "Configuraciones & importar", + "Show keyboard shortcuts" : "Mostrar atajos de teclado", + "Location" : "Ubicación", + "Description" : "Descripción", + "to" : "para", + "Add" : "Agregar", + "Monday" : "Lunes", + "Tuesday" : "Martes", + "Wednesday" : "Miércoles", + "Thursday" : "Jueves", + "Friday" : "Viernes", + "Saturday" : "Sábado", + "Sunday" : "Domingo", + "Update" : "Actualizar", + "Your email address" : "Tu dirección de correo electrónico", "Notification" : "Notificación", "Email" : "Correo electrónico", + "Delete file" : "Borrar archivo", + "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", "Unknown" : "Desconocido", + "Accept" : "Aceptar", + "Decline" : "Declinar", + "Tentative" : "Tentativo", + "Send email" : "Enviar correo electrónico", "All day" : "Todo el día", + "Repeat" : "Repetir", "never" : "nunca", "after" : "después", - "Repeat" : "Repetir", - "Monday" : "Lunes", - "Summary" : "Resumen", + "available" : "disponible", "More" : "Más", - "Save" : "Guardar", - "Update" : "Actualizar", - "Personal" : "Personal", + "Global" : "Global", + "Subscribe" : "Suscribir", "Details" : "Detalles", "Attendees" : "Asistentes", - "Reminders" : "Recordatorios", + "Resources" : "Recursos", "Close" : "Cerrar", - "Anniversary" : "Aniversario", "Week {number} of {year}" : "Semana {number} de {year}", "Daily" : "Diariamente", "Weekly" : "Semanalmente", - "next year" : "próximo año", - "today" : "hoy", + "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 ", "When shared hide this event" : "Al compartir, ocultar este evento ", - "Location" : "Ubicación", - "Description" : "Descripción", "Status" : "Estatus", "Confirmed" : "Confirmado", - "Tentative" : "Tentativo", "Categories" : "Categorías", + "Talk" : "Hablar", "Mail" : "Correo", - "Play" : "Reproducir", - "Global" : "Global" + "Birthday" : "Fecha de nacimiento", + "User not found" : "No se encontró el usuario" }, -"nplurals=2; plural=(n != 1);"); +"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 3ec75fab8f..62155bafe2 100644 --- a/l10n/es_GT.json +++ b/l10n/es_GT.json @@ -5,58 +5,85 @@ "Open »%s«" : "Abrir »%s«", "Cheers!" : "¡Saludos!", "Calendar" : "Calendario", + "Confirm" : "Confirmar", + "Where:" : "Dónde:", + "Anniversary" : "Aniversario", + "Personal" : "Personal", "Today" : "Hoy", "Day" : "Día", "Week" : "Semana", "Month" : "Mes", "List" : "Lista", - "Download" : "Descargar", + "Preview" : "Previsualizar", + "Copy link" : "Copiar liga", + "Edit" : "Editar", "Delete" : "Borrar", + "New calendar" : "Nuevo calendario", + "Export" : "Exportar", + "Name" : "Nombre", + "Deleted" : "Borrado", + "Restore" : "Restaurar", + "Delete permanently" : "Borrar permanentemente", "Share link" : "Compartir liga", - "Share with users or groups" : "Compartir con otros usuarios o grupos", "can edit" : "puede editar", - "New calendar" : "Nuevo calendario", + "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", "Show week numbers" : "Mostrar número de semana", - "Settings & import" : "Configuraciones & importar", + "Show keyboard shortcuts" : "Mostrar atajos de teclado", + "Location" : "Ubicación", + "Description" : "Descripción", + "to" : "para", + "Add" : "Agregar", + "Monday" : "Lunes", + "Tuesday" : "Martes", + "Wednesday" : "Miércoles", + "Thursday" : "Jueves", + "Friday" : "Viernes", + "Saturday" : "Sábado", + "Sunday" : "Domingo", + "Update" : "Actualizar", + "Your email address" : "Tu dirección de correo electrónico", "Notification" : "Notificación", "Email" : "Correo electrónico", + "Delete file" : "Borrar archivo", + "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", "Unknown" : "Desconocido", + "Accept" : "Aceptar", + "Decline" : "Declinar", + "Tentative" : "Tentativo", + "Send email" : "Enviar correo electrónico", "All day" : "Todo el día", + "Repeat" : "Repetir", "never" : "nunca", "after" : "después", - "Repeat" : "Repetir", - "Monday" : "Lunes", - "Summary" : "Resumen", + "available" : "disponible", "More" : "Más", - "Save" : "Guardar", - "Update" : "Actualizar", - "Personal" : "Personal", + "Global" : "Global", + "Subscribe" : "Suscribir", "Details" : "Detalles", "Attendees" : "Asistentes", - "Reminders" : "Recordatorios", + "Resources" : "Recursos", "Close" : "Cerrar", - "Anniversary" : "Aniversario", "Week {number} of {year}" : "Semana {number} de {year}", "Daily" : "Diariamente", "Weekly" : "Semanalmente", - "next year" : "próximo año", - "today" : "hoy", + "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 ", "When shared hide this event" : "Al compartir, ocultar este evento ", - "Location" : "Ubicación", - "Description" : "Descripción", "Status" : "Estatus", "Confirmed" : "Confirmado", - "Tentative" : "Tentativo", "Categories" : "Categorías", + "Talk" : "Hablar", "Mail" : "Correo", - "Play" : "Reproducir", - "Global" : "Global" -},"pluralForm" :"nplurals=2; plural=(n != 1);" + "Birthday" : "Fecha de nacimiento", + "User not found" : "No se encontró el usuario" +},"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 cfd0993196..f993ad9683 100644 --- a/l10n/es_HN.js +++ b/l10n/es_HN.js @@ -7,58 +7,82 @@ OC.L10N.register( "Open »%s«" : "Abrir »%s«", "Cheers!" : "¡Saludos!", "Calendar" : "Calendario", + "Confirm" : "Confirmar", + "Where:" : "Dónde:", + "Anniversary" : "Aniversario", + "Personal" : "Personal", "Today" : "Hoy", "Day" : "Día", "Week" : "Semana", "Month" : "Mes", "List" : "Lista", - "Download" : "Descargar", + "Preview" : "Previsualizar", + "Copy link" : "Copiar liga", + "Edit" : "Editar", "Delete" : "Borrar", + "New calendar" : "Nuevo calendario", + "Export" : "Exportar", + "Name" : "Nombre", + "Deleted" : "Borrado", + "Restore" : "Restaurar", + "Delete permanently" : "Borrar permanentemente", "Share link" : "Compartir liga", - "Share with users or groups" : "Compartir con otros usuarios o grupos", "can edit" : "puede editar", - "New calendar" : "Nuevo calendario", + "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", "Show week numbers" : "Mostrar número de semana", - "Settings & import" : "Configuraciones & importar", + "Location" : "Ubicación", + "Description" : "Descripción", + "to" : "para", + "Add" : "Agregar", + "Monday" : "Lunes", + "Tuesday" : "Martes", + "Wednesday" : "Miércoles", + "Thursday" : "Jueves", + "Friday" : "Viernes", + "Saturday" : "Sábado", + "Sunday" : "Domingo", + "Update" : "Actualizar", + "Your email address" : "Tu dirección de correo electrónico", "Notification" : "Notificación", "Email" : "Correo electrónico", + "Delete file" : "Borrar archivo", + "Choose a file to add as attachment" : "Selecciona el archivo a agregar como adjunto", "Unknown" : "Desconocido", + "Accept" : "Aceptar", + "Decline" : "Declinar", + "Tentative" : "Tentativo", + "Send email" : "Enviar correo electrónico", "All day" : "Todo el día", + "Repeat" : "Repetir", "never" : "nunca", "after" : "después", - "Repeat" : "Repetir", - "Monday" : "Lunes", - "Summary" : "Resumen", + "available" : "disponible", "More" : "Más", - "Save" : "Guardar", - "Update" : "Actualizar", - "Personal" : "Personal", + "Global" : "Global", + "Subscribe" : "Suscribir", "Details" : "Detalles", "Attendees" : "Asistentes", - "Reminders" : "Recordatorios", + "Resources" : "Recursos", "Close" : "Cerrar", - "Anniversary" : "Aniversario", "Week {number} of {year}" : "Semana {number} de {year}", "Daily" : "Diariamente", "Weekly" : "Semanalmente", - "next year" : "próximo año", - "today" : "hoy", + "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 ", "When shared hide this event" : "Al compartir, ocultar este evento ", - "Location" : "Ubicación", - "Description" : "Descripción", "Status" : "Estatus", "Confirmed" : "Confirmado", - "Tentative" : "Tentativo", "Categories" : "Categorías", + "Talk" : "Hablar", "Mail" : "Correo", - "Play" : "Reproducir", - "Global" : "Global" + "Birthday" : "Fecha de nacimiento" }, -"nplurals=2; plural=(n != 1);"); +"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 3ec75fab8f..6d76fae60c 100644 --- a/l10n/es_HN.json +++ b/l10n/es_HN.json @@ -5,58 +5,82 @@ "Open »%s«" : "Abrir »%s«", "Cheers!" : "¡Saludos!", "Calendar" : "Calendario", + "Confirm" : "Confirmar", + "Where:" : "Dónde:", + "Anniversary" : "Aniversario", + "Personal" : "Personal", "Today" : "Hoy", "Day" : "Día", "Week" : "Semana", "Month" : "Mes", "List" : "Lista", - "Download" : "Descargar", + "Preview" : "Previsualizar", + "Copy link" : "Copiar liga", + "Edit" : "Editar", "Delete" : "Borrar", + "New calendar" : "Nuevo calendario", + "Export" : "Exportar", + "Name" : "Nombre", + "Deleted" : "Borrado", + "Restore" : "Restaurar", + "Delete permanently" : "Borrar permanentemente", "Share link" : "Compartir liga", - "Share with users or groups" : "Compartir con otros usuarios o grupos", "can edit" : "puede editar", - "New calendar" : "Nuevo calendario", + "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", "Show week numbers" : "Mostrar número de semana", - "Settings & import" : "Configuraciones & importar", + "Location" : "Ubicación", + "Description" : "Descripción", + "to" : "para", + "Add" : "Agregar", + "Monday" : "Lunes", + "Tuesday" : "Martes", + "Wednesday" : "Miércoles", + "Thursday" : "Jueves", + "Friday" : "Viernes", + "Saturday" : "Sábado", + "Sunday" : "Domingo", + "Update" : "Actualizar", + "Your email address" : "Tu dirección de correo electrónico", "Notification" : "Notificación", "Email" : "Correo electrónico", + "Delete file" : "Borrar archivo", + "Choose a file to add as attachment" : "Selecciona el archivo a agregar como adjunto", "Unknown" : "Desconocido", + "Accept" : "Aceptar", + "Decline" : "Declinar", + "Tentative" : "Tentativo", + "Send email" : "Enviar correo electrónico", "All day" : "Todo el día", + "Repeat" : "Repetir", "never" : "nunca", "after" : "después", - "Repeat" : "Repetir", - "Monday" : "Lunes", - "Summary" : "Resumen", + "available" : "disponible", "More" : "Más", - "Save" : "Guardar", - "Update" : "Actualizar", - "Personal" : "Personal", + "Global" : "Global", + "Subscribe" : "Suscribir", "Details" : "Detalles", "Attendees" : "Asistentes", - "Reminders" : "Recordatorios", + "Resources" : "Recursos", "Close" : "Cerrar", - "Anniversary" : "Aniversario", "Week {number} of {year}" : "Semana {number} de {year}", "Daily" : "Diariamente", "Weekly" : "Semanalmente", - "next year" : "próximo año", - "today" : "hoy", + "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 ", "When shared hide this event" : "Al compartir, ocultar este evento ", - "Location" : "Ubicación", - "Description" : "Descripción", "Status" : "Estatus", "Confirmed" : "Confirmado", - "Tentative" : "Tentativo", "Categories" : "Categorías", + "Talk" : "Hablar", "Mail" : "Correo", - "Play" : "Reproducir", - "Global" : "Global" -},"pluralForm" :"nplurals=2; plural=(n != 1);" + "Birthday" : "Fecha de nacimiento" +},"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 46f4048ff1..358aa2fce5 100644 --- a/l10n/es_MX.js +++ b/l10n/es_MX.js @@ -6,64 +6,105 @@ 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!", + "Upcoming events" : "Próximos eventos", + "No upcoming events" : "No hay eventos próximos", "Calendar" : "Calendario", + "Appointments" : "Citas", + "Confirm" : "Confirmar", + "Where:" : "Dónde:", + "Anniversary" : "Aniversario", + "Personal" : "Personal", "A Calendar app for Nextcloud" : "Una aplicación de Calendario para Nextcloud", "Today" : "Hoy", "Day" : "Día", "Week" : "Semana", "Month" : "Mes", "List" : "Lista", - "Download" : "Descargar", + "Preview" : "Previsualizar", + "Copy link" : "Copiar liga", + "Edit" : "Editar", "Delete" : "Borrar", + "New calendar" : "Nuevo calendario", + "Export" : "Exportar", + "Name" : "Nombre", + "Deleted" : "Eliminado", + "Restore" : "Restaurar", + "Delete permanently" : "Borrar permanentemente", + "Empty trash bin" : "Vaciar la papelera de reciclaje", + "Internal link" : "Enlace interno", "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", - "New calendar" : "Nuevo calendario", + "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", "Show week numbers" : "Mostrar número de semana", - "Settings & import" : "Configuraciones & importar", + "Location" : "Ubicación", + "Description" : "Descripción", + "Duration" : "Duración", + "to" : "para", + "Add" : "Agregar", + "Monday" : "Lunes", + "Tuesday" : "Martes", + "Wednesday" : "Miércoles", + "Thursday" : "Jueves", + "Friday" : "Viernes", + "Saturday" : "Sábado", + "Sunday" : "Domingo", + "Update" : "Actualizar", + "Your email address" : "Tu dirección de correo electrónico", "Notification" : "Notificación", "Email" : "Correo electrónico", + "Add from Files" : "Agregar desde Archivos", + "Delete file" : "Borrar archivo", + "Choose a file to add as attachment" : "Selecciona el archivo a agregar como adjunto", + "Available" : "Disponible", "Unknown" : "Desconocido", + "Accept" : "Aceptar", + "Decline" : "Rechazar", + "Tentative" : "Tentativo", + "Send email" : "Enviar correo electrónico", "All day" : "Todo el día", + "Repeat" : "Repetir", "never" : "nunca", "after" : "después", - "Repeat" : "Repetir", - "Monday" : "Lunes", - "Summary" : "Resumen", + "available" : "disponible", "More" : "Más", - "Save" : "Guardar", - "Update" : "Actualizar", - "Personal" : "Personal", + "Pick a time" : "Elige una hora", + "Pick a date" : "Elige una fecha", + "Global" : "Global", + "Subscribe" : "Suscríbete", + "Create a new event" : "Crear un nuevo evento", "Details" : "Detalles", "Attendees" : "Asistentes", - "Reminders" : "Recordatorios", + "Resources" : "Recursos", "Close" : "Cerrar", - "Anniversary" : "Aniversario", "Week {number} of {year}" : "Semana {number} de {year}", "Daily" : "Diariamente", "Weekly" : "Semanalmente", - "next year" : "próximo año", - "today" : "hoy", + "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 ", "When shared hide this event" : "Al compartir, ocultar este evento ", - "Location" : "Ubicación", - "Description" : "Descripción", "Status" : "Estatus", "Confirmed" : "Confirmado", - "Tentative" : "Tentativo", "Canceled" : "Cancelada", "Categories" : "Categorías", + "Money" : "Dinero", "Presentation" : "Presentación", + "Talk" : "Hablar", "Office" : "Office", "Mail" : "Correo", - "Play" : "Reproducir", - "Global" : "Global" + "Driving" : "Conducir", + "Biking" : "Ciclismo", + "Health" : "Salud", + "Running" : "Correr", + "Birthday" : "Fecha de nacimiento", + "User not found" : "No se encontró el usuario" }, -"nplurals=2; plural=(n != 1);"); +"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 32211f1125..f751b06e13 100644 --- a/l10n/es_MX.json +++ b/l10n/es_MX.json @@ -4,64 +4,105 @@ "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 upcoming events" : "No hay eventos próximos", "Calendar" : "Calendario", + "Appointments" : "Citas", + "Confirm" : "Confirmar", + "Where:" : "Dónde:", + "Anniversary" : "Aniversario", + "Personal" : "Personal", "A Calendar app for Nextcloud" : "Una aplicación de Calendario para Nextcloud", "Today" : "Hoy", "Day" : "Día", "Week" : "Semana", "Month" : "Mes", "List" : "Lista", - "Download" : "Descargar", + "Preview" : "Previsualizar", + "Copy link" : "Copiar liga", + "Edit" : "Editar", "Delete" : "Borrar", + "New calendar" : "Nuevo calendario", + "Export" : "Exportar", + "Name" : "Nombre", + "Deleted" : "Eliminado", + "Restore" : "Restaurar", + "Delete permanently" : "Borrar permanentemente", + "Empty trash bin" : "Vaciar la papelera de reciclaje", + "Internal link" : "Enlace interno", "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", - "New calendar" : "Nuevo calendario", + "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", "Show week numbers" : "Mostrar número de semana", - "Settings & import" : "Configuraciones & importar", + "Location" : "Ubicación", + "Description" : "Descripción", + "Duration" : "Duración", + "to" : "para", + "Add" : "Agregar", + "Monday" : "Lunes", + "Tuesday" : "Martes", + "Wednesday" : "Miércoles", + "Thursday" : "Jueves", + "Friday" : "Viernes", + "Saturday" : "Sábado", + "Sunday" : "Domingo", + "Update" : "Actualizar", + "Your email address" : "Tu dirección de correo electrónico", "Notification" : "Notificación", "Email" : "Correo electrónico", + "Add from Files" : "Agregar desde Archivos", + "Delete file" : "Borrar archivo", + "Choose a file to add as attachment" : "Selecciona el archivo a agregar como adjunto", + "Available" : "Disponible", "Unknown" : "Desconocido", + "Accept" : "Aceptar", + "Decline" : "Rechazar", + "Tentative" : "Tentativo", + "Send email" : "Enviar correo electrónico", "All day" : "Todo el día", + "Repeat" : "Repetir", "never" : "nunca", "after" : "después", - "Repeat" : "Repetir", - "Monday" : "Lunes", - "Summary" : "Resumen", + "available" : "disponible", "More" : "Más", - "Save" : "Guardar", - "Update" : "Actualizar", - "Personal" : "Personal", + "Pick a time" : "Elige una hora", + "Pick a date" : "Elige una fecha", + "Global" : "Global", + "Subscribe" : "Suscríbete", + "Create a new event" : "Crear un nuevo evento", "Details" : "Detalles", "Attendees" : "Asistentes", - "Reminders" : "Recordatorios", + "Resources" : "Recursos", "Close" : "Cerrar", - "Anniversary" : "Aniversario", "Week {number} of {year}" : "Semana {number} de {year}", "Daily" : "Diariamente", "Weekly" : "Semanalmente", - "next year" : "próximo año", - "today" : "hoy", + "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 ", "When shared hide this event" : "Al compartir, ocultar este evento ", - "Location" : "Ubicación", - "Description" : "Descripción", "Status" : "Estatus", "Confirmed" : "Confirmado", - "Tentative" : "Tentativo", "Canceled" : "Cancelada", "Categories" : "Categorías", + "Money" : "Dinero", "Presentation" : "Presentación", + "Talk" : "Hablar", "Office" : "Office", "Mail" : "Correo", - "Play" : "Reproducir", - "Global" : "Global" -},"pluralForm" :"nplurals=2; plural=(n != 1);" + "Driving" : "Conducir", + "Biking" : "Ciclismo", + "Health" : "Salud", + "Running" : "Correr", + "Birthday" : "Fecha de nacimiento", + "User not found" : "No se encontró el usuario" +},"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 cfd0993196..f993ad9683 100644 --- a/l10n/es_NI.js +++ b/l10n/es_NI.js @@ -7,58 +7,82 @@ OC.L10N.register( "Open »%s«" : "Abrir »%s«", "Cheers!" : "¡Saludos!", "Calendar" : "Calendario", + "Confirm" : "Confirmar", + "Where:" : "Dónde:", + "Anniversary" : "Aniversario", + "Personal" : "Personal", "Today" : "Hoy", "Day" : "Día", "Week" : "Semana", "Month" : "Mes", "List" : "Lista", - "Download" : "Descargar", + "Preview" : "Previsualizar", + "Copy link" : "Copiar liga", + "Edit" : "Editar", "Delete" : "Borrar", + "New calendar" : "Nuevo calendario", + "Export" : "Exportar", + "Name" : "Nombre", + "Deleted" : "Borrado", + "Restore" : "Restaurar", + "Delete permanently" : "Borrar permanentemente", "Share link" : "Compartir liga", - "Share with users or groups" : "Compartir con otros usuarios o grupos", "can edit" : "puede editar", - "New calendar" : "Nuevo calendario", + "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", "Show week numbers" : "Mostrar número de semana", - "Settings & import" : "Configuraciones & importar", + "Location" : "Ubicación", + "Description" : "Descripción", + "to" : "para", + "Add" : "Agregar", + "Monday" : "Lunes", + "Tuesday" : "Martes", + "Wednesday" : "Miércoles", + "Thursday" : "Jueves", + "Friday" : "Viernes", + "Saturday" : "Sábado", + "Sunday" : "Domingo", + "Update" : "Actualizar", + "Your email address" : "Tu dirección de correo electrónico", "Notification" : "Notificación", "Email" : "Correo electrónico", + "Delete file" : "Borrar archivo", + "Choose a file to add as attachment" : "Selecciona el archivo a agregar como adjunto", "Unknown" : "Desconocido", + "Accept" : "Aceptar", + "Decline" : "Declinar", + "Tentative" : "Tentativo", + "Send email" : "Enviar correo electrónico", "All day" : "Todo el día", + "Repeat" : "Repetir", "never" : "nunca", "after" : "después", - "Repeat" : "Repetir", - "Monday" : "Lunes", - "Summary" : "Resumen", + "available" : "disponible", "More" : "Más", - "Save" : "Guardar", - "Update" : "Actualizar", - "Personal" : "Personal", + "Global" : "Global", + "Subscribe" : "Suscribir", "Details" : "Detalles", "Attendees" : "Asistentes", - "Reminders" : "Recordatorios", + "Resources" : "Recursos", "Close" : "Cerrar", - "Anniversary" : "Aniversario", "Week {number} of {year}" : "Semana {number} de {year}", "Daily" : "Diariamente", "Weekly" : "Semanalmente", - "next year" : "próximo año", - "today" : "hoy", + "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 ", "When shared hide this event" : "Al compartir, ocultar este evento ", - "Location" : "Ubicación", - "Description" : "Descripción", "Status" : "Estatus", "Confirmed" : "Confirmado", - "Tentative" : "Tentativo", "Categories" : "Categorías", + "Talk" : "Hablar", "Mail" : "Correo", - "Play" : "Reproducir", - "Global" : "Global" + "Birthday" : "Fecha de nacimiento" }, -"nplurals=2; plural=(n != 1);"); +"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 3ec75fab8f..6d76fae60c 100644 --- a/l10n/es_NI.json +++ b/l10n/es_NI.json @@ -5,58 +5,82 @@ "Open »%s«" : "Abrir »%s«", "Cheers!" : "¡Saludos!", "Calendar" : "Calendario", + "Confirm" : "Confirmar", + "Where:" : "Dónde:", + "Anniversary" : "Aniversario", + "Personal" : "Personal", "Today" : "Hoy", "Day" : "Día", "Week" : "Semana", "Month" : "Mes", "List" : "Lista", - "Download" : "Descargar", + "Preview" : "Previsualizar", + "Copy link" : "Copiar liga", + "Edit" : "Editar", "Delete" : "Borrar", + "New calendar" : "Nuevo calendario", + "Export" : "Exportar", + "Name" : "Nombre", + "Deleted" : "Borrado", + "Restore" : "Restaurar", + "Delete permanently" : "Borrar permanentemente", "Share link" : "Compartir liga", - "Share with users or groups" : "Compartir con otros usuarios o grupos", "can edit" : "puede editar", - "New calendar" : "Nuevo calendario", + "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", "Show week numbers" : "Mostrar número de semana", - "Settings & import" : "Configuraciones & importar", + "Location" : "Ubicación", + "Description" : "Descripción", + "to" : "para", + "Add" : "Agregar", + "Monday" : "Lunes", + "Tuesday" : "Martes", + "Wednesday" : "Miércoles", + "Thursday" : "Jueves", + "Friday" : "Viernes", + "Saturday" : "Sábado", + "Sunday" : "Domingo", + "Update" : "Actualizar", + "Your email address" : "Tu dirección de correo electrónico", "Notification" : "Notificación", "Email" : "Correo electrónico", + "Delete file" : "Borrar archivo", + "Choose a file to add as attachment" : "Selecciona el archivo a agregar como adjunto", "Unknown" : "Desconocido", + "Accept" : "Aceptar", + "Decline" : "Declinar", + "Tentative" : "Tentativo", + "Send email" : "Enviar correo electrónico", "All day" : "Todo el día", + "Repeat" : "Repetir", "never" : "nunca", "after" : "después", - "Repeat" : "Repetir", - "Monday" : "Lunes", - "Summary" : "Resumen", + "available" : "disponible", "More" : "Más", - "Save" : "Guardar", - "Update" : "Actualizar", - "Personal" : "Personal", + "Global" : "Global", + "Subscribe" : "Suscribir", "Details" : "Detalles", "Attendees" : "Asistentes", - "Reminders" : "Recordatorios", + "Resources" : "Recursos", "Close" : "Cerrar", - "Anniversary" : "Aniversario", "Week {number} of {year}" : "Semana {number} de {year}", "Daily" : "Diariamente", "Weekly" : "Semanalmente", - "next year" : "próximo año", - "today" : "hoy", + "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 ", "When shared hide this event" : "Al compartir, ocultar este evento ", - "Location" : "Ubicación", - "Description" : "Descripción", "Status" : "Estatus", "Confirmed" : "Confirmado", - "Tentative" : "Tentativo", "Categories" : "Categorías", + "Talk" : "Hablar", "Mail" : "Correo", - "Play" : "Reproducir", - "Global" : "Global" -},"pluralForm" :"nplurals=2; plural=(n != 1);" + "Birthday" : "Fecha de nacimiento" +},"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 cfd0993196..f993ad9683 100644 --- a/l10n/es_PA.js +++ b/l10n/es_PA.js @@ -7,58 +7,82 @@ OC.L10N.register( "Open »%s«" : "Abrir »%s«", "Cheers!" : "¡Saludos!", "Calendar" : "Calendario", + "Confirm" : "Confirmar", + "Where:" : "Dónde:", + "Anniversary" : "Aniversario", + "Personal" : "Personal", "Today" : "Hoy", "Day" : "Día", "Week" : "Semana", "Month" : "Mes", "List" : "Lista", - "Download" : "Descargar", + "Preview" : "Previsualizar", + "Copy link" : "Copiar liga", + "Edit" : "Editar", "Delete" : "Borrar", + "New calendar" : "Nuevo calendario", + "Export" : "Exportar", + "Name" : "Nombre", + "Deleted" : "Borrado", + "Restore" : "Restaurar", + "Delete permanently" : "Borrar permanentemente", "Share link" : "Compartir liga", - "Share with users or groups" : "Compartir con otros usuarios o grupos", "can edit" : "puede editar", - "New calendar" : "Nuevo calendario", + "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", "Show week numbers" : "Mostrar número de semana", - "Settings & import" : "Configuraciones & importar", + "Location" : "Ubicación", + "Description" : "Descripción", + "to" : "para", + "Add" : "Agregar", + "Monday" : "Lunes", + "Tuesday" : "Martes", + "Wednesday" : "Miércoles", + "Thursday" : "Jueves", + "Friday" : "Viernes", + "Saturday" : "Sábado", + "Sunday" : "Domingo", + "Update" : "Actualizar", + "Your email address" : "Tu dirección de correo electrónico", "Notification" : "Notificación", "Email" : "Correo electrónico", + "Delete file" : "Borrar archivo", + "Choose a file to add as attachment" : "Selecciona el archivo a agregar como adjunto", "Unknown" : "Desconocido", + "Accept" : "Aceptar", + "Decline" : "Declinar", + "Tentative" : "Tentativo", + "Send email" : "Enviar correo electrónico", "All day" : "Todo el día", + "Repeat" : "Repetir", "never" : "nunca", "after" : "después", - "Repeat" : "Repetir", - "Monday" : "Lunes", - "Summary" : "Resumen", + "available" : "disponible", "More" : "Más", - "Save" : "Guardar", - "Update" : "Actualizar", - "Personal" : "Personal", + "Global" : "Global", + "Subscribe" : "Suscribir", "Details" : "Detalles", "Attendees" : "Asistentes", - "Reminders" : "Recordatorios", + "Resources" : "Recursos", "Close" : "Cerrar", - "Anniversary" : "Aniversario", "Week {number} of {year}" : "Semana {number} de {year}", "Daily" : "Diariamente", "Weekly" : "Semanalmente", - "next year" : "próximo año", - "today" : "hoy", + "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 ", "When shared hide this event" : "Al compartir, ocultar este evento ", - "Location" : "Ubicación", - "Description" : "Descripción", "Status" : "Estatus", "Confirmed" : "Confirmado", - "Tentative" : "Tentativo", "Categories" : "Categorías", + "Talk" : "Hablar", "Mail" : "Correo", - "Play" : "Reproducir", - "Global" : "Global" + "Birthday" : "Fecha de nacimiento" }, -"nplurals=2; plural=(n != 1);"); +"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 3ec75fab8f..6d76fae60c 100644 --- a/l10n/es_PA.json +++ b/l10n/es_PA.json @@ -5,58 +5,82 @@ "Open »%s«" : "Abrir »%s«", "Cheers!" : "¡Saludos!", "Calendar" : "Calendario", + "Confirm" : "Confirmar", + "Where:" : "Dónde:", + "Anniversary" : "Aniversario", + "Personal" : "Personal", "Today" : "Hoy", "Day" : "Día", "Week" : "Semana", "Month" : "Mes", "List" : "Lista", - "Download" : "Descargar", + "Preview" : "Previsualizar", + "Copy link" : "Copiar liga", + "Edit" : "Editar", "Delete" : "Borrar", + "New calendar" : "Nuevo calendario", + "Export" : "Exportar", + "Name" : "Nombre", + "Deleted" : "Borrado", + "Restore" : "Restaurar", + "Delete permanently" : "Borrar permanentemente", "Share link" : "Compartir liga", - "Share with users or groups" : "Compartir con otros usuarios o grupos", "can edit" : "puede editar", - "New calendar" : "Nuevo calendario", + "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", "Show week numbers" : "Mostrar número de semana", - "Settings & import" : "Configuraciones & importar", + "Location" : "Ubicación", + "Description" : "Descripción", + "to" : "para", + "Add" : "Agregar", + "Monday" : "Lunes", + "Tuesday" : "Martes", + "Wednesday" : "Miércoles", + "Thursday" : "Jueves", + "Friday" : "Viernes", + "Saturday" : "Sábado", + "Sunday" : "Domingo", + "Update" : "Actualizar", + "Your email address" : "Tu dirección de correo electrónico", "Notification" : "Notificación", "Email" : "Correo electrónico", + "Delete file" : "Borrar archivo", + "Choose a file to add as attachment" : "Selecciona el archivo a agregar como adjunto", "Unknown" : "Desconocido", + "Accept" : "Aceptar", + "Decline" : "Declinar", + "Tentative" : "Tentativo", + "Send email" : "Enviar correo electrónico", "All day" : "Todo el día", + "Repeat" : "Repetir", "never" : "nunca", "after" : "después", - "Repeat" : "Repetir", - "Monday" : "Lunes", - "Summary" : "Resumen", + "available" : "disponible", "More" : "Más", - "Save" : "Guardar", - "Update" : "Actualizar", - "Personal" : "Personal", + "Global" : "Global", + "Subscribe" : "Suscribir", "Details" : "Detalles", "Attendees" : "Asistentes", - "Reminders" : "Recordatorios", + "Resources" : "Recursos", "Close" : "Cerrar", - "Anniversary" : "Aniversario", "Week {number} of {year}" : "Semana {number} de {year}", "Daily" : "Diariamente", "Weekly" : "Semanalmente", - "next year" : "próximo año", - "today" : "hoy", + "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 ", "When shared hide this event" : "Al compartir, ocultar este evento ", - "Location" : "Ubicación", - "Description" : "Descripción", "Status" : "Estatus", "Confirmed" : "Confirmado", - "Tentative" : "Tentativo", "Categories" : "Categorías", + "Talk" : "Hablar", "Mail" : "Correo", - "Play" : "Reproducir", - "Global" : "Global" -},"pluralForm" :"nplurals=2; plural=(n != 1);" + "Birthday" : "Fecha de nacimiento" +},"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 cfd0993196..f993ad9683 100644 --- a/l10n/es_PE.js +++ b/l10n/es_PE.js @@ -7,58 +7,82 @@ OC.L10N.register( "Open »%s«" : "Abrir »%s«", "Cheers!" : "¡Saludos!", "Calendar" : "Calendario", + "Confirm" : "Confirmar", + "Where:" : "Dónde:", + "Anniversary" : "Aniversario", + "Personal" : "Personal", "Today" : "Hoy", "Day" : "Día", "Week" : "Semana", "Month" : "Mes", "List" : "Lista", - "Download" : "Descargar", + "Preview" : "Previsualizar", + "Copy link" : "Copiar liga", + "Edit" : "Editar", "Delete" : "Borrar", + "New calendar" : "Nuevo calendario", + "Export" : "Exportar", + "Name" : "Nombre", + "Deleted" : "Borrado", + "Restore" : "Restaurar", + "Delete permanently" : "Borrar permanentemente", "Share link" : "Compartir liga", - "Share with users or groups" : "Compartir con otros usuarios o grupos", "can edit" : "puede editar", - "New calendar" : "Nuevo calendario", + "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", "Show week numbers" : "Mostrar número de semana", - "Settings & import" : "Configuraciones & importar", + "Location" : "Ubicación", + "Description" : "Descripción", + "to" : "para", + "Add" : "Agregar", + "Monday" : "Lunes", + "Tuesday" : "Martes", + "Wednesday" : "Miércoles", + "Thursday" : "Jueves", + "Friday" : "Viernes", + "Saturday" : "Sábado", + "Sunday" : "Domingo", + "Update" : "Actualizar", + "Your email address" : "Tu dirección de correo electrónico", "Notification" : "Notificación", "Email" : "Correo electrónico", + "Delete file" : "Borrar archivo", + "Choose a file to add as attachment" : "Selecciona el archivo a agregar como adjunto", "Unknown" : "Desconocido", + "Accept" : "Aceptar", + "Decline" : "Declinar", + "Tentative" : "Tentativo", + "Send email" : "Enviar correo electrónico", "All day" : "Todo el día", + "Repeat" : "Repetir", "never" : "nunca", "after" : "después", - "Repeat" : "Repetir", - "Monday" : "Lunes", - "Summary" : "Resumen", + "available" : "disponible", "More" : "Más", - "Save" : "Guardar", - "Update" : "Actualizar", - "Personal" : "Personal", + "Global" : "Global", + "Subscribe" : "Suscribir", "Details" : "Detalles", "Attendees" : "Asistentes", - "Reminders" : "Recordatorios", + "Resources" : "Recursos", "Close" : "Cerrar", - "Anniversary" : "Aniversario", "Week {number} of {year}" : "Semana {number} de {year}", "Daily" : "Diariamente", "Weekly" : "Semanalmente", - "next year" : "próximo año", - "today" : "hoy", + "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 ", "When shared hide this event" : "Al compartir, ocultar este evento ", - "Location" : "Ubicación", - "Description" : "Descripción", "Status" : "Estatus", "Confirmed" : "Confirmado", - "Tentative" : "Tentativo", "Categories" : "Categorías", + "Talk" : "Hablar", "Mail" : "Correo", - "Play" : "Reproducir", - "Global" : "Global" + "Birthday" : "Fecha de nacimiento" }, -"nplurals=2; plural=(n != 1);"); +"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 3ec75fab8f..6d76fae60c 100644 --- a/l10n/es_PE.json +++ b/l10n/es_PE.json @@ -5,58 +5,82 @@ "Open »%s«" : "Abrir »%s«", "Cheers!" : "¡Saludos!", "Calendar" : "Calendario", + "Confirm" : "Confirmar", + "Where:" : "Dónde:", + "Anniversary" : "Aniversario", + "Personal" : "Personal", "Today" : "Hoy", "Day" : "Día", "Week" : "Semana", "Month" : "Mes", "List" : "Lista", - "Download" : "Descargar", + "Preview" : "Previsualizar", + "Copy link" : "Copiar liga", + "Edit" : "Editar", "Delete" : "Borrar", + "New calendar" : "Nuevo calendario", + "Export" : "Exportar", + "Name" : "Nombre", + "Deleted" : "Borrado", + "Restore" : "Restaurar", + "Delete permanently" : "Borrar permanentemente", "Share link" : "Compartir liga", - "Share with users or groups" : "Compartir con otros usuarios o grupos", "can edit" : "puede editar", - "New calendar" : "Nuevo calendario", + "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", "Show week numbers" : "Mostrar número de semana", - "Settings & import" : "Configuraciones & importar", + "Location" : "Ubicación", + "Description" : "Descripción", + "to" : "para", + "Add" : "Agregar", + "Monday" : "Lunes", + "Tuesday" : "Martes", + "Wednesday" : "Miércoles", + "Thursday" : "Jueves", + "Friday" : "Viernes", + "Saturday" : "Sábado", + "Sunday" : "Domingo", + "Update" : "Actualizar", + "Your email address" : "Tu dirección de correo electrónico", "Notification" : "Notificación", "Email" : "Correo electrónico", + "Delete file" : "Borrar archivo", + "Choose a file to add as attachment" : "Selecciona el archivo a agregar como adjunto", "Unknown" : "Desconocido", + "Accept" : "Aceptar", + "Decline" : "Declinar", + "Tentative" : "Tentativo", + "Send email" : "Enviar correo electrónico", "All day" : "Todo el día", + "Repeat" : "Repetir", "never" : "nunca", "after" : "después", - "Repeat" : "Repetir", - "Monday" : "Lunes", - "Summary" : "Resumen", + "available" : "disponible", "More" : "Más", - "Save" : "Guardar", - "Update" : "Actualizar", - "Personal" : "Personal", + "Global" : "Global", + "Subscribe" : "Suscribir", "Details" : "Detalles", "Attendees" : "Asistentes", - "Reminders" : "Recordatorios", + "Resources" : "Recursos", "Close" : "Cerrar", - "Anniversary" : "Aniversario", "Week {number} of {year}" : "Semana {number} de {year}", "Daily" : "Diariamente", "Weekly" : "Semanalmente", - "next year" : "próximo año", - "today" : "hoy", + "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 ", "When shared hide this event" : "Al compartir, ocultar este evento ", - "Location" : "Ubicación", - "Description" : "Descripción", "Status" : "Estatus", "Confirmed" : "Confirmado", - "Tentative" : "Tentativo", "Categories" : "Categorías", + "Talk" : "Hablar", "Mail" : "Correo", - "Play" : "Reproducir", - "Global" : "Global" -},"pluralForm" :"nplurals=2; plural=(n != 1);" + "Birthday" : "Fecha de nacimiento" +},"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 cfd0993196..f993ad9683 100644 --- a/l10n/es_PR.js +++ b/l10n/es_PR.js @@ -7,58 +7,82 @@ OC.L10N.register( "Open »%s«" : "Abrir »%s«", "Cheers!" : "¡Saludos!", "Calendar" : "Calendario", + "Confirm" : "Confirmar", + "Where:" : "Dónde:", + "Anniversary" : "Aniversario", + "Personal" : "Personal", "Today" : "Hoy", "Day" : "Día", "Week" : "Semana", "Month" : "Mes", "List" : "Lista", - "Download" : "Descargar", + "Preview" : "Previsualizar", + "Copy link" : "Copiar liga", + "Edit" : "Editar", "Delete" : "Borrar", + "New calendar" : "Nuevo calendario", + "Export" : "Exportar", + "Name" : "Nombre", + "Deleted" : "Borrado", + "Restore" : "Restaurar", + "Delete permanently" : "Borrar permanentemente", "Share link" : "Compartir liga", - "Share with users or groups" : "Compartir con otros usuarios o grupos", "can edit" : "puede editar", - "New calendar" : "Nuevo calendario", + "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", "Show week numbers" : "Mostrar número de semana", - "Settings & import" : "Configuraciones & importar", + "Location" : "Ubicación", + "Description" : "Descripción", + "to" : "para", + "Add" : "Agregar", + "Monday" : "Lunes", + "Tuesday" : "Martes", + "Wednesday" : "Miércoles", + "Thursday" : "Jueves", + "Friday" : "Viernes", + "Saturday" : "Sábado", + "Sunday" : "Domingo", + "Update" : "Actualizar", + "Your email address" : "Tu dirección de correo electrónico", "Notification" : "Notificación", "Email" : "Correo electrónico", + "Delete file" : "Borrar archivo", + "Choose a file to add as attachment" : "Selecciona el archivo a agregar como adjunto", "Unknown" : "Desconocido", + "Accept" : "Aceptar", + "Decline" : "Declinar", + "Tentative" : "Tentativo", + "Send email" : "Enviar correo electrónico", "All day" : "Todo el día", + "Repeat" : "Repetir", "never" : "nunca", "after" : "después", - "Repeat" : "Repetir", - "Monday" : "Lunes", - "Summary" : "Resumen", + "available" : "disponible", "More" : "Más", - "Save" : "Guardar", - "Update" : "Actualizar", - "Personal" : "Personal", + "Global" : "Global", + "Subscribe" : "Suscribir", "Details" : "Detalles", "Attendees" : "Asistentes", - "Reminders" : "Recordatorios", + "Resources" : "Recursos", "Close" : "Cerrar", - "Anniversary" : "Aniversario", "Week {number} of {year}" : "Semana {number} de {year}", "Daily" : "Diariamente", "Weekly" : "Semanalmente", - "next year" : "próximo año", - "today" : "hoy", + "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 ", "When shared hide this event" : "Al compartir, ocultar este evento ", - "Location" : "Ubicación", - "Description" : "Descripción", "Status" : "Estatus", "Confirmed" : "Confirmado", - "Tentative" : "Tentativo", "Categories" : "Categorías", + "Talk" : "Hablar", "Mail" : "Correo", - "Play" : "Reproducir", - "Global" : "Global" + "Birthday" : "Fecha de nacimiento" }, -"nplurals=2; plural=(n != 1);"); +"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 3ec75fab8f..6d76fae60c 100644 --- a/l10n/es_PR.json +++ b/l10n/es_PR.json @@ -5,58 +5,82 @@ "Open »%s«" : "Abrir »%s«", "Cheers!" : "¡Saludos!", "Calendar" : "Calendario", + "Confirm" : "Confirmar", + "Where:" : "Dónde:", + "Anniversary" : "Aniversario", + "Personal" : "Personal", "Today" : "Hoy", "Day" : "Día", "Week" : "Semana", "Month" : "Mes", "List" : "Lista", - "Download" : "Descargar", + "Preview" : "Previsualizar", + "Copy link" : "Copiar liga", + "Edit" : "Editar", "Delete" : "Borrar", + "New calendar" : "Nuevo calendario", + "Export" : "Exportar", + "Name" : "Nombre", + "Deleted" : "Borrado", + "Restore" : "Restaurar", + "Delete permanently" : "Borrar permanentemente", "Share link" : "Compartir liga", - "Share with users or groups" : "Compartir con otros usuarios o grupos", "can edit" : "puede editar", - "New calendar" : "Nuevo calendario", + "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", "Show week numbers" : "Mostrar número de semana", - "Settings & import" : "Configuraciones & importar", + "Location" : "Ubicación", + "Description" : "Descripción", + "to" : "para", + "Add" : "Agregar", + "Monday" : "Lunes", + "Tuesday" : "Martes", + "Wednesday" : "Miércoles", + "Thursday" : "Jueves", + "Friday" : "Viernes", + "Saturday" : "Sábado", + "Sunday" : "Domingo", + "Update" : "Actualizar", + "Your email address" : "Tu dirección de correo electrónico", "Notification" : "Notificación", "Email" : "Correo electrónico", + "Delete file" : "Borrar archivo", + "Choose a file to add as attachment" : "Selecciona el archivo a agregar como adjunto", "Unknown" : "Desconocido", + "Accept" : "Aceptar", + "Decline" : "Declinar", + "Tentative" : "Tentativo", + "Send email" : "Enviar correo electrónico", "All day" : "Todo el día", + "Repeat" : "Repetir", "never" : "nunca", "after" : "después", - "Repeat" : "Repetir", - "Monday" : "Lunes", - "Summary" : "Resumen", + "available" : "disponible", "More" : "Más", - "Save" : "Guardar", - "Update" : "Actualizar", - "Personal" : "Personal", + "Global" : "Global", + "Subscribe" : "Suscribir", "Details" : "Detalles", "Attendees" : "Asistentes", - "Reminders" : "Recordatorios", + "Resources" : "Recursos", "Close" : "Cerrar", - "Anniversary" : "Aniversario", "Week {number} of {year}" : "Semana {number} de {year}", "Daily" : "Diariamente", "Weekly" : "Semanalmente", - "next year" : "próximo año", - "today" : "hoy", + "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 ", "When shared hide this event" : "Al compartir, ocultar este evento ", - "Location" : "Ubicación", - "Description" : "Descripción", "Status" : "Estatus", "Confirmed" : "Confirmado", - "Tentative" : "Tentativo", "Categories" : "Categorías", + "Talk" : "Hablar", "Mail" : "Correo", - "Play" : "Reproducir", - "Global" : "Global" -},"pluralForm" :"nplurals=2; plural=(n != 1);" + "Birthday" : "Fecha de nacimiento" +},"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 cfd0993196..f993ad9683 100644 --- a/l10n/es_PY.js +++ b/l10n/es_PY.js @@ -7,58 +7,82 @@ OC.L10N.register( "Open »%s«" : "Abrir »%s«", "Cheers!" : "¡Saludos!", "Calendar" : "Calendario", + "Confirm" : "Confirmar", + "Where:" : "Dónde:", + "Anniversary" : "Aniversario", + "Personal" : "Personal", "Today" : "Hoy", "Day" : "Día", "Week" : "Semana", "Month" : "Mes", "List" : "Lista", - "Download" : "Descargar", + "Preview" : "Previsualizar", + "Copy link" : "Copiar liga", + "Edit" : "Editar", "Delete" : "Borrar", + "New calendar" : "Nuevo calendario", + "Export" : "Exportar", + "Name" : "Nombre", + "Deleted" : "Borrado", + "Restore" : "Restaurar", + "Delete permanently" : "Borrar permanentemente", "Share link" : "Compartir liga", - "Share with users or groups" : "Compartir con otros usuarios o grupos", "can edit" : "puede editar", - "New calendar" : "Nuevo calendario", + "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", "Show week numbers" : "Mostrar número de semana", - "Settings & import" : "Configuraciones & importar", + "Location" : "Ubicación", + "Description" : "Descripción", + "to" : "para", + "Add" : "Agregar", + "Monday" : "Lunes", + "Tuesday" : "Martes", + "Wednesday" : "Miércoles", + "Thursday" : "Jueves", + "Friday" : "Viernes", + "Saturday" : "Sábado", + "Sunday" : "Domingo", + "Update" : "Actualizar", + "Your email address" : "Tu dirección de correo electrónico", "Notification" : "Notificación", "Email" : "Correo electrónico", + "Delete file" : "Borrar archivo", + "Choose a file to add as attachment" : "Selecciona el archivo a agregar como adjunto", "Unknown" : "Desconocido", + "Accept" : "Aceptar", + "Decline" : "Declinar", + "Tentative" : "Tentativo", + "Send email" : "Enviar correo electrónico", "All day" : "Todo el día", + "Repeat" : "Repetir", "never" : "nunca", "after" : "después", - "Repeat" : "Repetir", - "Monday" : "Lunes", - "Summary" : "Resumen", + "available" : "disponible", "More" : "Más", - "Save" : "Guardar", - "Update" : "Actualizar", - "Personal" : "Personal", + "Global" : "Global", + "Subscribe" : "Suscribir", "Details" : "Detalles", "Attendees" : "Asistentes", - "Reminders" : "Recordatorios", + "Resources" : "Recursos", "Close" : "Cerrar", - "Anniversary" : "Aniversario", "Week {number} of {year}" : "Semana {number} de {year}", "Daily" : "Diariamente", "Weekly" : "Semanalmente", - "next year" : "próximo año", - "today" : "hoy", + "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 ", "When shared hide this event" : "Al compartir, ocultar este evento ", - "Location" : "Ubicación", - "Description" : "Descripción", "Status" : "Estatus", "Confirmed" : "Confirmado", - "Tentative" : "Tentativo", "Categories" : "Categorías", + "Talk" : "Hablar", "Mail" : "Correo", - "Play" : "Reproducir", - "Global" : "Global" + "Birthday" : "Fecha de nacimiento" }, -"nplurals=2; plural=(n != 1);"); +"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 3ec75fab8f..6d76fae60c 100644 --- a/l10n/es_PY.json +++ b/l10n/es_PY.json @@ -5,58 +5,82 @@ "Open »%s«" : "Abrir »%s«", "Cheers!" : "¡Saludos!", "Calendar" : "Calendario", + "Confirm" : "Confirmar", + "Where:" : "Dónde:", + "Anniversary" : "Aniversario", + "Personal" : "Personal", "Today" : "Hoy", "Day" : "Día", "Week" : "Semana", "Month" : "Mes", "List" : "Lista", - "Download" : "Descargar", + "Preview" : "Previsualizar", + "Copy link" : "Copiar liga", + "Edit" : "Editar", "Delete" : "Borrar", + "New calendar" : "Nuevo calendario", + "Export" : "Exportar", + "Name" : "Nombre", + "Deleted" : "Borrado", + "Restore" : "Restaurar", + "Delete permanently" : "Borrar permanentemente", "Share link" : "Compartir liga", - "Share with users or groups" : "Compartir con otros usuarios o grupos", "can edit" : "puede editar", - "New calendar" : "Nuevo calendario", + "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", "Show week numbers" : "Mostrar número de semana", - "Settings & import" : "Configuraciones & importar", + "Location" : "Ubicación", + "Description" : "Descripción", + "to" : "para", + "Add" : "Agregar", + "Monday" : "Lunes", + "Tuesday" : "Martes", + "Wednesday" : "Miércoles", + "Thursday" : "Jueves", + "Friday" : "Viernes", + "Saturday" : "Sábado", + "Sunday" : "Domingo", + "Update" : "Actualizar", + "Your email address" : "Tu dirección de correo electrónico", "Notification" : "Notificación", "Email" : "Correo electrónico", + "Delete file" : "Borrar archivo", + "Choose a file to add as attachment" : "Selecciona el archivo a agregar como adjunto", "Unknown" : "Desconocido", + "Accept" : "Aceptar", + "Decline" : "Declinar", + "Tentative" : "Tentativo", + "Send email" : "Enviar correo electrónico", "All day" : "Todo el día", + "Repeat" : "Repetir", "never" : "nunca", "after" : "después", - "Repeat" : "Repetir", - "Monday" : "Lunes", - "Summary" : "Resumen", + "available" : "disponible", "More" : "Más", - "Save" : "Guardar", - "Update" : "Actualizar", - "Personal" : "Personal", + "Global" : "Global", + "Subscribe" : "Suscribir", "Details" : "Detalles", "Attendees" : "Asistentes", - "Reminders" : "Recordatorios", + "Resources" : "Recursos", "Close" : "Cerrar", - "Anniversary" : "Aniversario", "Week {number} of {year}" : "Semana {number} de {year}", "Daily" : "Diariamente", "Weekly" : "Semanalmente", - "next year" : "próximo año", - "today" : "hoy", + "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 ", "When shared hide this event" : "Al compartir, ocultar este evento ", - "Location" : "Ubicación", - "Description" : "Descripción", "Status" : "Estatus", "Confirmed" : "Confirmado", - "Tentative" : "Tentativo", "Categories" : "Categorías", + "Talk" : "Hablar", "Mail" : "Correo", - "Play" : "Reproducir", - "Global" : "Global" -},"pluralForm" :"nplurals=2; plural=(n != 1);" + "Birthday" : "Fecha de nacimiento" +},"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 cfd0993196..09ba914ad3 100644 --- a/l10n/es_SV.js +++ b/l10n/es_SV.js @@ -7,58 +7,83 @@ OC.L10N.register( "Open »%s«" : "Abrir »%s«", "Cheers!" : "¡Saludos!", "Calendar" : "Calendario", + "Confirm" : "Confirmar", + "Where:" : "Dónde:", + "Anniversary" : "Aniversario", + "Personal" : "Personal", "Today" : "Hoy", "Day" : "Día", "Week" : "Semana", "Month" : "Mes", "List" : "Lista", - "Download" : "Descargar", + "Preview" : "Previsualizar", + "Copy link" : "Copiar liga", + "Edit" : "Editar", "Delete" : "Borrar", + "New calendar" : "Nuevo calendario", + "Export" : "Exportar", + "Name" : "Nombre", + "Deleted" : "Borrado", + "Restore" : "Restaurar", + "Delete permanently" : "Borrar permanentemente", "Share link" : "Compartir liga", - "Share with users or groups" : "Compartir con otros usuarios o grupos", "can edit" : "puede editar", - "New calendar" : "Nuevo calendario", + "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", "Show week numbers" : "Mostrar número de semana", - "Settings & import" : "Configuraciones & importar", + "Location" : "Ubicación", + "Description" : "Descripción", + "to" : "para", + "Add" : "Agregar", + "Monday" : "Lunes", + "Tuesday" : "Martes", + "Wednesday" : "Miércoles", + "Thursday" : "Jueves", + "Friday" : "Viernes", + "Saturday" : "Sábado", + "Sunday" : "Domingo", + "Update" : "Actualizar", + "Your email address" : "Tu dirección de correo electrónico", "Notification" : "Notificación", "Email" : "Correo electrónico", + "Delete file" : "Borrar archivo", + "Choose a file to add as attachment" : "Selecciona el archivo a agregar como adjunto", "Unknown" : "Desconocido", + "Accept" : "Aceptar", + "Decline" : "Declinar", + "Tentative" : "Tentativo", + "Send email" : "Enviar correo electrónico", "All day" : "Todo el día", + "Repeat" : "Repetir", "never" : "nunca", "after" : "después", - "Repeat" : "Repetir", - "Monday" : "Lunes", - "Summary" : "Resumen", + "available" : "disponible", "More" : "Más", - "Save" : "Guardar", - "Update" : "Actualizar", - "Personal" : "Personal", + "Global" : "Global", + "Subscribe" : "Suscribir", "Details" : "Detalles", "Attendees" : "Asistentes", - "Reminders" : "Recordatorios", + "Resources" : "Recursos", "Close" : "Cerrar", - "Anniversary" : "Aniversario", "Week {number} of {year}" : "Semana {number} de {year}", "Daily" : "Diariamente", "Weekly" : "Semanalmente", - "next year" : "próximo año", - "today" : "hoy", + "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 ", "When shared hide this event" : "Al compartir, ocultar este evento ", - "Location" : "Ubicación", - "Description" : "Descripción", "Status" : "Estatus", "Confirmed" : "Confirmado", - "Tentative" : "Tentativo", "Categories" : "Categorías", + "Talk" : "Hablar", "Mail" : "Correo", - "Play" : "Reproducir", - "Global" : "Global" + "Birthday" : "Fecha de nacimiento", + "User not found" : "No se encontró el usuario" }, -"nplurals=2; plural=(n != 1);"); +"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 3ec75fab8f..60305863ca 100644 --- a/l10n/es_SV.json +++ b/l10n/es_SV.json @@ -5,58 +5,83 @@ "Open »%s«" : "Abrir »%s«", "Cheers!" : "¡Saludos!", "Calendar" : "Calendario", + "Confirm" : "Confirmar", + "Where:" : "Dónde:", + "Anniversary" : "Aniversario", + "Personal" : "Personal", "Today" : "Hoy", "Day" : "Día", "Week" : "Semana", "Month" : "Mes", "List" : "Lista", - "Download" : "Descargar", + "Preview" : "Previsualizar", + "Copy link" : "Copiar liga", + "Edit" : "Editar", "Delete" : "Borrar", + "New calendar" : "Nuevo calendario", + "Export" : "Exportar", + "Name" : "Nombre", + "Deleted" : "Borrado", + "Restore" : "Restaurar", + "Delete permanently" : "Borrar permanentemente", "Share link" : "Compartir liga", - "Share with users or groups" : "Compartir con otros usuarios o grupos", "can edit" : "puede editar", - "New calendar" : "Nuevo calendario", + "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", "Show week numbers" : "Mostrar número de semana", - "Settings & import" : "Configuraciones & importar", + "Location" : "Ubicación", + "Description" : "Descripción", + "to" : "para", + "Add" : "Agregar", + "Monday" : "Lunes", + "Tuesday" : "Martes", + "Wednesday" : "Miércoles", + "Thursday" : "Jueves", + "Friday" : "Viernes", + "Saturday" : "Sábado", + "Sunday" : "Domingo", + "Update" : "Actualizar", + "Your email address" : "Tu dirección de correo electrónico", "Notification" : "Notificación", "Email" : "Correo electrónico", + "Delete file" : "Borrar archivo", + "Choose a file to add as attachment" : "Selecciona el archivo a agregar como adjunto", "Unknown" : "Desconocido", + "Accept" : "Aceptar", + "Decline" : "Declinar", + "Tentative" : "Tentativo", + "Send email" : "Enviar correo electrónico", "All day" : "Todo el día", + "Repeat" : "Repetir", "never" : "nunca", "after" : "después", - "Repeat" : "Repetir", - "Monday" : "Lunes", - "Summary" : "Resumen", + "available" : "disponible", "More" : "Más", - "Save" : "Guardar", - "Update" : "Actualizar", - "Personal" : "Personal", + "Global" : "Global", + "Subscribe" : "Suscribir", "Details" : "Detalles", "Attendees" : "Asistentes", - "Reminders" : "Recordatorios", + "Resources" : "Recursos", "Close" : "Cerrar", - "Anniversary" : "Aniversario", "Week {number} of {year}" : "Semana {number} de {year}", "Daily" : "Diariamente", "Weekly" : "Semanalmente", - "next year" : "próximo año", - "today" : "hoy", + "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 ", "When shared hide this event" : "Al compartir, ocultar este evento ", - "Location" : "Ubicación", - "Description" : "Descripción", "Status" : "Estatus", "Confirmed" : "Confirmado", - "Tentative" : "Tentativo", "Categories" : "Categorías", + "Talk" : "Hablar", "Mail" : "Correo", - "Play" : "Reproducir", - "Global" : "Global" -},"pluralForm" :"nplurals=2; plural=(n != 1);" + "Birthday" : "Fecha de nacimiento", + "User not found" : "No se encontró el usuario" +},"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 cfd0993196..abc502c1b5 100644 --- a/l10n/es_UY.js +++ b/l10n/es_UY.js @@ -7,58 +7,83 @@ OC.L10N.register( "Open »%s«" : "Abrir »%s«", "Cheers!" : "¡Saludos!", "Calendar" : "Calendario", + "Confirm" : "Confirmar", + "Where:" : "Dónde:", + "Anniversary" : "Aniversario", + "Personal" : "Personal", "Today" : "Hoy", "Day" : "Día", "Week" : "Semana", "Month" : "Mes", "List" : "Lista", - "Download" : "Descargar", + "Preview" : "Previsualizar", + "Copy link" : "Copiar liga", + "Edit" : "Editar", "Delete" : "Borrar", + "New calendar" : "Nuevo calendario", + "Export" : "Exportar", + "Name" : "Nombre", + "Deleted" : "Borrado", + "Restore" : "Restaurar", + "Delete permanently" : "Borrar permanentemente", + "Empty trash bin" : "Vaciar la papelera de reciclaje", "Share link" : "Compartir liga", - "Share with users or groups" : "Compartir con otros usuarios o grupos", "can edit" : "puede editar", - "New calendar" : "Nuevo calendario", + "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", "Show week numbers" : "Mostrar número de semana", - "Settings & import" : "Configuraciones & importar", + "Location" : "Ubicación", + "Description" : "Descripción", + "to" : "para", + "Add" : "Agregar", + "Monday" : "Lunes", + "Tuesday" : "Martes", + "Wednesday" : "Miércoles", + "Thursday" : "Jueves", + "Friday" : "Viernes", + "Saturday" : "Sábado", + "Sunday" : "Domingo", + "Update" : "Actualizar", + "Your email address" : "Tu dirección de correo electrónico", "Notification" : "Notificación", "Email" : "Correo electrónico", + "Delete file" : "Borrar archivo", + "Choose a file to add as attachment" : "Selecciona el archivo a agregar como adjunto", "Unknown" : "Desconocido", + "Accept" : "Aceptar", + "Decline" : "Declinar", + "Tentative" : "Tentativo", + "Send email" : "Enviar correo electrónico", "All day" : "Todo el día", + "Repeat" : "Repetir", "never" : "nunca", "after" : "después", - "Repeat" : "Repetir", - "Monday" : "Lunes", - "Summary" : "Resumen", + "available" : "disponible", "More" : "Más", - "Save" : "Guardar", - "Update" : "Actualizar", - "Personal" : "Personal", + "Global" : "Global", + "Subscribe" : "Suscribir", "Details" : "Detalles", "Attendees" : "Asistentes", - "Reminders" : "Recordatorios", + "Resources" : "Recursos", "Close" : "Cerrar", - "Anniversary" : "Aniversario", "Week {number} of {year}" : "Semana {number} de {year}", "Daily" : "Diariamente", "Weekly" : "Semanalmente", - "next year" : "próximo año", - "today" : "hoy", + "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 ", "When shared hide this event" : "Al compartir, ocultar este evento ", - "Location" : "Ubicación", - "Description" : "Descripción", "Status" : "Estatus", "Confirmed" : "Confirmado", - "Tentative" : "Tentativo", "Categories" : "Categorías", + "Talk" : "Hablar", "Mail" : "Correo", - "Play" : "Reproducir", - "Global" : "Global" + "Birthday" : "Fecha de nacimiento" }, -"nplurals=2; plural=(n != 1);"); +"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 3ec75fab8f..d865849758 100644 --- a/l10n/es_UY.json +++ b/l10n/es_UY.json @@ -5,58 +5,83 @@ "Open »%s«" : "Abrir »%s«", "Cheers!" : "¡Saludos!", "Calendar" : "Calendario", + "Confirm" : "Confirmar", + "Where:" : "Dónde:", + "Anniversary" : "Aniversario", + "Personal" : "Personal", "Today" : "Hoy", "Day" : "Día", "Week" : "Semana", "Month" : "Mes", "List" : "Lista", - "Download" : "Descargar", + "Preview" : "Previsualizar", + "Copy link" : "Copiar liga", + "Edit" : "Editar", "Delete" : "Borrar", + "New calendar" : "Nuevo calendario", + "Export" : "Exportar", + "Name" : "Nombre", + "Deleted" : "Borrado", + "Restore" : "Restaurar", + "Delete permanently" : "Borrar permanentemente", + "Empty trash bin" : "Vaciar la papelera de reciclaje", "Share link" : "Compartir liga", - "Share with users or groups" : "Compartir con otros usuarios o grupos", "can edit" : "puede editar", - "New calendar" : "Nuevo calendario", + "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", "Show week numbers" : "Mostrar número de semana", - "Settings & import" : "Configuraciones & importar", + "Location" : "Ubicación", + "Description" : "Descripción", + "to" : "para", + "Add" : "Agregar", + "Monday" : "Lunes", + "Tuesday" : "Martes", + "Wednesday" : "Miércoles", + "Thursday" : "Jueves", + "Friday" : "Viernes", + "Saturday" : "Sábado", + "Sunday" : "Domingo", + "Update" : "Actualizar", + "Your email address" : "Tu dirección de correo electrónico", "Notification" : "Notificación", "Email" : "Correo electrónico", + "Delete file" : "Borrar archivo", + "Choose a file to add as attachment" : "Selecciona el archivo a agregar como adjunto", "Unknown" : "Desconocido", + "Accept" : "Aceptar", + "Decline" : "Declinar", + "Tentative" : "Tentativo", + "Send email" : "Enviar correo electrónico", "All day" : "Todo el día", + "Repeat" : "Repetir", "never" : "nunca", "after" : "después", - "Repeat" : "Repetir", - "Monday" : "Lunes", - "Summary" : "Resumen", + "available" : "disponible", "More" : "Más", - "Save" : "Guardar", - "Update" : "Actualizar", - "Personal" : "Personal", + "Global" : "Global", + "Subscribe" : "Suscribir", "Details" : "Detalles", "Attendees" : "Asistentes", - "Reminders" : "Recordatorios", + "Resources" : "Recursos", "Close" : "Cerrar", - "Anniversary" : "Aniversario", "Week {number} of {year}" : "Semana {number} de {year}", "Daily" : "Diariamente", "Weekly" : "Semanalmente", - "next year" : "próximo año", - "today" : "hoy", + "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 ", "When shared hide this event" : "Al compartir, ocultar este evento ", - "Location" : "Ubicación", - "Description" : "Descripción", "Status" : "Estatus", "Confirmed" : "Confirmado", - "Tentative" : "Tentativo", "Categories" : "Categorías", + "Talk" : "Hablar", "Mail" : "Correo", - "Play" : "Reproducir", - "Global" : "Global" -},"pluralForm" :"nplurals=2; plural=(n != 1);" + "Birthday" : "Fecha de nacimiento" +},"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 f7806b0969..d76ab4f38c 100644 --- a/l10n/et_EE.js +++ b/l10n/et_EE.js @@ -7,80 +7,100 @@ OC.L10N.register( "Open »%s«" : "Ava »%s«", "Cheers!" : "Tervist!", "Calendar" : "Kalender", + "Confirm" : "Kinnita", + "Where:" : "Kus:", + "Anniversary" : "Aastapäev", + "Appointment" : "Kohtumine", + "Personal" : "Isiklik", + "Vacation" : "Puhkus", "Previous day" : "Eelmine päev", "Previous week" : "Eelmine nädal", "Previous month" : "Eelmine kuu", "Next day" : "Järgmine päev", "Next week" : "Järgmine nädal", "Next month" : "Järgmine kuu", - "+ New event" : "+ Uus sündmus", "Today" : "Täna", "Day" : "Päev", "Week" : "Nädal", "Month" : "Kuu", - "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", - "Download" : "Lae alla", + "Preview" : "Eelvaade", + "Copy link" : "Kopeeri link", + "Edit" : "Redigeeri", "Delete" : "Kustuta", + "Untitled calendar" : "Nimetu kalender", + "New calendar" : "Uus kalender", + "Export" : "Ekspordi", + "Name" : "Nimi", + "Deleted" : "Kustutatud", + "Restore" : "Taasta", + "Delete permanently" : "Kustuta jäädavalt", + "Empty trash bin" : "Tühjenda prügikast", + "Internal link" : "Sisemine link", "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", - "New calendar" : "Uus kalender", + "Share with users or groups" : "Jaga kasutajate või gruppidega", + "No users or groups" : "Ei ole kasutajaid või gruppe", + "Save" : "Salvesta", "Import calendars" : "Impordi kalendrid", "Filename" : "Faili nimi", "Cancel" : "Loobu", + "Invalid location selected" : "Vigane asukoht valitud", "Automatic" : "Automaatne", + "List view" : "Nimekirjavaade", "Actions" : "Tegevused", "Show week numbers" : "Näita nädalanumberid", - "Settings & import" : "Sätted & importimine", + "Location" : "Asukoht", + "Description" : "Kirjeldus", + "to" : "saaja", + "Add" : "Lisa", + "Monday" : "Esmaspäev", + "Tuesday" : "Teisipäev", + "Wednesday" : "Kolmapäev", + "Thursday" : "Neljapäev", + "Friday" : "Reede", + "Saturday" : "Laupäev", + "Sunday" : "Pühapäev", + "Update" : "Uuenda", + "Your email address" : "Sinu e-posti aadress", + "Notification" : "Teavitus", "Email" : "Epost", "On date" : "Kuupäeval", + "Delete file" : "Kustuta fail", + "Choose a file to add as attachment" : "Vali fail, mida manustada", "Unknown" : "Teadmata", + "Accept" : "Nõustu", + "Decline" : "Keeldu", + "Tentative" : "Esialgne", + "Send email" : "Saada kiri", "All day" : "Kogu päev", + "Repeat" : "Korda", "never" : "mitte kunagi", "after" : "pärast", - "Repeat" : "Korda", - "Monday" : "Esmaspäev", - "Summary" : "Kokkuvõte", "More" : "Rohkem", - "Save" : "Salvesta", - "Update" : "Uuenda", - "Personal" : "Isiklik", + "Global" : "Üldine", + "Subscribe" : "Telli", "Details" : "Üksikasjad", "Attendees" : "Osalejad", - "Reminders" : "Meelespead", + "Resources" : "Ressursid", "Close" : "Sulge", - "Anniversary" : "Aastapäev", - "Appointment" : "Kohtumine", - "Vacation" : "Puhkus", "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 year" : "järgmine aasta", - "today" : "täna", + "Other" : "Muu", "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", - "Location" : "Asukoht", - "Description" : "Kirjeldus", "Status" : "Staatus", "Confirmed" : "Kinnitatud", - "Tentative" : "Esialgne", "Categories" : "Kategooriad", "Presentation" : "Esitlus", + "Talk" : "Talk", "Camping" : "Telkimine", "Camp" : "Laager", "Movie" : "Film", @@ -89,13 +109,9 @@ OC.L10N.register( "Brainstorm" : "Ajutorm", "Baseball" : "Pesapall", "Office" : "Kontor", - "Party" : "Pidu", - "Celebration" : "Tähistamine", "Mail" : "Kirjad", "Soccer" : "Jalgpall", "Football" : "Ameerika jalgpall", - "Play" : "Esita", - "Game" : "Mäng", "Drive" : "Sõit", "Bicycle" : "Jalgratas", "Biking" : "Jalgrattaga sõitmine", @@ -135,12 +151,15 @@ OC.L10N.register( "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", - "Global" : "Üldine" + "User not found" : "Kasutajat ei leitud" }, "nplurals=2; plural=(n != 1);"); diff --git a/l10n/et_EE.json b/l10n/et_EE.json index 80c5a0edc6..f515c7e855 100644 --- a/l10n/et_EE.json +++ b/l10n/et_EE.json @@ -5,80 +5,100 @@ "Open »%s«" : "Ava »%s«", "Cheers!" : "Tervist!", "Calendar" : "Kalender", + "Confirm" : "Kinnita", + "Where:" : "Kus:", + "Anniversary" : "Aastapäev", + "Appointment" : "Kohtumine", + "Personal" : "Isiklik", + "Vacation" : "Puhkus", "Previous day" : "Eelmine päev", "Previous week" : "Eelmine nädal", "Previous month" : "Eelmine kuu", "Next day" : "Järgmine päev", "Next week" : "Järgmine nädal", "Next month" : "Järgmine kuu", - "+ New event" : "+ Uus sündmus", "Today" : "Täna", "Day" : "Päev", "Week" : "Nädal", "Month" : "Kuu", - "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", - "Download" : "Lae alla", + "Preview" : "Eelvaade", + "Copy link" : "Kopeeri link", + "Edit" : "Redigeeri", "Delete" : "Kustuta", + "Untitled calendar" : "Nimetu kalender", + "New calendar" : "Uus kalender", + "Export" : "Ekspordi", + "Name" : "Nimi", + "Deleted" : "Kustutatud", + "Restore" : "Taasta", + "Delete permanently" : "Kustuta jäädavalt", + "Empty trash bin" : "Tühjenda prügikast", + "Internal link" : "Sisemine link", "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", - "New calendar" : "Uus kalender", + "Share with users or groups" : "Jaga kasutajate või gruppidega", + "No users or groups" : "Ei ole kasutajaid või gruppe", + "Save" : "Salvesta", "Import calendars" : "Impordi kalendrid", "Filename" : "Faili nimi", "Cancel" : "Loobu", + "Invalid location selected" : "Vigane asukoht valitud", "Automatic" : "Automaatne", + "List view" : "Nimekirjavaade", "Actions" : "Tegevused", "Show week numbers" : "Näita nädalanumberid", - "Settings & import" : "Sätted & importimine", + "Location" : "Asukoht", + "Description" : "Kirjeldus", + "to" : "saaja", + "Add" : "Lisa", + "Monday" : "Esmaspäev", + "Tuesday" : "Teisipäev", + "Wednesday" : "Kolmapäev", + "Thursday" : "Neljapäev", + "Friday" : "Reede", + "Saturday" : "Laupäev", + "Sunday" : "Pühapäev", + "Update" : "Uuenda", + "Your email address" : "Sinu e-posti aadress", + "Notification" : "Teavitus", "Email" : "Epost", "On date" : "Kuupäeval", + "Delete file" : "Kustuta fail", + "Choose a file to add as attachment" : "Vali fail, mida manustada", "Unknown" : "Teadmata", + "Accept" : "Nõustu", + "Decline" : "Keeldu", + "Tentative" : "Esialgne", + "Send email" : "Saada kiri", "All day" : "Kogu päev", + "Repeat" : "Korda", "never" : "mitte kunagi", "after" : "pärast", - "Repeat" : "Korda", - "Monday" : "Esmaspäev", - "Summary" : "Kokkuvõte", "More" : "Rohkem", - "Save" : "Salvesta", - "Update" : "Uuenda", - "Personal" : "Isiklik", + "Global" : "Üldine", + "Subscribe" : "Telli", "Details" : "Üksikasjad", "Attendees" : "Osalejad", - "Reminders" : "Meelespead", + "Resources" : "Ressursid", "Close" : "Sulge", - "Anniversary" : "Aastapäev", - "Appointment" : "Kohtumine", - "Vacation" : "Puhkus", "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 year" : "järgmine aasta", - "today" : "täna", + "Other" : "Muu", "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", - "Location" : "Asukoht", - "Description" : "Kirjeldus", "Status" : "Staatus", "Confirmed" : "Kinnitatud", - "Tentative" : "Esialgne", "Categories" : "Kategooriad", "Presentation" : "Esitlus", + "Talk" : "Talk", "Camping" : "Telkimine", "Camp" : "Laager", "Movie" : "Film", @@ -87,13 +107,9 @@ "Brainstorm" : "Ajutorm", "Baseball" : "Pesapall", "Office" : "Kontor", - "Party" : "Pidu", - "Celebration" : "Tähistamine", "Mail" : "Kirjad", "Soccer" : "Jalgpall", "Football" : "Ameerika jalgpall", - "Play" : "Esita", - "Game" : "Mäng", "Drive" : "Sõit", "Bicycle" : "Jalgratas", "Biking" : "Jalgrattaga sõitmine", @@ -133,12 +149,15 @@ "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", - "Global" : "Üldine" + "User not found" : "Kasutajat ei leitud" },"pluralForm" :"nplurals=2; plural=(n != 1);" } \ No newline at end of file diff --git a/l10n/eu.js b/l10n/eu.js index ca806783b4..585ed167b1 100644 --- a/l10n/eu.js +++ b/l10n/eu.js @@ -5,55 +5,131 @@ OC.L10N.register( "Provided email-address is not valid" : "Emandako helbide elektronikoa ez da baliozkoa", "%s has published the calendar »%s«" : "%s erabiltzaileak »%s« egutegia argitaratu du", "Unexpected error sending email. Please contact your administrator." : "Ustekabeko errorea posta elektronikoa bidaltzean. Jarri harremanetan zure administratzailearekin.", - "Successfully sent email to " : "Posta elektronikoa ondo bidali zaio:", + "Successfully sent email to %1$s" : "Posta elektronikoa ondo bidali zaio %1$s(r)i", "Hello," : "Kaixo,", "We wanted to inform you that %s has published the calendar »%s«." : "Jakinarazi nahi dizugu %s erabiltzaileak »%s« egutegia argitaratu duela", "Open »%s«" : " Ireki »%s«", "Cheers!" : "Topa!", "Upcoming events" : "Hurrengo gertaerak", + "More events" : "Gertaera gehiago", + "No more events today" : "Ez dago gertaera gehiagorik gaurkoz.", + "No upcoming events" : "Ez dago gertaerarik datozen egunetan.", + "%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\" 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", + "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 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:", + "Where:" : "Non:", + "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.", + "Anniversary" : "Urtebetetzea", + "Appointment" : "Hitzordua", + "Business" : "Lana", + "Education" : "Hezkuntza", + "Holiday" : "Jaieguna", + "Meeting" : "Bilera", + "Miscellaneous" : "Askotarikoa", + "Non-working hours" : "Laneko orduetatik kanpo", + "Not in office" : "Ez nago bulegoan", + "Personal" : "Pertsonala", + "Phone call" : "Telefono-deia", + "Sick day" : "Gaixorik", + "Special occasion" : "Gertaera berezia", + "Travel" : "Bidaian", + "Vacation" : "Oporretan", + "Custom Categories" : "Kategoria pertsonalizatuak", + "Collaborative Tags" : "Elkarlaneko etiketak", + "Standard Categories" : "Kategoria orokorrak", "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* ⏰ **Oroigarriak!** 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.", + "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", + "Event" : "Gertaera", + "Create new event" : "Sortu gertaera berria", "Today" : "Gaur", "Day" : "Eguna", "Week" : "Astea", "Month" : "Hilabetea", + "Year" : "Urtea", "List" : "Zerrenda", - "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", - "Download" : "Deskargatu", - "Unshare from me" : "Kendu nirekin partekatzea", + "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", + "Shared with you by" : "Zurekin partekatuta honengatik:", + "Edit and share calendar" : "Editatu eta partekatu egutegia", + "Edit calendar" : "Editatu egutegia", + "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.", "_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"], + "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", + "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://)", + "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", + "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.", + "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", + "Empty trash bin" : "Hustu zakarrontzia", + "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 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?", + "_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.", + "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", "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", @@ -65,32 +141,32 @@ OC.L10N.register( "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", "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 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.", - "+ New calendar" : "+ Egutegi berria", - "New calendar" : "Egutegi berria", - "Creating calendar …" : "Egutegia sortzen …", - "New calendar with task list" : "Egutegi berria ataza zerrendarekin", - "New subscription from link (read-only)" : "Harpidetza berria estekatik (irakurtzeko bakarrik)", - "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://)", - "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", + "Calendar name …" : "Egutegiaren izena ...", + "Share calendar" : "Partekatu egutegia", + "Unshare from me" : "Kendu nirekin partekatzea", + "Save" : "Gorde", + "Failed to save calendar name and color" : "Ezin izan da egutegiaren izena eta kolorea 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"], - "{filename} is an unsupported file-type" : "{filename} sostengu gabeko fitxategi mota bat da", + "Default attachments location" : "Eranskinen kokaleku lehenetsia", + "Select the default location for attachments" : "Hautatu eranskinen kokaleku lehenetsia", + "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.", "{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._" : ["Behar bezala inportatu da gertaera %n.","Behar bezala inportatu dira %n gertaera."], + "_Successfully imported %n event_::_Successfully imported %n events_" : ["%n gertaera behar bezala inportatu dira","%n gertaera behar bezala inportatu dira"], "Automatic" : "Automatikoa", "Automatic ({detected})" : "Automatikoa ({detected})", "New setting was not saved successfully." : "Ezarpen berria ez da behar bezala gorde.", @@ -103,21 +179,81 @@ 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", "Show shortcuts" : "Erakutsi lasterbideak", + "Editor" : "Editorea", + "Close editor" : "Itxi editorea", + "Save edited event" : "Gorde editatutako gertaera", + "Delete edited event" : "Ezabatu editatutako gertaera", + "Duplicate event" : "Bikoiztu gertaera", "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", "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", - "Settings & import" : "Ezarpenak eta inportazioa", + "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", + "_{duration} minute_::_{duration} minutes_" : ["minutu {duration}","{duration} minutu"], + "0 minutes" : "0 minutu", + "_{duration} hour_::_{duration} hours_" : ["ordu {duration}","{duration} ordu"], + "_{duration} day_::_{duration} days_" : ["egun {duration}","{duration} egun"], + "_{duration} week_::_{duration} weeks_" : ["aste {duration}","{duration} aste"], + "_{duration} month_::_{duration} months_" : ["hilabete {duration}","{duration} hilabete"], + "_{duration} year_::_{duration} years_" : ["urte {duration}","{duration} urte"], + "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 name" : "Hitzorduaren izena:", + "Location" : "Kokapena", + "Description" : "Deskribapena", + "Visibility" : "Ikusgarritasuna", + "Duration" : "Iraupena", + "Increments" : "Gehikuntzak", + "Additional calendars to check for conflicts" : "Gatazkak egiaztatzeko egutegi gehigarriak", + "Pick time ranges where appointments are allowed" : "Aukeratu hitzorduetan onartzen diren denbora tarteak", + "to" : "honi", + "Delete slot" : "Ezabatu tartea", + "No times set" : "Ez dago denborarik ezarrita", + "Add" : "Gehitu", + "Monday" : "Astelehena", + "Tuesday" : "Asteartea", + "Wednesday" : "Asteazkena", + "Thursday" : "Osteguna", + "Friday" : "Ostirala", + "Saturday" : "Larunbata", + "Sunday" : "Igandea", + "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", + "Planning restrictions" : "Planifikatze murrizketak", + "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", + "Update" : "Eguneratu", + "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", "before at" : "lehenago hemen", "Notification" : "Jakinarazpena", "Email" : "Mezu elektronikoa", @@ -131,55 +267,79 @@ OC.L10N.register( "on" : "noiz", "at" : "non", "+ Add reminder" : "+ Gehitu abisua", + "Add reminder" : "Gehitu abisua", "_second_::_seconds_" : ["segundo","segundo"], "_minute_::_minutes_" : ["minutu","minutu"], "_hour_::_hours_" : ["ordu","ordu"], "_day_::_days_" : ["egun","egun"], "_week_::_weeks_" : ["aste","aste"], - "No reminders yet" : "Abisurik ez oraindik", + "No attachments" : "Eranskinik ez", + "Add from Files" : "Gehitu Fitxategietatik", + "Upload from device" : "Kargatu gailutik", + "Delete file" : "Ezabatu fitxategia", + "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!", + "_{count} attachment_::_{count} attachments_" : ["Eranskin {count}","{count} eranskin"], + "Invitation accepted" : "Gonbidapena onartuta", + "Available" : "Erabilgarri", + "Suggested" : "Iradokituta", + "Participation marked as tentative" : "Partaidetza behin-behineko gisa markatu da", + "Accepted {organizerName}'s invitation" : "{organizerName}(r)en gonbidapena onartuta", + "Not available" : "Ez dago erabilgarri", + "Invitation declined" : "Gonbidapena ukatuta", + "Declined {organizerName}'s invitation" : "{organizerName}(r)en gonbidapena ukatuta", + "Invitation is delegated" : "Gonbidapena eskuordetuta dago", + "Checking availability" : "Erabilgarritasuna egiaztatzen", + "Invitation sent" : "Gonbidapena bidalita", + "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", + "{organizer} (organizer)" : "{organizer} (kudeatzailea)", + "Free" : "Libre", "Busy (tentative)" : "Lanpetuta (behin-behinean)", "Busy" : "Lanpetua", "Out of office" : "Bulegotik kanpo", "Unknown" : "Ezezaguna", - "{name} accepted your invitation." : "{name} erabiltzaileak zure gonbidapena onartu du.", - "{name} accepted {organizerName}'s invitation." : "{name} erabiltzaileak {organizerName} erabiltzailearen gonbidapena onartu du.", - "{name} declined your invitation." : "{name} erabiltzaileak zure gonbidapenari uko egin dio.", - "{name} declined {organizerName}'s invitation." : "{name} erabiltzaileak {organizerName} erabiltzailearen gonbidapenari uko egin dio.", - "{name} has delegated their invitation." : "{name} erabiltzaileak bere gonbidapena eskuordetu du.", - "{name} marked their participation as tentative." : "{name} erabiltzaileak bere parte-hartzea behin behineko bezala markatu du.", - "{name} did not respond to your invitation yet." : "{name} erabiltzaileak ez dio zure gonbidapenari erantzun oraindik.", - "{name} did not respond to {organizerName}'s invitation yet." : "{name} erabiltzaileak ez dio {organizerName} erabiltzailearen gonbidapenari erantzun oraindik.", + "Accept" : "Onartu", + "Decline" : "Uko egin", + "Tentative" : "Behin behinekoa", + "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", + "No attendees yet" : "Partaiderik ez oraindik", "Successfully appended link to talk room to description." : "Ondo erantsi zaio esteka hizketa gelaren deskribapenari.", "Error creating Talk room" : "Errorea Talk gela sortzean", - "Send e-mail" : "Bidali posta elektronikoa", - "Chairperson" : "Presidente", + "Send email" : "Bidali e-posta", + "Chairperson" : "Mahaiburua", "Required participant" : "Beharrezko partaidea", "Optional participant" : "Hautazko partaidea", "Non-participant" : "Ez da partaidea", "Remove attendee" : "Kendu partaidea", - "Search for e-mails, users, contacts, resources or rooms" : "Bilatu helbide elektronikoak, erabiltzaileak, kontaktuak, baliabideak edo gelak", + "Search for emails, users or contacts" : "Bilatu mezu elektronikoak, erabiltzaileak edo kontaktuak", "No match found" : "Ez da emaitzarik aurkitu", - "No attendees yet" : "Partaiderik ez oraindik", "(organizer)" : "(antolatzailea)", "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", - "Can not modify all-day setting for events that are part of a recurrence-set." : "Ezin dira egun osoko ezarpenak aldatu errepikapen sorta bateko ekitaldientzat.", - "from {startDate}" : "noiztik {startDate}", - "from {startDate} at {startTime}" : "noiztik {startDate}, {startTime}", + "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", + "Repeat" : "Errepikatu", "End repeat" : "Amaitu errepikapena", "Select to end repeat" : "Hautatu errepikapena amaitzeko", "never" : "inoiz ez", "on date" : "epean", "after" : "gero", "_time_::_times_" : ["aldiz","aldiz"], - "This event is the recurrence-exception of a recurrence-set. You can not add a recurrence-rule to it." : "Ekitaldi hau errepikapen sorta bateko errepikapen salbuespena da. Ezin diozu errepikapen araurik ezarri.", + "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", @@ -187,83 +347,107 @@ OC.L10N.register( "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" : "Errepikatu", "Repeat every" : "Errepikatu zenbatero", "By day of the month" : "Hileko egunaren arabera", "On the" : "Honetan", "_month_::_months_" : ["hilabete","hilabete"], "_year_::_years_" : ["urte","urte"], - "Monday" : "Astelehena", "weekday" : "asteguna", "weekend day" : "asteburuko eguna", - "Summary" : "Laburpena", + "No recurrence" : "Errepikapenik ez", "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", + "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", + "Room type" : "Gela mota", + "Any" : "Edozein", + "Minimum seating capacity" : "Gutxieneko eserleku kopurua", "More" : "Gehiago", - "Save" : "Gorde", - "Update" : "Eguneratu", "Update this occurrence" : "Eguneratu gertaera hau", "Update this and all future" : "Eguneratu hau eta etorkizuneko guztiak", "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 timezone:" : "Mesedez aukeratu ordu-zona bat:", + "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}(e)an", + "on {formattedDate}" : "{formattedDate}an", "from {formattedDate} at {formattedTime}" : "{formattedDate}ko {formattedTime}tik", "to {formattedDate} at {formattedTime}" : "{formattedDate}ko {formattedTime} arte", - "on {formattedDate} at {formattedTime}" : "{formattedDate}(e)an {formattedTime}etan", - "{formattedDate} at {formattedTime}" : "{formattedDate}(e)an {formattedTime}etan", + "on {formattedDate} at {formattedTime}" : "{formattedDate}ko {formattedTime}etan", + "{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", - "Type to search timezone" : "Idatzi ordu-zona bat bilatzeko", - "Personal" : "Pertsonala", - "The automatic timezone detection determined your timezone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your timezone manually in the calendar settings." : "Ordu-eremu detekzio automatikoak zehaztu du zure ordu-eremua UTC dela. Hau seguru aski zure nabigatzailearen segurtasun neurrien ondorio da. Zehaztu ezazu zure ordu-eremua eskuz egutegiaren ezarpenetan.", - "Your configured timezone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your timezone in the settings and report this issue." : "Ezarrita daukazun ordu-eremua ({timezoneId}) ez da aurkitu. UTC-ra itzultzen. Mesedez, 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.", + "Type to search time zone" : "Idatzi ordu-zona bilatzeko", + "Global" : "Orokorra", + "Public holiday calendars" : "Opor publikoen egutegiak", + "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.", + "By {authors}" : "{authors} egina", + "Subscribed" : "Harpidetua", + "Subscribe" : "Harpidetu", + "Holidays in {region}" : "Oporrak {region}(e)n", + "An error occurred, unable to create the public holiday calendar." : "Errore bat gertatu da, ezin da jaiegun egutegi publikoa sortu.", + "Select date" : "Hautatu data", + "Select slot" : "Hautatu tartea", + "No slots available" : "Ez dago tarterik eskuragarri", + "The slot for your appointment has been confirmed" : "Zure hitzorduaren tartea berretsi da", + "Appointment Details:" : "Hitzorduaren xehetasunak:", + "Time:" : "Noiz:", + "Booked for:" : "Honetarako erreserbatuta:", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "Eskerrik asko. {startDate}tik {endDate} arteko erreserba berretsi da.", + "Book another appointment:" : "Erreserbatu beste hitzordu bat", + "See all available slots" : "Ikusi eskuragarri dauden tarte guztiak", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "{startDate}tik {endDate} arteko zure hitzorduaren tartea ez dago jada erabilgarri.", + "Please book a different slot:" : "Mesedez erreserbatu beste tarte bat:", + "Book an appointment with {name}" : "Hitzordu bat erreserbatu {name}(r)ekin", + "No public appointments found for {name}" : "Ez da hitzordu publikorik aurkitu {name}rentzat", + "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.", "Create a new event" : "Sortu gertaera berri bat", - "[Today]" : "[Gaur]", - "[Tomorrow]" : "[Bihar]", - "[Yesterday]" : "[Atzo]", + "[Today]" : "[Today]", + "[Tomorrow]" : "[Tomorrow]", + "[Yesterday]" : "[Yesterday]", + "[Last] dddd" : "[Last] dddd", "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", + "Managing shared access" : "Sarbide partekatua kudeatzea", + "Deny access" : "Ukatu sarbidea", + "Invite" : "Gonbidatu", "Attendees" : "Partaideak", - "Reminders" : "Oroigarriak", + "Resources" : "Baliabideak", + "_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"], "Close" : "Itxi", "Show more details" : "Erakutsi xehetasun gehiago", "Subscribe to {name}" : "Harpidetu {name}", - "Download {name}" : "Deskargatu {name}", - "Anniversary" : "Urtebetetzea / urteurrena", - "Appointment" : "Hitzordua", - "Business" : "Lana", - "Education" : "Hezkuntza", - "Holiday" : "Jaieguna", - "Meeting" : "Bilera", - "Miscellaneous" : "Askotarikoa", - "Non-working hours" : "Laneko orduetatik kanpo", - "Not in office" : "Ez nago bulegoan", - "Phone call" : "Telefono deia", - "Sick day" : "Gaixotasuna", - "Special occasion" : "Gertaera berezia", - "Travel" : "Bidaia", - "Vacation" : "Oporrak", + "Export {name}" : "Esportatu {name}", "Midnight on the day the event starts" : "Gauerdian gertaera hasten den egunean", - "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["Egun %n gertaera hasi baino lehen {formattedHourMinute}(e)tan","%n egun gertaera hasi baino lehen {formattedHourMinute}(e)tan"], - "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : [" aste %n gertaera hasi baino lehen {formattedHourMinute}(e)tan","%n aste gertaera hasi baino lehen {formattedHourMinute}(e)tan"], - "on the day of the event at {formattedHourMinute}" : "Gertaeraren egunean {formattedHourMinute}(e)tan", + "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["Egun %n gertaera hasi baino lehen {formattedHourMinute}(e)tan","%n egun gertaera hasi baino lehen {formattedHourMinute}etan"], + "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : [" aste %n gertaera hasi baino lehen {formattedHourMinute}(e)tan","%n aste gertaera hasi baino lehen {formattedHourMinute}etan"], + "on the day of the event at {formattedHourMinute}" : "Gertaeraren egunean {formattedHourMinute}etan", "at the event's start" : "gertaera hasieran", "at the event's end" : "gertaera amaieran", "{time} before the event starts" : "gertaera hasi baino {time} lehenago", "{time} before the event ends" : "gertaera amaitu baino {time} lehenago", "{time} after the event starts" : "gertaera hasi baino {time} geroago", "{time} after the event ends" : "gertaera amaitu baino {time} geroago", - "on {time}" : "{time}(e)tan", - "on {time} ({timezoneId})" : "{time}(e)tan ({timezoneId})", - "Week {number} of {year}" : "{year}ko {number} astea", + "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", @@ -275,22 +459,15 @@ OC.L10N.register( "_Every %n year_::_Every %n years_" : ["Urtero","%n urtetik behin"], "_on {weekday}_::_on {weekdays}_" : ["{weekday}","{weekdays}"], "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["{dayOfMonthList} egunean","{dayOfMonthList} egunetan"], - "on the {ordinalNumber} {byDaySet}" : "{ordinalNumber} {byDaySet}(e)an", - "in {monthNames}" : "{monthNames}(e)an", - "in {monthNames} on the {ordinalNumber} {byDaySet}" : "{monthNames}(e)an {ordinalNumber} {byDaySet}(e)an", + "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", "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" : "datorren urtea", - "today" : "gaur", - "list" : "zerrenda", "W" : "A. ", - "all-day" : "Egun osoa", "%n more" : "%n gehiago", "No events to display" : "Ez dago bistaratzeko gertaerarik", "_+%n more_::_+%n more_" : ["+ %n","+ %n"], @@ -298,62 +475,95 @@ OC.L10N.register( "Create a new event or change the visible time-range" : "Sortu gertaera berria edo aldatu ikusgai dagoen epea", "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", + "Lecture hall" : "Konferentzia-gela", + "Seminar room" : "Mintegia", + "Other" : "Bestelakoa", "When shared show" : "Partekatzean erakutsi", "When shared show full event" : "Partekatzean erakutsi gertaera osoa", "When shared show only busy" : "Partekatzean okupatua bezala erakutsi soilik", "When shared hide this event" : "Partekatzean ezkutatu gertaera hau", "The visibility of this event in shared calendars." : "Gertaera honen ikusgarritasuna egutegi partekatuetan", - "Location" : "Kokapena", "Add a location" : "Gehitu kokapen bat", - "Description" : "Deskribapena", "Add a description" : "Gehitu deskribapena", "Status" : "Egoera", "Confirmed" : "Berretsita", - "Tentative" : "Behin behinekoa", "Canceled" : "Utzita", "Confirmation about the overall status of the event." : "Baieztapena gertaeraren egoera orokorrari buruz.", "Show as" : "Erakutsi honela", "Take this event into account when calculating free-busy information." : "Kontuan izan gertaera hau libre-lanpetuta informazio kalkuluetan.", - "Free" : "Libre", "Categories" : "Kategoriak", "Categories help you to structure and organize your events." : "Kategoriak lagungarri zaizkizu gertaerak egituratu eta antolatzeko.", "Search or add categories" : "Bilatu edo gehitu kategoriak", "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.", + "Error while sharing file" : "Errorea fitxategia partekatzean", + "Error while sharing file with user" : "Errorea fitxategia erabiltzailearekin partekatzean", + "Attachment {fileName} already exists!" : "{fileName} eranskina dagoeneko badago!", + "An error occurred during getting file information" : "Errore bat gertatu da fitxategiaren informazioa eskuratzean", "Chat room for event" : "Txat gela gertaera honentzat", - "Imported {filename}" : "Inportatuta {filename}", + "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 oroigarri bat da.", "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", - "Present" : "Aurkeztu", + "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", - "Review" : "Berrikusi", "Office" : "Bulegoa", "Contributor week" : "Laguntzailearen astea", - "Party" : "Jaia", - "Celebration" : "Ospakizuna", "Mail" : "Posta", "Soccer" : "Futbola", "Football" : "Futbol amerikarra", "Gaming" : "Bideo-jokoak", - "Play" : "Jolastu", - "Game" : "Jokoa", "Drive" : "Gidatu", + "Driving" : "Gidatzen", "Bicycle" : "Bizikleta", "Cycle" : "Bizikletan ibili", + "Cycling" : "Bizikletan", "Biking" : "Motorrean ibili", + "Bike" : "Bizikleta", "Podcast" : "Podcasta", "Basketball" : "Saskibaloia", "Fishing" : "Arrantza", @@ -364,10 +574,12 @@ OC.L10N.register( "Museum" : "Museoa", "Pilates" : "Pilates", "Park" : "Parkea", + "Walk" : "Ibili", "Studying" : "Ikasten", "Doctor" : "Medikua", "Health" : "Osasuna", "Dentist" : "Dentista", + "Hospital" : "Ospitalea", "Interview" : "Elkarrizketa", "Training" : "Entrenamendua", "Practice" : "Praktika", @@ -378,10 +590,13 @@ OC.L10N.register( "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" : "UZ", + "NYE" : "Urte Zaharra", "Fireworks" : "Su artifizialak", "Running" : "Korrika", "Go for a run" : "Korrikaldia", @@ -397,20 +612,27 @@ OC.L10N.register( "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", - "Global" : "Orokorra" + "Appointment not found" : "Ez da hitzordua aurkitu", + "User not found" : "Ez da erabiltzailea aurkitu" }, "nplurals=2; plural=(n != 1);"); diff --git a/l10n/eu.json b/l10n/eu.json index 3a7db3e6ee..5c4247e923 100644 --- a/l10n/eu.json +++ b/l10n/eu.json @@ -3,55 +3,131 @@ "Provided email-address is not valid" : "Emandako helbide elektronikoa ez da baliozkoa", "%s has published the calendar »%s«" : "%s erabiltzaileak »%s« egutegia argitaratu du", "Unexpected error sending email. Please contact your administrator." : "Ustekabeko errorea posta elektronikoa bidaltzean. Jarri harremanetan zure administratzailearekin.", - "Successfully sent email to " : "Posta elektronikoa ondo bidali zaio:", + "Successfully sent email to %1$s" : "Posta elektronikoa ondo bidali zaio %1$s(r)i", "Hello," : "Kaixo,", "We wanted to inform you that %s has published the calendar »%s«." : "Jakinarazi nahi dizugu %s erabiltzaileak »%s« egutegia argitaratu duela", "Open »%s«" : " Ireki »%s«", "Cheers!" : "Topa!", "Upcoming events" : "Hurrengo gertaerak", + "More events" : "Gertaera gehiago", + "No more events today" : "Ez dago gertaera gehiagorik gaurkoz.", + "No upcoming events" : "Ez dago gertaerarik datozen egunetan.", + "%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\" 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", + "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 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:", + "Where:" : "Non:", + "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.", + "Anniversary" : "Urtebetetzea", + "Appointment" : "Hitzordua", + "Business" : "Lana", + "Education" : "Hezkuntza", + "Holiday" : "Jaieguna", + "Meeting" : "Bilera", + "Miscellaneous" : "Askotarikoa", + "Non-working hours" : "Laneko orduetatik kanpo", + "Not in office" : "Ez nago bulegoan", + "Personal" : "Pertsonala", + "Phone call" : "Telefono-deia", + "Sick day" : "Gaixorik", + "Special occasion" : "Gertaera berezia", + "Travel" : "Bidaian", + "Vacation" : "Oporretan", + "Custom Categories" : "Kategoria pertsonalizatuak", + "Collaborative Tags" : "Elkarlaneko etiketak", + "Standard Categories" : "Kategoria orokorrak", "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* ⏰ **Oroigarriak!** 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.", + "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", + "Event" : "Gertaera", + "Create new event" : "Sortu gertaera berria", "Today" : "Gaur", "Day" : "Eguna", "Week" : "Astea", "Month" : "Hilabetea", + "Year" : "Urtea", "List" : "Zerrenda", - "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", - "Download" : "Deskargatu", - "Unshare from me" : "Kendu nirekin partekatzea", + "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", + "Shared with you by" : "Zurekin partekatuta honengatik:", + "Edit and share calendar" : "Editatu eta partekatu egutegia", + "Edit calendar" : "Editatu egutegia", + "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.", "_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"], + "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", + "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://)", + "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", + "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.", + "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", + "Empty trash bin" : "Hustu zakarrontzia", + "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 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?", + "_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.", + "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", "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", @@ -63,32 +139,32 @@ "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", "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 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.", - "+ New calendar" : "+ Egutegi berria", - "New calendar" : "Egutegi berria", - "Creating calendar …" : "Egutegia sortzen …", - "New calendar with task list" : "Egutegi berria ataza zerrendarekin", - "New subscription from link (read-only)" : "Harpidetza berria estekatik (irakurtzeko bakarrik)", - "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://)", - "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", + "Calendar name …" : "Egutegiaren izena ...", + "Share calendar" : "Partekatu egutegia", + "Unshare from me" : "Kendu nirekin partekatzea", + "Save" : "Gorde", + "Failed to save calendar name and color" : "Ezin izan da egutegiaren izena eta kolorea 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"], - "{filename} is an unsupported file-type" : "{filename} sostengu gabeko fitxategi mota bat da", + "Default attachments location" : "Eranskinen kokaleku lehenetsia", + "Select the default location for attachments" : "Hautatu eranskinen kokaleku lehenetsia", + "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.", "{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._" : ["Behar bezala inportatu da gertaera %n.","Behar bezala inportatu dira %n gertaera."], + "_Successfully imported %n event_::_Successfully imported %n events_" : ["%n gertaera behar bezala inportatu dira","%n gertaera behar bezala inportatu dira"], "Automatic" : "Automatikoa", "Automatic ({detected})" : "Automatikoa ({detected})", "New setting was not saved successfully." : "Ezarpen berria ez da behar bezala gorde.", @@ -101,21 +177,81 @@ "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", "Show shortcuts" : "Erakutsi lasterbideak", + "Editor" : "Editorea", + "Close editor" : "Itxi editorea", + "Save edited event" : "Gorde editatutako gertaera", + "Delete edited event" : "Ezabatu editatutako gertaera", + "Duplicate event" : "Bikoiztu gertaera", "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", "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", - "Settings & import" : "Ezarpenak eta inportazioa", + "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", + "_{duration} minute_::_{duration} minutes_" : ["minutu {duration}","{duration} minutu"], + "0 minutes" : "0 minutu", + "_{duration} hour_::_{duration} hours_" : ["ordu {duration}","{duration} ordu"], + "_{duration} day_::_{duration} days_" : ["egun {duration}","{duration} egun"], + "_{duration} week_::_{duration} weeks_" : ["aste {duration}","{duration} aste"], + "_{duration} month_::_{duration} months_" : ["hilabete {duration}","{duration} hilabete"], + "_{duration} year_::_{duration} years_" : ["urte {duration}","{duration} urte"], + "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 name" : "Hitzorduaren izena:", + "Location" : "Kokapena", + "Description" : "Deskribapena", + "Visibility" : "Ikusgarritasuna", + "Duration" : "Iraupena", + "Increments" : "Gehikuntzak", + "Additional calendars to check for conflicts" : "Gatazkak egiaztatzeko egutegi gehigarriak", + "Pick time ranges where appointments are allowed" : "Aukeratu hitzorduetan onartzen diren denbora tarteak", + "to" : "honi", + "Delete slot" : "Ezabatu tartea", + "No times set" : "Ez dago denborarik ezarrita", + "Add" : "Gehitu", + "Monday" : "Astelehena", + "Tuesday" : "Asteartea", + "Wednesday" : "Asteazkena", + "Thursday" : "Osteguna", + "Friday" : "Ostirala", + "Saturday" : "Larunbata", + "Sunday" : "Igandea", + "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", + "Planning restrictions" : "Planifikatze murrizketak", + "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", + "Update" : "Eguneratu", + "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", "before at" : "lehenago hemen", "Notification" : "Jakinarazpena", "Email" : "Mezu elektronikoa", @@ -129,55 +265,79 @@ "on" : "noiz", "at" : "non", "+ Add reminder" : "+ Gehitu abisua", + "Add reminder" : "Gehitu abisua", "_second_::_seconds_" : ["segundo","segundo"], "_minute_::_minutes_" : ["minutu","minutu"], "_hour_::_hours_" : ["ordu","ordu"], "_day_::_days_" : ["egun","egun"], "_week_::_weeks_" : ["aste","aste"], - "No reminders yet" : "Abisurik ez oraindik", + "No attachments" : "Eranskinik ez", + "Add from Files" : "Gehitu Fitxategietatik", + "Upload from device" : "Kargatu gailutik", + "Delete file" : "Ezabatu fitxategia", + "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!", + "_{count} attachment_::_{count} attachments_" : ["Eranskin {count}","{count} eranskin"], + "Invitation accepted" : "Gonbidapena onartuta", + "Available" : "Erabilgarri", + "Suggested" : "Iradokituta", + "Participation marked as tentative" : "Partaidetza behin-behineko gisa markatu da", + "Accepted {organizerName}'s invitation" : "{organizerName}(r)en gonbidapena onartuta", + "Not available" : "Ez dago erabilgarri", + "Invitation declined" : "Gonbidapena ukatuta", + "Declined {organizerName}'s invitation" : "{organizerName}(r)en gonbidapena ukatuta", + "Invitation is delegated" : "Gonbidapena eskuordetuta dago", + "Checking availability" : "Erabilgarritasuna egiaztatzen", + "Invitation sent" : "Gonbidapena bidalita", + "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", + "{organizer} (organizer)" : "{organizer} (kudeatzailea)", + "Free" : "Libre", "Busy (tentative)" : "Lanpetuta (behin-behinean)", "Busy" : "Lanpetua", "Out of office" : "Bulegotik kanpo", "Unknown" : "Ezezaguna", - "{name} accepted your invitation." : "{name} erabiltzaileak zure gonbidapena onartu du.", - "{name} accepted {organizerName}'s invitation." : "{name} erabiltzaileak {organizerName} erabiltzailearen gonbidapena onartu du.", - "{name} declined your invitation." : "{name} erabiltzaileak zure gonbidapenari uko egin dio.", - "{name} declined {organizerName}'s invitation." : "{name} erabiltzaileak {organizerName} erabiltzailearen gonbidapenari uko egin dio.", - "{name} has delegated their invitation." : "{name} erabiltzaileak bere gonbidapena eskuordetu du.", - "{name} marked their participation as tentative." : "{name} erabiltzaileak bere parte-hartzea behin behineko bezala markatu du.", - "{name} did not respond to your invitation yet." : "{name} erabiltzaileak ez dio zure gonbidapenari erantzun oraindik.", - "{name} did not respond to {organizerName}'s invitation yet." : "{name} erabiltzaileak ez dio {organizerName} erabiltzailearen gonbidapenari erantzun oraindik.", + "Accept" : "Onartu", + "Decline" : "Uko egin", + "Tentative" : "Behin behinekoa", + "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", + "No attendees yet" : "Partaiderik ez oraindik", "Successfully appended link to talk room to description." : "Ondo erantsi zaio esteka hizketa gelaren deskribapenari.", "Error creating Talk room" : "Errorea Talk gela sortzean", - "Send e-mail" : "Bidali posta elektronikoa", - "Chairperson" : "Presidente", + "Send email" : "Bidali e-posta", + "Chairperson" : "Mahaiburua", "Required participant" : "Beharrezko partaidea", "Optional participant" : "Hautazko partaidea", "Non-participant" : "Ez da partaidea", "Remove attendee" : "Kendu partaidea", - "Search for e-mails, users, contacts, resources or rooms" : "Bilatu helbide elektronikoak, erabiltzaileak, kontaktuak, baliabideak edo gelak", + "Search for emails, users or contacts" : "Bilatu mezu elektronikoak, erabiltzaileak edo kontaktuak", "No match found" : "Ez da emaitzarik aurkitu", - "No attendees yet" : "Partaiderik ez oraindik", "(organizer)" : "(antolatzailea)", "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", - "Can not modify all-day setting for events that are part of a recurrence-set." : "Ezin dira egun osoko ezarpenak aldatu errepikapen sorta bateko ekitaldientzat.", - "from {startDate}" : "noiztik {startDate}", - "from {startDate} at {startTime}" : "noiztik {startDate}, {startTime}", + "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", + "Repeat" : "Errepikatu", "End repeat" : "Amaitu errepikapena", "Select to end repeat" : "Hautatu errepikapena amaitzeko", "never" : "inoiz ez", "on date" : "epean", "after" : "gero", "_time_::_times_" : ["aldiz","aldiz"], - "This event is the recurrence-exception of a recurrence-set. You can not add a recurrence-rule to it." : "Ekitaldi hau errepikapen sorta bateko errepikapen salbuespena da. Ezin diozu errepikapen araurik ezarri.", + "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", @@ -185,83 +345,107 @@ "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" : "Errepikatu", "Repeat every" : "Errepikatu zenbatero", "By day of the month" : "Hileko egunaren arabera", "On the" : "Honetan", "_month_::_months_" : ["hilabete","hilabete"], "_year_::_years_" : ["urte","urte"], - "Monday" : "Astelehena", "weekday" : "asteguna", "weekend day" : "asteburuko eguna", - "Summary" : "Laburpena", + "No recurrence" : "Errepikapenik ez", "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", + "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", + "Room type" : "Gela mota", + "Any" : "Edozein", + "Minimum seating capacity" : "Gutxieneko eserleku kopurua", "More" : "Gehiago", - "Save" : "Gorde", - "Update" : "Eguneratu", "Update this occurrence" : "Eguneratu gertaera hau", "Update this and all future" : "Eguneratu hau eta etorkizuneko guztiak", "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 timezone:" : "Mesedez aukeratu ordu-zona bat:", + "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}(e)an", + "on {formattedDate}" : "{formattedDate}an", "from {formattedDate} at {formattedTime}" : "{formattedDate}ko {formattedTime}tik", "to {formattedDate} at {formattedTime}" : "{formattedDate}ko {formattedTime} arte", - "on {formattedDate} at {formattedTime}" : "{formattedDate}(e)an {formattedTime}etan", - "{formattedDate} at {formattedTime}" : "{formattedDate}(e)an {formattedTime}etan", + "on {formattedDate} at {formattedTime}" : "{formattedDate}ko {formattedTime}etan", + "{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", - "Type to search timezone" : "Idatzi ordu-zona bat bilatzeko", - "Personal" : "Pertsonala", - "The automatic timezone detection determined your timezone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your timezone manually in the calendar settings." : "Ordu-eremu detekzio automatikoak zehaztu du zure ordu-eremua UTC dela. Hau seguru aski zure nabigatzailearen segurtasun neurrien ondorio da. Zehaztu ezazu zure ordu-eremua eskuz egutegiaren ezarpenetan.", - "Your configured timezone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your timezone in the settings and report this issue." : "Ezarrita daukazun ordu-eremua ({timezoneId}) ez da aurkitu. UTC-ra itzultzen. Mesedez, 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.", + "Type to search time zone" : "Idatzi ordu-zona bilatzeko", + "Global" : "Orokorra", + "Public holiday calendars" : "Opor publikoen egutegiak", + "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.", + "By {authors}" : "{authors} egina", + "Subscribed" : "Harpidetua", + "Subscribe" : "Harpidetu", + "Holidays in {region}" : "Oporrak {region}(e)n", + "An error occurred, unable to create the public holiday calendar." : "Errore bat gertatu da, ezin da jaiegun egutegi publikoa sortu.", + "Select date" : "Hautatu data", + "Select slot" : "Hautatu tartea", + "No slots available" : "Ez dago tarterik eskuragarri", + "The slot for your appointment has been confirmed" : "Zure hitzorduaren tartea berretsi da", + "Appointment Details:" : "Hitzorduaren xehetasunak:", + "Time:" : "Noiz:", + "Booked for:" : "Honetarako erreserbatuta:", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "Eskerrik asko. {startDate}tik {endDate} arteko erreserba berretsi da.", + "Book another appointment:" : "Erreserbatu beste hitzordu bat", + "See all available slots" : "Ikusi eskuragarri dauden tarte guztiak", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "{startDate}tik {endDate} arteko zure hitzorduaren tartea ez dago jada erabilgarri.", + "Please book a different slot:" : "Mesedez erreserbatu beste tarte bat:", + "Book an appointment with {name}" : "Hitzordu bat erreserbatu {name}(r)ekin", + "No public appointments found for {name}" : "Ez da hitzordu publikorik aurkitu {name}rentzat", + "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.", "Create a new event" : "Sortu gertaera berri bat", - "[Today]" : "[Gaur]", - "[Tomorrow]" : "[Bihar]", - "[Yesterday]" : "[Atzo]", + "[Today]" : "[Today]", + "[Tomorrow]" : "[Tomorrow]", + "[Yesterday]" : "[Yesterday]", + "[Last] dddd" : "[Last] dddd", "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", + "Managing shared access" : "Sarbide partekatua kudeatzea", + "Deny access" : "Ukatu sarbidea", + "Invite" : "Gonbidatu", "Attendees" : "Partaideak", - "Reminders" : "Oroigarriak", + "Resources" : "Baliabideak", + "_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"], "Close" : "Itxi", "Show more details" : "Erakutsi xehetasun gehiago", "Subscribe to {name}" : "Harpidetu {name}", - "Download {name}" : "Deskargatu {name}", - "Anniversary" : "Urtebetetzea / urteurrena", - "Appointment" : "Hitzordua", - "Business" : "Lana", - "Education" : "Hezkuntza", - "Holiday" : "Jaieguna", - "Meeting" : "Bilera", - "Miscellaneous" : "Askotarikoa", - "Non-working hours" : "Laneko orduetatik kanpo", - "Not in office" : "Ez nago bulegoan", - "Phone call" : "Telefono deia", - "Sick day" : "Gaixotasuna", - "Special occasion" : "Gertaera berezia", - "Travel" : "Bidaia", - "Vacation" : "Oporrak", + "Export {name}" : "Esportatu {name}", "Midnight on the day the event starts" : "Gauerdian gertaera hasten den egunean", - "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["Egun %n gertaera hasi baino lehen {formattedHourMinute}(e)tan","%n egun gertaera hasi baino lehen {formattedHourMinute}(e)tan"], - "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : [" aste %n gertaera hasi baino lehen {formattedHourMinute}(e)tan","%n aste gertaera hasi baino lehen {formattedHourMinute}(e)tan"], - "on the day of the event at {formattedHourMinute}" : "Gertaeraren egunean {formattedHourMinute}(e)tan", + "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["Egun %n gertaera hasi baino lehen {formattedHourMinute}(e)tan","%n egun gertaera hasi baino lehen {formattedHourMinute}etan"], + "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : [" aste %n gertaera hasi baino lehen {formattedHourMinute}(e)tan","%n aste gertaera hasi baino lehen {formattedHourMinute}etan"], + "on the day of the event at {formattedHourMinute}" : "Gertaeraren egunean {formattedHourMinute}etan", "at the event's start" : "gertaera hasieran", "at the event's end" : "gertaera amaieran", "{time} before the event starts" : "gertaera hasi baino {time} lehenago", "{time} before the event ends" : "gertaera amaitu baino {time} lehenago", "{time} after the event starts" : "gertaera hasi baino {time} geroago", "{time} after the event ends" : "gertaera amaitu baino {time} geroago", - "on {time}" : "{time}(e)tan", - "on {time} ({timezoneId})" : "{time}(e)tan ({timezoneId})", - "Week {number} of {year}" : "{year}ko {number} astea", + "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", @@ -273,22 +457,15 @@ "_Every %n year_::_Every %n years_" : ["Urtero","%n urtetik behin"], "_on {weekday}_::_on {weekdays}_" : ["{weekday}","{weekdays}"], "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["{dayOfMonthList} egunean","{dayOfMonthList} egunetan"], - "on the {ordinalNumber} {byDaySet}" : "{ordinalNumber} {byDaySet}(e)an", - "in {monthNames}" : "{monthNames}(e)an", - "in {monthNames} on the {ordinalNumber} {byDaySet}" : "{monthNames}(e)an {ordinalNumber} {byDaySet}(e)an", + "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", "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" : "datorren urtea", - "today" : "gaur", - "list" : "zerrenda", "W" : "A. ", - "all-day" : "Egun osoa", "%n more" : "%n gehiago", "No events to display" : "Ez dago bistaratzeko gertaerarik", "_+%n more_::_+%n more_" : ["+ %n","+ %n"], @@ -296,62 +473,95 @@ "Create a new event or change the visible time-range" : "Sortu gertaera berria edo aldatu ikusgai dagoen epea", "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", + "Lecture hall" : "Konferentzia-gela", + "Seminar room" : "Mintegia", + "Other" : "Bestelakoa", "When shared show" : "Partekatzean erakutsi", "When shared show full event" : "Partekatzean erakutsi gertaera osoa", "When shared show only busy" : "Partekatzean okupatua bezala erakutsi soilik", "When shared hide this event" : "Partekatzean ezkutatu gertaera hau", "The visibility of this event in shared calendars." : "Gertaera honen ikusgarritasuna egutegi partekatuetan", - "Location" : "Kokapena", "Add a location" : "Gehitu kokapen bat", - "Description" : "Deskribapena", "Add a description" : "Gehitu deskribapena", "Status" : "Egoera", "Confirmed" : "Berretsita", - "Tentative" : "Behin behinekoa", "Canceled" : "Utzita", "Confirmation about the overall status of the event." : "Baieztapena gertaeraren egoera orokorrari buruz.", "Show as" : "Erakutsi honela", "Take this event into account when calculating free-busy information." : "Kontuan izan gertaera hau libre-lanpetuta informazio kalkuluetan.", - "Free" : "Libre", "Categories" : "Kategoriak", "Categories help you to structure and organize your events." : "Kategoriak lagungarri zaizkizu gertaerak egituratu eta antolatzeko.", "Search or add categories" : "Bilatu edo gehitu kategoriak", "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.", + "Error while sharing file" : "Errorea fitxategia partekatzean", + "Error while sharing file with user" : "Errorea fitxategia erabiltzailearekin partekatzean", + "Attachment {fileName} already exists!" : "{fileName} eranskina dagoeneko badago!", + "An error occurred during getting file information" : "Errore bat gertatu da fitxategiaren informazioa eskuratzean", "Chat room for event" : "Txat gela gertaera honentzat", - "Imported {filename}" : "Inportatuta {filename}", + "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 oroigarri bat da.", "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", - "Present" : "Aurkeztu", + "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", - "Review" : "Berrikusi", "Office" : "Bulegoa", "Contributor week" : "Laguntzailearen astea", - "Party" : "Jaia", - "Celebration" : "Ospakizuna", "Mail" : "Posta", "Soccer" : "Futbola", "Football" : "Futbol amerikarra", "Gaming" : "Bideo-jokoak", - "Play" : "Jolastu", - "Game" : "Jokoa", "Drive" : "Gidatu", + "Driving" : "Gidatzen", "Bicycle" : "Bizikleta", "Cycle" : "Bizikletan ibili", + "Cycling" : "Bizikletan", "Biking" : "Motorrean ibili", + "Bike" : "Bizikleta", "Podcast" : "Podcasta", "Basketball" : "Saskibaloia", "Fishing" : "Arrantza", @@ -362,10 +572,12 @@ "Museum" : "Museoa", "Pilates" : "Pilates", "Park" : "Parkea", + "Walk" : "Ibili", "Studying" : "Ikasten", "Doctor" : "Medikua", "Health" : "Osasuna", "Dentist" : "Dentista", + "Hospital" : "Ospitalea", "Interview" : "Elkarrizketa", "Training" : "Entrenamendua", "Practice" : "Praktika", @@ -376,10 +588,13 @@ "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" : "UZ", + "NYE" : "Urte Zaharra", "Fireworks" : "Su artifizialak", "Running" : "Korrika", "Go for a run" : "Korrikaldia", @@ -395,20 +610,27 @@ "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", - "Global" : "Orokorra" + "Appointment not found" : "Ez da hitzordua aurkitu", + "User not found" : "Ez da erabiltzailea aurkitu" },"pluralForm" :"nplurals=2; plural=(n != 1);" } \ No newline at end of file diff --git a/l10n/fa.js b/l10n/fa.js index 154082fc06..4878c81d1e 100644 --- a/l10n/fa.js +++ b/l10n/fa.js @@ -1,57 +1,136 @@ 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 " : "ایمیل با موفقیت ارسال شد", + "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" : "رویدادهای پیش‌رو", + "More events" : "More events", + "No more events today" : "هیچ رویداد دیگری برای امروز وجود ندارد", + "No upcoming 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" : "تائید", + "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:" : "تاریخ:", + "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.", + "Anniversary" : "سالگرد", + "Appointment" : "وقت ملاقات", + "Business" : "کسب و کار", + "Education" : "تحصیلات", + "Holiday" : "تعطیلات", + "Meeting" : "ملاقات", + "Miscellaneous" : "متفرقه", + "Non-working hours" : "ساعات غیر کاری", + "Not in office" : "در دفتر نیست", + "Personal" : "شخصی", + "Phone call" : "تماس تلفنی", + "Sick day" : "روز بیماری", + "Special occasion" : "مناسبت ویژه", + "Travel" : "مسافرت رفتن", + "Vacation" : "تعطیلات", + "Custom Categories" : "Custom Categories", + "Collaborative Tags" : "Collaborative Tags", + "Standard Categories" : "Standard Categories", "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 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.", "Previous day" : "روز قبل", "Previous week" : "هفته قبل", + "Previous year" : "Previous year", "Previous month" : "ماه قبل", "Next day" : "روز بعد", "Next week" : "هفته بعد", + "Next year" : "Next year", "Next month" : "ماه بعد", - "+ New event" : "+ رویداد جدید", + "Event" : "Event", + "Create new event" : "Create new event", "Today" : "امروز", "Day" : "روز", "Week" : "هفته", "Month" : "ماه", + "Year" : "سال", "List" : "لیست", - "Untitled calendar" : "تقویم بدون عنوان", - "Edit name" : "ویرایش نام", - "Saving name …" : "ذخیره نام", - "Edit color" : "ویرایش رنگ", - "Saving color …" : "ذخیره رنگ", - "Copy private link" : "کپی کردن پیوند خصوصی", - "Download" : "دانلود", - "Unshare from me" : "بی خبر از من", + "Preview" : "پیش‌نمایش", + "Copy link" : "کپی کردن لینک", + "Edit" : "ویرایش", "Delete" : "حذف", + "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", + "Add new" : "افزودن مورد تازه", + "Untitled calendar" : "تقویم بدون عنوان", + "Shared with you by" : "با شما به اشتراک گذاشته شده است", + "Edit and share calendar" : "Edit and share calendar", + "Edit calendar" : "Edit calendar", + "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." : "خطایی روی داد ، قادر به تغییر رنگ تقویم نیست.", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["اشتراک‌گذاری تقویم در {شمارش معکوس}. ثانیه","اشتراک‌گذاری تقویم در {شمارش معکوس}. ثانیه ها"], "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["حذف تقویم در {شمارش معکوس} ثانیه ها","حذف تقویم در {شمارش معکوس} ثانیه ها"], - "Share link" : "Share link", - "Publish calendar" : "تقویم را منتشر کنید", - "Publishing calendar" : "در حال انتشار تقویم ", - "Copy public link" : "پیوند عمومی را کپی کنید", - "Send link to calendar via email" : "ارسال پیوند به تقویم از طریق ایمیل", - "Enter one address" : "یک آدرس وارد کنید", - "Sending email …" : "ارسال ایمیل…", + "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", + "An error occurred, unable to create the calendar." : "خطایی روی داد ، قادر به ایجاد تقویم نیست.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "لطفاً یک پیوند معتبر وارد کنید (با شروع http: // ، https: // ، webcal: // ، یا صفحات وب: //)", "Copy subscription link" : "پیوند اشتراک را کپی کنید", "Copying link …" : "کپی پیوند ...", "Copied link" : "پیوند کپی شد", "Could not copy link" : "نمی توان پیوند را کپی کرد", + "Export" : "دریافت خروجی", + "Calendar link copied to clipboard." : "پیوند تقویم در کلیپ بورد کپی شد.", + "Calendar link could not be copied to clipboard." : "پیوند تقویم را نمی توان در کلیپ بورد کپی کرد.", + "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" : "حذف قطعی", + "Empty trash bin" : "خالی کردن سطل زباله", + "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?" : "آیا واقعاً می خواهید سطل زباله را خالی کنید؟", + "_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.", + "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" : "کپی کردن پیوند داخلی", + "Share link" : "لینک را به اشتراک بگذارید", + "Copy public link" : "پیوند عمومی را کپی کنید", + "Send link to calendar via email" : "ارسال پیوند به تقویم از طریق ایمیل", + "Enter one address" : "یک آدرس وارد کنید", + "Sending email …" : "ارسال ایمیل…", "Copy embedding code" : "کد تعبیه شده را کپی کنید", "Copying code …" : "کپی کردن کد ...", "Copied code" : "کد کپی شد", @@ -63,41 +142,119 @@ OC.L10N.register( "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" : "هیچ کاربر یا گروهی وجود ندارد", "can edit" : "می توان ویرایش کرد", "Unshare with {displayName}" : "عدم اشتراک گذاری با {displayName}", - "An error occurred, unable to change the unshare the calendar." : "خطایی روی داد ، قادر به تغییر تقویم عدم اشتراک گذاری نیست.", + "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." : "خطایی روی داد ، قادر به تغییر مجوز اشتراک نیست.", - "+ 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: // ، یا صفحات وب: //)", + "Share with users or groups" : "اشتراک گذاری با کاربران یا گروه ها ...", + "No users or groups" : "هیچ کاربر یا گروهی وجود ندارد", + "Calendar name …" : "Calendar name …", + "Share calendar" : "Share calendar", + "Unshare from me" : "بی خبر از من", + "Save" : "ذخیره", + "Failed to save calendar name and color" : "Failed to save calendar name and color", "Import calendars" : "وارد کردن تقویم ها", "Please select a calendar to import into …" : "لطفاً یک تقویم را برای وارد کردن به… انتخاب کنید", "Filename" : "نام فایل", "Calendar to import into" : "تقویم برای وارد کردن", "Cancel" : "منصرف شدن", "_Import calendar_::_Import calendars_" : ["وارد کردن تقویم","وارد کردن تقویم ها"], + "Default attachments location" : "Default attachments location", + "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.", + "{filename} could not be parsed" : "{filename} could not be parsed", + "No valid files found, aborting import" : "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 با موفقیت وارد شده."], + "_Successfully imported %n event_::_Successfully imported %n events_" : ["Successfully imported %n event","Successfully imported %n events"], "Automatic" : "خودکار", "Automatic ({detected})" : "خودکار ({شناسایی})", "New setting was not saved successfully." : "تنظیم جدید با موفقیت ذخیره نشد.", + "Shortcut overview" : "Shortcut overview", + "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" : "رویداد تکراری", "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 را کپی کنید", - "Settings & import" : "تنظیمات و وارد کردن", + "Personal availability settings" : "Personal availability settings", + "Show keyboard shortcuts" : "Show keyboard shortcuts", + "Calendar settings" : "تنظیمات تقویم", + "No reminder" : "No reminder", "CalDAV link copied to clipboard." : "پیوند CalDAV در کلیپ بورد کپی شد.", "CalDAV link could not be copied to clipboard." : "پیوند CalDAV در کلیپ بورد قابل کپی نیست.", + "Appointment was created successfully" : "Appointment was created successfully", + "Appointment was updated successfully" : "Appointment was updated successfully", + "_{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 name" : "Appointment name", + "Location" : "محل", + "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" : "سه شنبه", + "Wednesday" : "چهارشنبه", + "Thursday" : "پنجشنبه", + "Friday" : "جمعه", + "Saturday" : "شنبه", + "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", + "Create appointment" : "Create appointment", + "Edit appointment" : "Edit appointment", + "Update" : "به روز رسانی", + "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" : "پست الکترونیکی شما", + "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.", + "Book the appointment" : "Book the appointment", + "Reminder" : "Reminder", "before at" : "قبل از در", "Notification" : "اطلاع", "Email" : "ایمیل", @@ -111,53 +268,80 @@ OC.L10N.register( "on" : "بر", "at" : "در", "+ Add reminder" : "+ اضافه کردن یادآوری", + "Add reminder" : "Add reminder", "_second_::_seconds_" : ["ثانیه","ثانیه ها"], "_minute_::_minutes_" : ["دقایق","دقیقه ها"], "_hour_::_hours_" : ["ساعت","ساعت ها"], "_day_::_days_" : ["روز","روز ها"], "_week_::_weeks_" : ["هفته","هفته ها"], - "No reminders yet" : "هنوز هیچ یادآوری نیست", + "No attachments" : "No attachments", + "Add from Files" : "Add from Files", + "Upload from device" : "Upload from device", + "Delete file" : "حذف پرونده", + "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!", + "_{count} attachment_::_{count} attachments_" : ["{count} attachment","{count} attachments"], + "Invitation accepted" : "Invitation accepted", + "Available" : "در دسترس", + "Suggested" : "Suggested", + "Participation marked as tentative" : "Participation marked as tentative", + "Accepted {organizerName}'s invitation" : "Accepted {organizerName}'s invitation", + "Not available" : "در دسترس نیست", + "Invitation declined" : "Invitation declined", + "Declined {organizerName}'s invitation" : "Declined {organizerName}'s invitation", + "Invitation is delegated" : "Invitation is delegated", + "Checking availability" : "Checking availability", + "Invitation sent" : "Invitation sent", + "Has not responded to {organizerName}'s invitation yet" : "Has not responded to {organizerName}'s invitation yet", "Availability of attendees, resources and rooms" : "در دسترس بودن شرکت کنندگان ، منابع و اتاق ها", + "{organizer} (organizer)" : "{organizer} (organizer)", + "Free" : "رایگان", "Busy (tentative)" : "مشغول (آزمایشی)", "Busy" : "مشغول", "Out of office" : "بیرون از دفتر", "Unknown" : "نامشخص", - "{name} accepted your invitation." : "{name} دعوت شما را پذیرفت.", - "{name} accepted {organizerName}'s invitation." : "دعوت نامه {name} قبول {organizerName}.", - "{name} declined your invitation." : "{name} دعوت شما را رد کرد.", - "{name} declined {organizerName}'s invitation." : "دعوت نامه {name} رد شده {organizerName}.\n\n ", - "{name} has delegated their invitation." : "{name} دعوت خود را به آنها اعطا کرده است.", - "{name} marked their participation as tentative." : "{name} مشارکت آنها را به عنوان آزمایشی مشخص کرد.", - "{name} did not respond to your invitation yet." : "{name} هنوز به دعوت شما پاسخ نداده", - "{name} did not respond to {organizerName}'s invitation yet." : "{name} پاسخی نداده به {organizerName}'sدعوت هنوز.", + "Accept" : "تایید", + "Decline" : "کاهش می یابد", + "Tentative" : "آزمایشی", + "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.", "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 e-mail" : "ارسال ایمیل", + "Send email" : "ارسال ایمیل", "Chairperson" : "رئیس", "Required participant" : "شرکت کننده مورد نیاز", "Optional participant" : "شرکت کننده اختیاری", "Non-participant" : "غیر شرکت کننده", "Remove attendee" : "شرکت کننده را حذف کنید", - "Search for e-mails, users, contacts, resources or rooms" : "جستجوی ایمیل ، کاربران ، مخاطبین ، منابع یا اتاق ها", + "Search for emails, users or contacts" : "Search for emails, users or contacts", "No match found" : "هیچ تطبیقی یافت نشد", - "No attendees yet" : "هنوز هیچ حضوری وجود ندارد", "(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" : "تمام روز", - "Can not 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." : "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}", + "Repeat" : "تکرار", "End repeat" : "پایان تکرار ", "Select to end repeat" : "برای پایان دادن به تکرار انتخاب کنید", "never" : "هرگز", "on date" : "در تاریخ", "after" : "بعد از", "_time_::_times_" : ["بار","بارها"], - "This event is the recurrence-exception of a recurrence-set. You can not add a recurrence-rule to it." : " این رویداد , استثنا یک مجموعه بازگشتی است . شما نمی‌توانید یک قاعده بازگشتی به آن اضافه کنید", + "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" : "چهارم", @@ -165,25 +349,39 @@ OC.L10N.register( "second to last" : "دوم تا آخرین", "last" : "آخر", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "تغییر در قانون بازگشتی فقط در مورد این و همه وقایع آینده اعمال خواهد شد.", - "Repeat" : "تکرار", "Repeat every" : "همه را تکرار کنید", "By day of the month" : "تا روز ماه", "On the" : "در", "_month_::_months_" : ["ماه","ماه ها"], "_year_::_years_" : ["سال","سال ها"], - "Monday" : "دوشنبه", "weekday" : "روز هفته", "weekend day" : " آخر هفته", - "Summary" : "خلاصه", + "No recurrence" : "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." : "تعریف بازگشتی از این رویداد توسط نکست کلود کاملاً پشتیبانی نمی شود. اگر گزینه های بازگشتی را ویرایش کنید ، ممکن است بازگشتی های خاصی از بین بروند.", + "Suggestions" : "Suggestions", + "No rooms or resources yet" : "No rooms or resources yet", + "Add resource" : "Add resource", + "Has a projector" : "Has a projector", + "Has a whiteboard" : "Has a whiteboard", + "Wheelchair accessible" : "Wheelchair accessible", + "Remove resource" : "Remove resource", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} seat","{seatingCapacity} seats"], + "Projector" : "Projector", + "Whiteboard" : "Whiteboard", + "Search for resources or rooms" : "Search for resources or rooms", + "available" : "در دسترس", + "unavailable" : "unavailable", + "Room type" : "Room type", + "Any" : "Any", + "Minimum seating capacity" : "Minimum seating capacity", "More" : "بیش‌تر", - "Save" : "ذخیره", - "Update" : "به روز رسانی", "Update this occurrence" : "این رویداد را به روز کنید", "Update this and all future" : "این و همه آینده را به روز کنید", "Public calendar does not exist" : "تقویم عمومی وجود ندارد", "Maybe the share was deleted or has expired?" : "شاید اشتراک حذف شده باشد یا منقضی شده باشد؟", - "Please select a timezone:" : "لطفا منطقه زمانی را انتخاب کنید:", + "Please select a time zone:" : "Please select a time zone:", + "Pick a time" : "Pick a time", + "Pick a date" : "Pick a date", "from {formattedDate}" : "از {formattedDate}", "to {formattedDate}" : "به {formattedDate}", "on {formattedDate}" : "در {formattedDate}", @@ -193,33 +391,52 @@ OC.L10N.register( "{formattedDate} at {formattedTime}" : "{formattedDate} در {formattedTime}", "Please enter a valid date" : "لطفا یک تاریخ معتبر وارد کنید", "Please enter a valid date and time" : "لطفاً یک تاریخ و زمان معتبر وارد کنید", - "Type to search timezone" : "برای جستجو در منطقه زمانی تایپ کنید", - "Personal" : "شخصی", - "The automatic timezone detection determined your timezone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your timezone manually in the calendar settings." : "تشخیص منطقه زمانی خودکار ، منطقه زمانی شما را UTC تعیین می کند. این احتمالاً نتیجه اقدامات امنیتی مرورگر وب شماست. لطفاً منطقه زمانی خود را به صورت دستی در تنظیمات تقویم تنظیم کنید.", - "Your configured timezone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your timezone in the settings and report this issue." : "منطقه زمانی پیکربندی شده شما ({timezoneId}) یافت نشد. در حال بازگشت به UTC. لطفاً منطقه زمانی خود را در تنظیمات تغییر داده و این مسئله را گزارش کنید.", + "Type to search time zone" : "Type to search time zone", + "Global" : "عمومی", + "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" : "اشتراک گذاری", + "Holidays in {region}" : "Holidays in {region}", + "An error occurred, unable to create the public holiday calendar." : "An error occurred, unable to create the public holiday calendar.", + "Select date" : "Select 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}", + "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.", + "Create a new event" : "Create a new event", + "[Today]" : "[امروز]", + "[Tomorrow]" : "[فردا]", + "[Yesterday]" : "[دیروز]", + "[Last] dddd" : "[Last] dddd", + "Event does not exist" : "رویداد وجود ندارد", + "Duplicate" : "Duplicate", "Delete this occurrence" : "این رخداد را حذف کنید", "Delete this and all future" : "این و همه آینده را حذف کنید", "Details" : "جزئیات", + "Managing shared access" : "Managing shared access", + "Deny access" : "Deny access", + "Invite" : "Invite", "Attendees" : "شرکت کنندگان", - "Reminders" : "یادآوری ها", + "Resources" : "منابع", + "_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"], "Close" : "بستن", "Show more details" : "جزئیات بیشتر را نشان دهید", "Subscribe to {name}" : "اشتراک در {name}", - "Download {name}" : "بارگیری {name}", - "Anniversary" : "سالگرد", - "Appointment" : "وقت ملاقات", - "Business" : "کسب و کار", - "Education" : "تحصیلات", - "Holiday" : "تعطیلات", - "Meeting" : "ملاقات", - "Miscellaneous" : "متفرقه", - "Non-working hours" : "ساعات غیر کاری", - "Not in office" : "در دفتر نیست", - "Phone call" : "تماس تلفنی", - "Sick day" : "روز بیماری", - "Special occasion" : "مناسبت ویژه", - "Travel" : "مسافرت رفتن", - "Vacation" : "تعطیلات", + "Export {name}" : "دریافت خروجی از {name}", "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 week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n هفته قبل از این رویداد در {formattedHourMinute}","%n هفته قبل از این رویدادها در {formattedHourMinute}"], @@ -250,64 +467,105 @@ OC.L10N.register( "until {untilDate}" : "تا زمان {untilDate}", "_%n time_::_%n times_" : ["%n بار","%n بارها"], "Untitled event" : "رویداد بدون عنوان", - "next year" : "سال آینده", - "today" : "امروز", + "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 بیشتر"], + "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." : "قابلیت مشاهده این رویداد در تقویمهای مشترک.", - "Location" : "محل", - "Add a location" : "اضافه کردن یک محل", - "Description" : "توضیحات", - "Add a description" : "توضیحات اضافه کنید", + "Add a location" : "افزودن یک محل", + "Add a description" : "یک توضیح بنویسید", "Status" : "وضعیت", "Confirmed" : "تایید شده", - "Tentative" : "آزمایشی", + "Canceled" : "لغو شد", "Confirmation about the overall status of the event." : "تأیید درباره وضعیت کلی این رویداد.", "Show as" : "نمایش به عنوان", "Take this event into account when calculating free-busy information." : "هنگام محاسبه اطلاعات شلوغ رایگان ، این رویداد را در نظر بگیرید.", - "Free" : "رایگان", "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", + "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", "Chat room for event" : "اتاق گپ برای رویداد", + "An error occurred, unable to delete the calendar." : "خطایی روی داد ، قادر به حذف تقویم نیست.", "Imported {filename}" : "وارد شده {نام پرونده}", + "This is an event reminder." : "This is an event reminder.", "Meditation" : "مراقبه", "Relaxing" : "آرامش بخش", "Relax" : "آروم باش", + "Break" : "Break", + "Commute" : "Commute", + "Commuting" : "رفت و آمد", + "Shuttle" : "Shuttle", + "Invoice" : "Invoice", + "Finance" : "Finance", + "Bank" : "Bank", + "Money" : "پول", + "Wedding" : "Wedding", + "Dog" : "Dog", + "Concert" : "Concert", + "Festival" : "Festival", + "Theater" : "Theater", + "Theatre" : "Theatre", "Presentation" : "ارائه", - "Present" : "حاضر", + "Talk" : "گفتگو", + "Speech" : "Speech", + "Deadline" : "Deadline", + "Submission" : "Submission", + "Reporting" : "Reporting", "Camping" : "چادر زدن", "Camp" : "اردوگاه", + "Election" : "Election", + "Voting" : "Voting", + "Vote" : "Vote", + "Barbecue" : "Barbecue", + "Barbeque" : "Barbeque", + "Garden" : "Garden", + "Farm" : "Farm", "Movie" : "فیلم", "Cinema" : "سینما", "Graduation" : "فارغ التحصیلی", "Brainstorm" : "ایده پردازی", + "Review" : "مرور", + "Audit" : "Audit", + "Inspection" : "Inspection", + "Proofreading" : "Proofreading", "Baseball" : "بیسبال", "Meet" : "ملاقات", "Planning" : "برنامه ریزی", "Pointing" : "اشاره", "Retrospective" : "گذشته نگر", - "Review" : "مرور", "Office" : "دفتر", "Contributor week" : "هفته مشارکت کننده", - "Party" : "مهمانی - جشن", - "Celebration" : "جشن", "Mail" : "ایمیل", "Soccer" : "فوتبال", "Football" : "فوتبال", "Gaming" : "بازی", - "Play" : "پخش کردن", - "Game" : "بازی", "Drive" : "راندن", + "Driving" : "Driving", "Bicycle" : "دوچرخه", "Cycle" : "چرخه", + "Cycling" : "Cycling", "Biking" : "دوچرخه سواری", + "Bike" : "Bike", "Podcast" : "پادکست", "Basketball" : "بسکتبال", "Fishing" : "ماهیگیری", @@ -318,10 +576,12 @@ OC.L10N.register( "Museum" : "موزه", "Pilates" : "پیلاتس", "Park" : "پارک", + "Walk" : "Walk", "Studying" : "در حال مطالعه", "Doctor" : "دکتر", "Health" : "سلامتی", "Dentist" : "دندانپزشک", + "Hospital" : "بیمارستان", "Interview" : "مصاحبه", "Training" : "آموزش", "Practice" : "تمرین", @@ -332,7 +592,10 @@ OC.L10N.register( "Gym" : "سالن ورزش", "Barber" : "سلمانی", "Haircut" : "اصلاح مو", + "Hairdresser" : "Hairdresser", "Exam" : "امتحان", + "Written test" : "Written test", + "Oral test" : "Oral test", "Working" : "کار کردن", "New Years Eve" : "سال نو", "NYE" : "NYE", @@ -340,26 +603,38 @@ OC.L10N.register( "Running" : "در حال دویدن", "Go for a run" : "برو برای اجرا", "Marathon" : "ماراتن", + "Video-conference" : "Video-conference", + "Conference-call" : "Conference-call", + "Video-call" : "Video-call", + "Video-chat" : "Video-chat", + "Video-meeting" : "Video-meeting", "Call" : "زنگ زدن", "Calling" : "صدا زدن", "Christmas" : "کریسمس", "Conference" : "کنفرانس", "Pizza" : "پیتزا", "Travelling" : "مسافرت", + "Trip" : "Trip", "Journey" : "سفر", "Collaborate" : "همکاری", "Pair" : "جفت", "Lecture" : "سخنرانی", "Seminar" : "سمینار", + "Teaching" : "Teaching", "Photograph" : "عکس", + "Party" : "مهمانی - جشن", + "Celebration" : "جشن", "Celebrate" : "جشن گرفتن", + "Birthday" : "روزتولد", "Shopping" : "خريد كردن", + "Groceries" : "Groceries", "Skate" : "اسکیت", "Skateboard" : "صفحه اسکیت", "Wine tasting" : "مزه کردن شراب", "Golf" : "گلف", "Dinner" : "شام", "Lunch" : "ناهار", - "Global" : "عمومی" + "Appointment not found" : "Appointment not found", + "User not found" : "کاربر یافت نشد" }, "nplurals=2; plural=(n > 1);"); diff --git a/l10n/fa.json b/l10n/fa.json index 028a295e6d..20a495ee91 100644 --- a/l10n/fa.json +++ b/l10n/fa.json @@ -1,55 +1,134 @@ { "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 " : "ایمیل با موفقیت ارسال شد", + "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" : "رویدادهای پیش‌رو", + "More events" : "More events", + "No more events today" : "هیچ رویداد دیگری برای امروز وجود ندارد", + "No upcoming 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" : "تائید", + "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:" : "تاریخ:", + "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.", + "Anniversary" : "سالگرد", + "Appointment" : "وقت ملاقات", + "Business" : "کسب و کار", + "Education" : "تحصیلات", + "Holiday" : "تعطیلات", + "Meeting" : "ملاقات", + "Miscellaneous" : "متفرقه", + "Non-working hours" : "ساعات غیر کاری", + "Not in office" : "در دفتر نیست", + "Personal" : "شخصی", + "Phone call" : "تماس تلفنی", + "Sick day" : "روز بیماری", + "Special occasion" : "مناسبت ویژه", + "Travel" : "مسافرت رفتن", + "Vacation" : "تعطیلات", + "Custom Categories" : "Custom Categories", + "Collaborative Tags" : "Collaborative Tags", + "Standard Categories" : "Standard Categories", "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 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.", "Previous day" : "روز قبل", "Previous week" : "هفته قبل", + "Previous year" : "Previous year", "Previous month" : "ماه قبل", "Next day" : "روز بعد", "Next week" : "هفته بعد", + "Next year" : "Next year", "Next month" : "ماه بعد", - "+ New event" : "+ رویداد جدید", + "Event" : "Event", + "Create new event" : "Create new event", "Today" : "امروز", "Day" : "روز", "Week" : "هفته", "Month" : "ماه", + "Year" : "سال", "List" : "لیست", - "Untitled calendar" : "تقویم بدون عنوان", - "Edit name" : "ویرایش نام", - "Saving name …" : "ذخیره نام", - "Edit color" : "ویرایش رنگ", - "Saving color …" : "ذخیره رنگ", - "Copy private link" : "کپی کردن پیوند خصوصی", - "Download" : "دانلود", - "Unshare from me" : "بی خبر از من", + "Preview" : "پیش‌نمایش", + "Copy link" : "کپی کردن لینک", + "Edit" : "ویرایش", "Delete" : "حذف", + "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", + "Add new" : "افزودن مورد تازه", + "Untitled calendar" : "تقویم بدون عنوان", + "Shared with you by" : "با شما به اشتراک گذاشته شده است", + "Edit and share calendar" : "Edit and share calendar", + "Edit calendar" : "Edit calendar", + "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." : "خطایی روی داد ، قادر به تغییر رنگ تقویم نیست.", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["اشتراک‌گذاری تقویم در {شمارش معکوس}. ثانیه","اشتراک‌گذاری تقویم در {شمارش معکوس}. ثانیه ها"], "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["حذف تقویم در {شمارش معکوس} ثانیه ها","حذف تقویم در {شمارش معکوس} ثانیه ها"], - "Share link" : "Share link", - "Publish calendar" : "تقویم را منتشر کنید", - "Publishing calendar" : "در حال انتشار تقویم ", - "Copy public link" : "پیوند عمومی را کپی کنید", - "Send link to calendar via email" : "ارسال پیوند به تقویم از طریق ایمیل", - "Enter one address" : "یک آدرس وارد کنید", - "Sending email …" : "ارسال ایمیل…", + "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", + "An error occurred, unable to create the calendar." : "خطایی روی داد ، قادر به ایجاد تقویم نیست.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "لطفاً یک پیوند معتبر وارد کنید (با شروع http: // ، https: // ، webcal: // ، یا صفحات وب: //)", "Copy subscription link" : "پیوند اشتراک را کپی کنید", "Copying link …" : "کپی پیوند ...", "Copied link" : "پیوند کپی شد", "Could not copy link" : "نمی توان پیوند را کپی کرد", + "Export" : "دریافت خروجی", + "Calendar link copied to clipboard." : "پیوند تقویم در کلیپ بورد کپی شد.", + "Calendar link could not be copied to clipboard." : "پیوند تقویم را نمی توان در کلیپ بورد کپی کرد.", + "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" : "حذف قطعی", + "Empty trash bin" : "خالی کردن سطل زباله", + "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?" : "آیا واقعاً می خواهید سطل زباله را خالی کنید؟", + "_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.", + "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" : "کپی کردن پیوند داخلی", + "Share link" : "لینک را به اشتراک بگذارید", + "Copy public link" : "پیوند عمومی را کپی کنید", + "Send link to calendar via email" : "ارسال پیوند به تقویم از طریق ایمیل", + "Enter one address" : "یک آدرس وارد کنید", + "Sending email …" : "ارسال ایمیل…", "Copy embedding code" : "کد تعبیه شده را کپی کنید", "Copying code …" : "کپی کردن کد ...", "Copied code" : "کد کپی شد", @@ -61,41 +140,119 @@ "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" : "هیچ کاربر یا گروهی وجود ندارد", "can edit" : "می توان ویرایش کرد", "Unshare with {displayName}" : "عدم اشتراک گذاری با {displayName}", - "An error occurred, unable to change the unshare the calendar." : "خطایی روی داد ، قادر به تغییر تقویم عدم اشتراک گذاری نیست.", + "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." : "خطایی روی داد ، قادر به تغییر مجوز اشتراک نیست.", - "+ 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: // ، یا صفحات وب: //)", + "Share with users or groups" : "اشتراک گذاری با کاربران یا گروه ها ...", + "No users or groups" : "هیچ کاربر یا گروهی وجود ندارد", + "Calendar name …" : "Calendar name …", + "Share calendar" : "Share calendar", + "Unshare from me" : "بی خبر از من", + "Save" : "ذخیره", + "Failed to save calendar name and color" : "Failed to save calendar name and color", "Import calendars" : "وارد کردن تقویم ها", "Please select a calendar to import into …" : "لطفاً یک تقویم را برای وارد کردن به… انتخاب کنید", "Filename" : "نام فایل", "Calendar to import into" : "تقویم برای وارد کردن", "Cancel" : "منصرف شدن", "_Import calendar_::_Import calendars_" : ["وارد کردن تقویم","وارد کردن تقویم ها"], + "Default attachments location" : "Default attachments location", + "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.", + "{filename} could not be parsed" : "{filename} could not be parsed", + "No valid files found, aborting import" : "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 با موفقیت وارد شده."], + "_Successfully imported %n event_::_Successfully imported %n events_" : ["Successfully imported %n event","Successfully imported %n events"], "Automatic" : "خودکار", "Automatic ({detected})" : "خودکار ({شناسایی})", "New setting was not saved successfully." : "تنظیم جدید با موفقیت ذخیره نشد.", + "Shortcut overview" : "Shortcut overview", + "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" : "رویداد تکراری", "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 را کپی کنید", - "Settings & import" : "تنظیمات و وارد کردن", + "Personal availability settings" : "Personal availability settings", + "Show keyboard shortcuts" : "Show keyboard shortcuts", + "Calendar settings" : "تنظیمات تقویم", + "No reminder" : "No reminder", "CalDAV link copied to clipboard." : "پیوند CalDAV در کلیپ بورد کپی شد.", "CalDAV link could not be copied to clipboard." : "پیوند CalDAV در کلیپ بورد قابل کپی نیست.", + "Appointment was created successfully" : "Appointment was created successfully", + "Appointment was updated successfully" : "Appointment was updated successfully", + "_{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 name" : "Appointment name", + "Location" : "محل", + "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" : "سه شنبه", + "Wednesday" : "چهارشنبه", + "Thursday" : "پنجشنبه", + "Friday" : "جمعه", + "Saturday" : "شنبه", + "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", + "Create appointment" : "Create appointment", + "Edit appointment" : "Edit appointment", + "Update" : "به روز رسانی", + "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" : "پست الکترونیکی شما", + "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.", + "Book the appointment" : "Book the appointment", + "Reminder" : "Reminder", "before at" : "قبل از در", "Notification" : "اطلاع", "Email" : "ایمیل", @@ -109,53 +266,80 @@ "on" : "بر", "at" : "در", "+ Add reminder" : "+ اضافه کردن یادآوری", + "Add reminder" : "Add reminder", "_second_::_seconds_" : ["ثانیه","ثانیه ها"], "_minute_::_minutes_" : ["دقایق","دقیقه ها"], "_hour_::_hours_" : ["ساعت","ساعت ها"], "_day_::_days_" : ["روز","روز ها"], "_week_::_weeks_" : ["هفته","هفته ها"], - "No reminders yet" : "هنوز هیچ یادآوری نیست", + "No attachments" : "No attachments", + "Add from Files" : "Add from Files", + "Upload from device" : "Upload from device", + "Delete file" : "حذف پرونده", + "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!", + "_{count} attachment_::_{count} attachments_" : ["{count} attachment","{count} attachments"], + "Invitation accepted" : "Invitation accepted", + "Available" : "در دسترس", + "Suggested" : "Suggested", + "Participation marked as tentative" : "Participation marked as tentative", + "Accepted {organizerName}'s invitation" : "Accepted {organizerName}'s invitation", + "Not available" : "در دسترس نیست", + "Invitation declined" : "Invitation declined", + "Declined {organizerName}'s invitation" : "Declined {organizerName}'s invitation", + "Invitation is delegated" : "Invitation is delegated", + "Checking availability" : "Checking availability", + "Invitation sent" : "Invitation sent", + "Has not responded to {organizerName}'s invitation yet" : "Has not responded to {organizerName}'s invitation yet", "Availability of attendees, resources and rooms" : "در دسترس بودن شرکت کنندگان ، منابع و اتاق ها", + "{organizer} (organizer)" : "{organizer} (organizer)", + "Free" : "رایگان", "Busy (tentative)" : "مشغول (آزمایشی)", "Busy" : "مشغول", "Out of office" : "بیرون از دفتر", "Unknown" : "نامشخص", - "{name} accepted your invitation." : "{name} دعوت شما را پذیرفت.", - "{name} accepted {organizerName}'s invitation." : "دعوت نامه {name} قبول {organizerName}.", - "{name} declined your invitation." : "{name} دعوت شما را رد کرد.", - "{name} declined {organizerName}'s invitation." : "دعوت نامه {name} رد شده {organizerName}.\n\n ", - "{name} has delegated their invitation." : "{name} دعوت خود را به آنها اعطا کرده است.", - "{name} marked their participation as tentative." : "{name} مشارکت آنها را به عنوان آزمایشی مشخص کرد.", - "{name} did not respond to your invitation yet." : "{name} هنوز به دعوت شما پاسخ نداده", - "{name} did not respond to {organizerName}'s invitation yet." : "{name} پاسخی نداده به {organizerName}'sدعوت هنوز.", + "Accept" : "تایید", + "Decline" : "کاهش می یابد", + "Tentative" : "آزمایشی", + "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.", "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 e-mail" : "ارسال ایمیل", + "Send email" : "ارسال ایمیل", "Chairperson" : "رئیس", "Required participant" : "شرکت کننده مورد نیاز", "Optional participant" : "شرکت کننده اختیاری", "Non-participant" : "غیر شرکت کننده", "Remove attendee" : "شرکت کننده را حذف کنید", - "Search for e-mails, users, contacts, resources or rooms" : "جستجوی ایمیل ، کاربران ، مخاطبین ، منابع یا اتاق ها", + "Search for emails, users or contacts" : "Search for emails, users or contacts", "No match found" : "هیچ تطبیقی یافت نشد", - "No attendees yet" : "هنوز هیچ حضوری وجود ندارد", "(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" : "تمام روز", - "Can not 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." : "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}", + "Repeat" : "تکرار", "End repeat" : "پایان تکرار ", "Select to end repeat" : "برای پایان دادن به تکرار انتخاب کنید", "never" : "هرگز", "on date" : "در تاریخ", "after" : "بعد از", "_time_::_times_" : ["بار","بارها"], - "This event is the recurrence-exception of a recurrence-set. You can not add a recurrence-rule to it." : " این رویداد , استثنا یک مجموعه بازگشتی است . شما نمی‌توانید یک قاعده بازگشتی به آن اضافه کنید", + "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" : "چهارم", @@ -163,25 +347,39 @@ "second to last" : "دوم تا آخرین", "last" : "آخر", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "تغییر در قانون بازگشتی فقط در مورد این و همه وقایع آینده اعمال خواهد شد.", - "Repeat" : "تکرار", "Repeat every" : "همه را تکرار کنید", "By day of the month" : "تا روز ماه", "On the" : "در", "_month_::_months_" : ["ماه","ماه ها"], "_year_::_years_" : ["سال","سال ها"], - "Monday" : "دوشنبه", "weekday" : "روز هفته", "weekend day" : " آخر هفته", - "Summary" : "خلاصه", + "No recurrence" : "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." : "تعریف بازگشتی از این رویداد توسط نکست کلود کاملاً پشتیبانی نمی شود. اگر گزینه های بازگشتی را ویرایش کنید ، ممکن است بازگشتی های خاصی از بین بروند.", + "Suggestions" : "Suggestions", + "No rooms or resources yet" : "No rooms or resources yet", + "Add resource" : "Add resource", + "Has a projector" : "Has a projector", + "Has a whiteboard" : "Has a whiteboard", + "Wheelchair accessible" : "Wheelchair accessible", + "Remove resource" : "Remove resource", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} seat","{seatingCapacity} seats"], + "Projector" : "Projector", + "Whiteboard" : "Whiteboard", + "Search for resources or rooms" : "Search for resources or rooms", + "available" : "در دسترس", + "unavailable" : "unavailable", + "Room type" : "Room type", + "Any" : "Any", + "Minimum seating capacity" : "Minimum seating capacity", "More" : "بیش‌تر", - "Save" : "ذخیره", - "Update" : "به روز رسانی", "Update this occurrence" : "این رویداد را به روز کنید", "Update this and all future" : "این و همه آینده را به روز کنید", "Public calendar does not exist" : "تقویم عمومی وجود ندارد", "Maybe the share was deleted or has expired?" : "شاید اشتراک حذف شده باشد یا منقضی شده باشد؟", - "Please select a timezone:" : "لطفا منطقه زمانی را انتخاب کنید:", + "Please select a time zone:" : "Please select a time zone:", + "Pick a time" : "Pick a time", + "Pick a date" : "Pick a date", "from {formattedDate}" : "از {formattedDate}", "to {formattedDate}" : "به {formattedDate}", "on {formattedDate}" : "در {formattedDate}", @@ -191,33 +389,52 @@ "{formattedDate} at {formattedTime}" : "{formattedDate} در {formattedTime}", "Please enter a valid date" : "لطفا یک تاریخ معتبر وارد کنید", "Please enter a valid date and time" : "لطفاً یک تاریخ و زمان معتبر وارد کنید", - "Type to search timezone" : "برای جستجو در منطقه زمانی تایپ کنید", - "Personal" : "شخصی", - "The automatic timezone detection determined your timezone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your timezone manually in the calendar settings." : "تشخیص منطقه زمانی خودکار ، منطقه زمانی شما را UTC تعیین می کند. این احتمالاً نتیجه اقدامات امنیتی مرورگر وب شماست. لطفاً منطقه زمانی خود را به صورت دستی در تنظیمات تقویم تنظیم کنید.", - "Your configured timezone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your timezone in the settings and report this issue." : "منطقه زمانی پیکربندی شده شما ({timezoneId}) یافت نشد. در حال بازگشت به UTC. لطفاً منطقه زمانی خود را در تنظیمات تغییر داده و این مسئله را گزارش کنید.", + "Type to search time zone" : "Type to search time zone", + "Global" : "عمومی", + "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" : "اشتراک گذاری", + "Holidays in {region}" : "Holidays in {region}", + "An error occurred, unable to create the public holiday calendar." : "An error occurred, unable to create the public holiday calendar.", + "Select date" : "Select 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}", + "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.", + "Create a new event" : "Create a new event", + "[Today]" : "[امروز]", + "[Tomorrow]" : "[فردا]", + "[Yesterday]" : "[دیروز]", + "[Last] dddd" : "[Last] dddd", + "Event does not exist" : "رویداد وجود ندارد", + "Duplicate" : "Duplicate", "Delete this occurrence" : "این رخداد را حذف کنید", "Delete this and all future" : "این و همه آینده را حذف کنید", "Details" : "جزئیات", + "Managing shared access" : "Managing shared access", + "Deny access" : "Deny access", + "Invite" : "Invite", "Attendees" : "شرکت کنندگان", - "Reminders" : "یادآوری ها", + "Resources" : "منابع", + "_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"], "Close" : "بستن", "Show more details" : "جزئیات بیشتر را نشان دهید", "Subscribe to {name}" : "اشتراک در {name}", - "Download {name}" : "بارگیری {name}", - "Anniversary" : "سالگرد", - "Appointment" : "وقت ملاقات", - "Business" : "کسب و کار", - "Education" : "تحصیلات", - "Holiday" : "تعطیلات", - "Meeting" : "ملاقات", - "Miscellaneous" : "متفرقه", - "Non-working hours" : "ساعات غیر کاری", - "Not in office" : "در دفتر نیست", - "Phone call" : "تماس تلفنی", - "Sick day" : "روز بیماری", - "Special occasion" : "مناسبت ویژه", - "Travel" : "مسافرت رفتن", - "Vacation" : "تعطیلات", + "Export {name}" : "دریافت خروجی از {name}", "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 week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n هفته قبل از این رویداد در {formattedHourMinute}","%n هفته قبل از این رویدادها در {formattedHourMinute}"], @@ -248,64 +465,105 @@ "until {untilDate}" : "تا زمان {untilDate}", "_%n time_::_%n times_" : ["%n بار","%n بارها"], "Untitled event" : "رویداد بدون عنوان", - "next year" : "سال آینده", - "today" : "امروز", + "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 بیشتر"], + "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." : "قابلیت مشاهده این رویداد در تقویمهای مشترک.", - "Location" : "محل", - "Add a location" : "اضافه کردن یک محل", - "Description" : "توضیحات", - "Add a description" : "توضیحات اضافه کنید", + "Add a location" : "افزودن یک محل", + "Add a description" : "یک توضیح بنویسید", "Status" : "وضعیت", "Confirmed" : "تایید شده", - "Tentative" : "آزمایشی", + "Canceled" : "لغو شد", "Confirmation about the overall status of the event." : "تأیید درباره وضعیت کلی این رویداد.", "Show as" : "نمایش به عنوان", "Take this event into account when calculating free-busy information." : "هنگام محاسبه اطلاعات شلوغ رایگان ، این رویداد را در نظر بگیرید.", - "Free" : "رایگان", "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", + "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", "Chat room for event" : "اتاق گپ برای رویداد", + "An error occurred, unable to delete the calendar." : "خطایی روی داد ، قادر به حذف تقویم نیست.", "Imported {filename}" : "وارد شده {نام پرونده}", + "This is an event reminder." : "This is an event reminder.", "Meditation" : "مراقبه", "Relaxing" : "آرامش بخش", "Relax" : "آروم باش", + "Break" : "Break", + "Commute" : "Commute", + "Commuting" : "رفت و آمد", + "Shuttle" : "Shuttle", + "Invoice" : "Invoice", + "Finance" : "Finance", + "Bank" : "Bank", + "Money" : "پول", + "Wedding" : "Wedding", + "Dog" : "Dog", + "Concert" : "Concert", + "Festival" : "Festival", + "Theater" : "Theater", + "Theatre" : "Theatre", "Presentation" : "ارائه", - "Present" : "حاضر", + "Talk" : "گفتگو", + "Speech" : "Speech", + "Deadline" : "Deadline", + "Submission" : "Submission", + "Reporting" : "Reporting", "Camping" : "چادر زدن", "Camp" : "اردوگاه", + "Election" : "Election", + "Voting" : "Voting", + "Vote" : "Vote", + "Barbecue" : "Barbecue", + "Barbeque" : "Barbeque", + "Garden" : "Garden", + "Farm" : "Farm", "Movie" : "فیلم", "Cinema" : "سینما", "Graduation" : "فارغ التحصیلی", "Brainstorm" : "ایده پردازی", + "Review" : "مرور", + "Audit" : "Audit", + "Inspection" : "Inspection", + "Proofreading" : "Proofreading", "Baseball" : "بیسبال", "Meet" : "ملاقات", "Planning" : "برنامه ریزی", "Pointing" : "اشاره", "Retrospective" : "گذشته نگر", - "Review" : "مرور", "Office" : "دفتر", "Contributor week" : "هفته مشارکت کننده", - "Party" : "مهمانی - جشن", - "Celebration" : "جشن", "Mail" : "ایمیل", "Soccer" : "فوتبال", "Football" : "فوتبال", "Gaming" : "بازی", - "Play" : "پخش کردن", - "Game" : "بازی", "Drive" : "راندن", + "Driving" : "Driving", "Bicycle" : "دوچرخه", "Cycle" : "چرخه", + "Cycling" : "Cycling", "Biking" : "دوچرخه سواری", + "Bike" : "Bike", "Podcast" : "پادکست", "Basketball" : "بسکتبال", "Fishing" : "ماهیگیری", @@ -316,10 +574,12 @@ "Museum" : "موزه", "Pilates" : "پیلاتس", "Park" : "پارک", + "Walk" : "Walk", "Studying" : "در حال مطالعه", "Doctor" : "دکتر", "Health" : "سلامتی", "Dentist" : "دندانپزشک", + "Hospital" : "بیمارستان", "Interview" : "مصاحبه", "Training" : "آموزش", "Practice" : "تمرین", @@ -330,7 +590,10 @@ "Gym" : "سالن ورزش", "Barber" : "سلمانی", "Haircut" : "اصلاح مو", + "Hairdresser" : "Hairdresser", "Exam" : "امتحان", + "Written test" : "Written test", + "Oral test" : "Oral test", "Working" : "کار کردن", "New Years Eve" : "سال نو", "NYE" : "NYE", @@ -338,26 +601,38 @@ "Running" : "در حال دویدن", "Go for a run" : "برو برای اجرا", "Marathon" : "ماراتن", + "Video-conference" : "Video-conference", + "Conference-call" : "Conference-call", + "Video-call" : "Video-call", + "Video-chat" : "Video-chat", + "Video-meeting" : "Video-meeting", "Call" : "زنگ زدن", "Calling" : "صدا زدن", "Christmas" : "کریسمس", "Conference" : "کنفرانس", "Pizza" : "پیتزا", "Travelling" : "مسافرت", + "Trip" : "Trip", "Journey" : "سفر", "Collaborate" : "همکاری", "Pair" : "جفت", "Lecture" : "سخنرانی", "Seminar" : "سمینار", + "Teaching" : "Teaching", "Photograph" : "عکس", + "Party" : "مهمانی - جشن", + "Celebration" : "جشن", "Celebrate" : "جشن گرفتن", + "Birthday" : "روزتولد", "Shopping" : "خريد كردن", + "Groceries" : "Groceries", "Skate" : "اسکیت", "Skateboard" : "صفحه اسکیت", "Wine tasting" : "مزه کردن شراب", "Golf" : "گلف", "Dinner" : "شام", "Lunch" : "ناهار", - "Global" : "عمومی" + "Appointment not found" : "Appointment not found", + "User not found" : "کاربر یافت نشد" },"pluralForm" :"nplurals=2; plural=(n > 1);" } \ No newline at end of file diff --git a/l10n/fi.js b/l10n/fi.js index ea352afb29..a1c8c828c6 100644 --- a/l10n/fi.js +++ b/l10n/fi.js @@ -1,59 +1,133 @@ 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«", "Unexpected error sending email. Please contact your administrator." : "Odottamaton virhe sähköpostia lähettäessä. Ole yhteydessä ylläpitoon.", - "Successfully sent email to " : "Sähköposti lähetettiin onnistuneesti", + "Successfully sent email to %1$s" : "Sähköposti lähetetty taholle %1$s", "Hello," : "Hei", "We wanted to inform you that %s has published the calendar »%s«." : "Halusimme ilmoittaa, että %s on julkaissut kalenterin »%s«.", "Open »%s«" : "Avaa »%s«", "Cheers!" : "Kiitos!", "Upcoming events" : "Tulevat tapahtumat", + "More events" : "Lisää tapahtumia", + "No more events today" : "Ei enempää tapahtumia tänään", + "No upcoming events" : "Ei tulevia 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\" 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", + "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 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:", + "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.", + "Anniversary" : "Vuosipäivä", + "Appointment" : "Tapaaminen", + "Business" : "Business", + "Education" : "Koulutus", + "Holiday" : "Loma", + "Meeting" : "Kokous", + "Miscellaneous" : "Sekalaiset", + "Non-working hours" : "Ei-työnalaiset tunnit", + "Not in office" : "Pois työpaikalta", + "Personal" : "Henkilökohtainen", + "Phone call" : "Puhelinkeskustelu", + "Sick day" : "Sairauspäivä", + "Special occasion" : "Erikoistilaisuus", + "Travel" : "Matka", + "Vacation" : "Vapaalla töistä", + "Custom Categories" : "Mukautetut luokat", + "Collaborative Tags" : "Yhteiset tunnisteet", + "Standard Categories" : "Tavalliset luokat", "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", + "Event" : "Tapahtuma", + "Create new event" : "Luo uusi tapahtuma", "Today" : "Tänään", "Day" : "Päivä", "Week" : "Viikko", "Month" : "Kuukausi", + "Year" : "Vuosi", "List" : "Lista", - "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", - "Download" : "Lataa", - "Unshare from me" : "Lopeta jako minulle", + "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", + "Shared with you by" : "Jaettu sinulle käyttäjältä", + "Edit and share calendar" : "Muokkaa/jaa kalenteri", + "Edit calendar" : "Muokkaa kalenteria", + "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.", "_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"], + "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", + "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://)", + "Copy subscription link" : "Kopioi tilauslinkki", + "Copying link …" : "Kopioidaan linkki …", + "Copied link" : "Linkki kopioitu", + "Could not copy link" : "Linkkiä ei voitu kopioida", + "Export" : "Vie", + "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.", + "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", + "Empty trash bin" : "Tyhjennä roskakori", + "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 restore calendar or event" : "Kalenteria tai tapahtumaa ei voitu palauttaa", + "Do you really want to empty the trash bin?" : "Haluatko varmasti tyhjentää roskakorin?", + "_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ää.", + "Internal link" : "Sisäinen linkki", + "Copy internal link" : "Kopioi sisäinen linkki", "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", @@ -65,32 +139,30 @@ OC.L10N.register( "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ä", "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", - "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://)", - "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ä", + "Calendar name …" : "Kalenterin nimi…", + "Share calendar" : "Jaa kalenteri", + "Unshare from me" : "Lopeta jako minulle", + "Save" : "Tallenna", + "Failed to save calendar name and color" : "Kalenterin nimen ja värin tallentaminen epäonnistui", "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"], - "{filename} is an unsupported file-type" : "{filename} ei ole tuettua tiedostotyyppiä", + "Default attachments location" : "Liitteiden oletussijainti", + "Select the default location for attachments" : "Valitse oletussijainti liitteille", + "Invalid location selected" : "Virheellinen sijainti valittu", + "Attachments folder successfully saved." : "Liitteiden kansio tallennettu.", "{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."], + "_Successfully imported %n event_::_Successfully imported %n events_" : ["Tuotiin onnistuneesti %n tapahtuma","Tuotiin onnistuneesti %n tapahtumaa"], "Automatic" : "Automaattinen", "Automatic ({detected})" : "Automaattinen ({detected})", "New setting was not saved successfully." : "Uutta asetusta ei tallennettu onnistuneesti.", @@ -99,25 +171,86 @@ OC.L10N.register( "Navigation" : "Navigointi", "Previous period" : "Edellinen jakso", "Next period" : "Seuraava jakso", - "Views" : "Näyttökertaa", + "Views" : "Näkymät", "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", - "Show shortcuts" : "Näytä pikakuvakkeet", + "Show shortcuts" : "Näytä pikanäppäimet", + "Editor" : "Muokkain", + "Close editor" : "Sulje muokkain", + "Save edited event" : "Tallenna muokattu tapahtuma", + "Delete edited event" : "Poista muokattu tapahtuma", + "Duplicate event" : "Tee kaksoiskappale tapahtumasta", "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 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", - "Settings & import" : "Asetukset ja tuonti", + "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"], + "_{duration} day_::_{duration} days_" : ["{duration} päivä","{duration} päivää"], + "_{duration} week_::_{duration} weeks_" : ["{duration} viikko","{duration} viikkoa"], + "_{duration} month_::_{duration} months_" : ["{duration} kuukausi","{duration} kuukautta"], + "_{duration} year_::_{duration} years_" : ["{duration} vuosi","{duration} vuotta"], + "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 name" : "Tapaamisen nimi", + "Location" : "Sijainti", + "Create a Talk room" : "Luo Talk-huone", + "Description" : "Kuvaus", + "Visibility" : "Näkyvyys", + "Duration" : "Kesto", + "Increments" : "Aikaväli", + "Additional calendars to check for conflicts" : "Lisäkalenterit, jotka tarkistetaan ristiriitojen varalta", + "Pick time ranges where appointments are allowed" : "Valitse aikavälit joihin sallitaan tapaamisia", + "to" : "päättyen", + "Delete slot" : "Poista aikarako", + "No times set" : "Ei asetettuja aikoja", + "Add" : "Lisää", + "Monday" : "Maanantai", + "Tuesday" : "Tiistai", + "Wednesday" : "Keskiviikko", + "Thursday" : "Torstai", + "Friday" : "Perjantai", + "Saturday" : "Lauantai", + "Sunday" : "Sunnuntai", + "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", + "Planning restrictions" : "Suunnittelurajoitukset", + "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", + "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", "before at" : "ennen", "Notification" : "Ilmoitus", "Email" : "Sähköposti", @@ -128,79 +261,121 @@ 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"], - "No reminders yet" : "Ei vielä muistutuksia", + "No attachments" : "Ei liitteitä", + "Add from Files" : "Lisää tiedostosovelluksesta", + "Upload from device" : "Lähetä laitteelta", + "Delete file" : "Poista tiedosto", + "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!", + "_{count} attachment_::_{count} attachments_" : ["{count} liite","{count} liitettä"], + "Invitation accepted" : "Kutsu hyväksytty", + "Available" : "Saatavilla", + "Suggested" : "Ehdotettu", + "Participation marked as tentative" : "Osallistuminen merkitty alustavaksi", + "Accepted {organizerName}'s invitation" : "Hyväksytty järjestäjän {organizerName} kutsu", + "Not available" : "Ei saatavilla", + "Invitation declined" : "Kieltäydytty kutsusta", + "Declined {organizerName}'s invitation" : "Kieltäytyi järjestäjän {organizerName} kutsusta", + "Invitation is delegated" : "Kutsu on delegoitu", + "Checking availability" : "Tarkistetaan saatavuutta", + "Invitation sent" : "Kutsu lähetetty", + "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", + "{organizer} (organizer)" : "{organizer} (järjestäjä)", + "Free" : "Vapaa", "Busy (tentative)" : "Varattu (alustava)", "Busy" : "Varattu", "Out of office" : "Ulkona toimistolta", "Unknown" : "Tuntematon", - "{name} accepted your invitation." : "{name} hyväksyi kutsusi.", - "{name} accepted {organizerName}'s invitation." : "{name} hyväksyi järjestäjän {organizerName} kutsun.", - "{name} declined your invitation." : "{name} kieltäytyi kutsustasi.", - "{name} declined {organizerName}'s invitation." : "{name} hylkäsi kutsun kutsujalta {organizerName}.", - "{name} has delegated their invitation." : "{name} on lähettänyt kutsun eteenpäin.", - "{name} marked their participation as tentative." : "{name} merkitse osallistumisensa alustavaksi.", - "{name} did not respond to your invitation yet." : "{name} ei ole vielä vastannut kutsuusi.", - "{name} did not respond to {organizerName}'s invitation yet." : "{name} ei ole vielä vastannut järjestäjän {organizerName} kutsuun.", + "Accept" : "Hyväksy", + "Decline" : "Kieltäydy", + "Tentative" : "Alustava", + "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", + "No attendees yet" : "Ei vielä osallistujia", + "You don't own this calendar, so you cannot add attendees to this event" : "Et omista tätä kalenteria, joten et voi lisätä osallistujia tähän tapahtumaan", "Successfully appended link to talk room to description." : "Linkki Talk-huoneeseen lisättiin onnistuneesti kuvaukseen.", "Error creating Talk room" : "Virhe luotaessa Talk-huonetta", - "Send e-mail" : "Lähetä sähköpostia", + "Send email" : "Lähetä sähköposti", "Chairperson" : "Puheenjohtaja", "Required participant" : "Vaadittu osallistuja", "Optional participant" : "Valinnainen osallistuja", "Non-participant" : "Osallistumaton", "Remove attendee" : "Poista osallistuja", - "Search for e-mails, users, contacts, resources or rooms" : "Hae sähköpostiosoitteita, käyttäjiä, yhteystietoja, resursseja tai huoneita", + "Search for emails, users or contacts" : "Etsi sähköpostiosoitteita, käyttäjiä tai yhteystietoja", "No match found" : "Ei tuloksia", - "No attendees yet" : "Ei vielä osallistujia", "(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ä", - "Can not modify all-day setting for events that are part of a recurrence-set." : "Toistuvien tapahtumien koko päivä-asetusta ei voida muokata yksittäisistä toistokerroista.", + "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}", + "Repeat" : "Toista", "End repeat" : "Lopeta toisto", "Select to end repeat" : "Valitse lopettaaksesi toiston", "never" : "ei koskaan", "on date" : "päivänä", "after" : "jälkeen", "_time_::_times_" : ["kerran","kertaa"], - "This event is the recurrence-exception of a recurrence-set. You can not add a recurrence-rule to it." : "Koska tämä tapahtuma poikkeaa tapahtumasarjan toistuvuudesta, et voi muokata lisätä tai muokata toistuvuutta.", + "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." : "Muutoket toistuvuusasetukseen vaikuttaa vain tähän ja tuleviin tapahtumakertoihin.", - "Repeat" : "Toista", + "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", - "Monday" : "Maanantai", + "On the" : "Ajankohtana", + "_month_::_months_" : ["kuukausi","kuukautta"], + "_year_::_years_" : ["vuosi","vuotta"], "weekday" : "viikonpäivä", "weekend day" : "viikonloppupäivä", - "Summary" : "Yhteenveto", + "No recurrence" : "Ei toistumista", "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ä", + "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", + "Room type" : "Huoneen tyyppi", + "Any" : "Mikä tahansa", + "Minimum seating capacity" : "Istumapaikkoja vähintään", "More" : "Lisää", - "Save" : "Tallenna", - "Update" : "Päivitä", "Update this occurrence" : "Päivitä tämä esiintymä", "Update this and all future" : "Päivitä tämä ja kaikki tulevat", "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 timezone:" : "Valitse aikavyöhyke:", + "Please select a time zone:" : "Valitse aikavyöhyke:", "Pick a time" : "Valitse aika", "Pick a date" : "Valitse päivä", "from {formattedDate}" : "alkaen {formattedDate}", @@ -212,40 +387,50 @@ 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", - "Type to search timezone" : "Kirjoita etsiäksesi aikavyöhykettä", - "Personal" : "Henkilökohtainen", - "The automatic timezone detection determined your timezone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your timezone manually in the calendar settings." : "Automaattinen aikavyöhykkeen tunnistaminen tunnisti aikavyöhyykeeksesi UTC:n. Tämä johtuu todennäköisesti selaimesi tietoturva-asetuksista. Aseta aikavyöhyke manuaalisesti kalenterin asetuksissa.", - "Your configured timezone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your timezone in the settings and report this issue." : "Asettamasi aikavyöhykettä ({timezoneId}) ei löytynyt. Käytetään UTC:tä.\nVaihda aikavyöhykeasetus ja raportoi ongelmasta.", - "No more events today" : "Ei enempää tapahtumia tänään", - "No upcoming events" : "Ei tulevia tapahtumia", + "Type to search time zone" : "Kirjoita etsiäksesi aikavyöhykettä", + "Global" : "Julkinen", + "Public holiday calendars" : "Juhlapäiväkalenterit", + "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", + "Holidays in {region}" : "Juhlapäivä alueella {region}", + "An error occurred, unable to create the public holiday calendar." : "Tapahtui virhe, juhlapäiväkalenteria ei voitu luoda.", + "Select 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", + "Appointment Details:" : "Tapaamisen yksityiskohdat:", + "Time:" : "Aika:", + "Booked for:" : "Varattu:", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "Kiitos. varauksesi {startDate} - {endDate} on vahvistettu.", + "Book another appointment:" : "Varaa toinen tapaaminen:", + "See all available slots" : "Näytä kaikki saatavilla olevat aikaraot", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "Aikarako tapaamiselle, {startDate} - {endDate}, ei ole enää saatavilla.", + "Please book a different slot:" : "Varaa muu aikarako:", + "Book an appointment with {name}" : "Varaa tapaaminen käyttäjän {name} kanssa", + "No public appointments found for {name}" : "Käyttäjän {name} julkisia tapaamisia ei löydy", + "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.", "Create a new event" : "Luo uusi tapahtuma", "[Today]" : "[Tänään]", "[Tomorrow]" : "[Huomenna]", "[Yesterday]" : "[Eilen]", + "[Last] dddd" : "[Viimeinen] dddd", "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", + "Managing shared access" : "Jaetun pääsyn hallinta", + "Deny access" : "Estä pääsy", + "Invite" : "Kutsu", "Attendees" : "Osallistujat", - "Reminders" : "Muistutukset", + "Resources" : "Resurssit", + "_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"], "Close" : "Sulje", "Show more details" : "Näytä lisää tietoja", "Subscribe to {name}" : "Tilaa {name}", - "Download {name}" : "Lataa {name}", - "Anniversary" : "Vuosipäivä", - "Appointment" : "Tapaaminen", - "Business" : "Business", - "Education" : "Koulutus", - "Holiday" : "Loma", - "Meeting" : "Tapaaminen", - "Miscellaneous" : "Sekalaiset", - "Non-working hours" : "Ei-työnalaiset tunnit", - "Not in office" : "Pois työpaikalta", - "Phone call" : "Puhelinkeskustelu", - "Sick day" : "Sairauspäivä", - "Special occasion" : "Erikoistilaisuus", - "Travel" : "Matka", - "Vacation" : "Loma", + "Export {name}" : "Vie {name}", "Midnight on the day the event starts" : "Keskiyöllä tapahtumapäivänä", "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n päivä ennen tapahtumaa klo {formattedHourMinute}","%n päivää ennen tapahtumaa klo {formattedHourMinute}"], "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n viikko ennen tapahtumaa klo {formattedHourMinute}","%n viikkoa ennen tapahtumaa klo {formattedHourMinute}"], @@ -270,80 +455,109 @@ 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}"], + "on the {ordinalNumber} {byDaySet}" : "{ordinalNumber} {byDaySet}", "in {monthNames}" : "kuukausina {monthNames}", + "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", "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" : "ensi vuonna", - "today" : "tänään", - "list" : "Lista", "W" : "Vko", - "all-day" : "koko päivä", "%n more" : "%n lisää", "No events to display" : "Ei tapahtumia näytettäväksi", "_+%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", "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", + "Lecture hall" : "Luentosali", + "Seminar room" : "Seminaarihuone", + "Other" : "Muu", "When shared show" : "Jaettaessa näytä", "When shared show full event" : "Jaettaessa näytä koko tapahtuma", "When shared show only busy" : "Jaettaessa näytä vain varattuna oleminen", "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.", - "Location" : "Sijainti", "Add a location" : "Lisää sijainti", - "Description" : "Kuvaus", "Add a description" : "Lisää kuvaus", "Status" : "Tila", "Confirmed" : "Vahvistettu", - "Tentative" : "Alustava", "Canceled" : "Peruttu", + "Confirmation about the overall status of the event." : "Vahvistus tapahtuman yleiskuvasta.", "Show as" : "Näytä muodossa", "Take this event into account when calculating free-busy information." : "Huomioi tämä tapahtuma laskettaessa vapaita ja varattuja ajankohtia.", - "Free" : "Vapaa", "Categories" : "Luokat", "Categories help you to structure and organize your events." : "Luokat auttavat sinua asettamaan tapahtumia rakenteellisiksi ja hallitsemaan niitä.", "Search or add categories" : "Etsi tai lisää luokkia", "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.", + "Error while sharing file" : "Virhe tiedostoa jakaessa", + "Error while sharing file with user" : "Virhe tiedostoa jakaessa käyttäjän kanssa", + "Attachment {fileName} already exists!" : "Liite {fileName} on jo olemassa!", + "An error occurred during getting file information" : "Tiedostojen tietoja noutaessa tapahtui virhe", "Chat room for event" : "Tapahtuman keskusteluhuone", + "An error occurred, unable to delete the calendar." : "Tapahtui virhe, kalenteria ei voitu poistaa.", "Imported {filename}" : "Tuotiin {filename}", + "This is an event reminder." : "Tämä on tapahtuman muistutus.", "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", - "Present" : "Lahja", + "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", - "Review" : "Esikatsele", "Office" : "Toimisto", - "Party" : "Juhlat", - "Celebration" : "Juhlintaa", + "Contributor week" : "Tukijaviikko", "Mail" : "Sähköposti", "Soccer" : "Jalkapallo", "Football" : "Jalkapallo", "Gaming" : "Pelailua", - "Play" : "Esitys", - "Game" : "Peli", "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", @@ -354,10 +568,12 @@ OC.L10N.register( "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", @@ -368,7 +584,10 @@ OC.L10N.register( "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", @@ -377,28 +596,37 @@ OC.L10N.register( "Go for a run" : "Mene lenkille", "Marathon" : "Maraton", "Video-conference" : "Videokonfrenssi", + "Conference-call" : "Neuvottelupuhelu", "Video-call" : "Videopuhelu", "Video-chat" : "Videokeskustelu", - "Video-meeting" : "Videotapaaminen", + "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", - "Global" : "Julkinen" + "Appointment not found" : "Tapaamista ei löydy", + "User not found" : "Käyttäjää ei löydy" }, "nplurals=2; plural=(n != 1);"); diff --git a/l10n/fi.json b/l10n/fi.json index c95a2f29ff..a90efd8094 100644 --- a/l10n/fi.json +++ b/l10n/fi.json @@ -1,57 +1,131 @@ { "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«", "Unexpected error sending email. Please contact your administrator." : "Odottamaton virhe sähköpostia lähettäessä. Ole yhteydessä ylläpitoon.", - "Successfully sent email to " : "Sähköposti lähetettiin onnistuneesti", + "Successfully sent email to %1$s" : "Sähköposti lähetetty taholle %1$s", "Hello," : "Hei", "We wanted to inform you that %s has published the calendar »%s«." : "Halusimme ilmoittaa, että %s on julkaissut kalenterin »%s«.", "Open »%s«" : "Avaa »%s«", "Cheers!" : "Kiitos!", "Upcoming events" : "Tulevat tapahtumat", + "More events" : "Lisää tapahtumia", + "No more events today" : "Ei enempää tapahtumia tänään", + "No upcoming events" : "Ei tulevia 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\" 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", + "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 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:", + "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.", + "Anniversary" : "Vuosipäivä", + "Appointment" : "Tapaaminen", + "Business" : "Business", + "Education" : "Koulutus", + "Holiday" : "Loma", + "Meeting" : "Kokous", + "Miscellaneous" : "Sekalaiset", + "Non-working hours" : "Ei-työnalaiset tunnit", + "Not in office" : "Pois työpaikalta", + "Personal" : "Henkilökohtainen", + "Phone call" : "Puhelinkeskustelu", + "Sick day" : "Sairauspäivä", + "Special occasion" : "Erikoistilaisuus", + "Travel" : "Matka", + "Vacation" : "Vapaalla töistä", + "Custom Categories" : "Mukautetut luokat", + "Collaborative Tags" : "Yhteiset tunnisteet", + "Standard Categories" : "Tavalliset luokat", "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", + "Event" : "Tapahtuma", + "Create new event" : "Luo uusi tapahtuma", "Today" : "Tänään", "Day" : "Päivä", "Week" : "Viikko", "Month" : "Kuukausi", + "Year" : "Vuosi", "List" : "Lista", - "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", - "Download" : "Lataa", - "Unshare from me" : "Lopeta jako minulle", + "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", + "Shared with you by" : "Jaettu sinulle käyttäjältä", + "Edit and share calendar" : "Muokkaa/jaa kalenteri", + "Edit calendar" : "Muokkaa kalenteria", + "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.", "_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"], + "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", + "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://)", + "Copy subscription link" : "Kopioi tilauslinkki", + "Copying link …" : "Kopioidaan linkki …", + "Copied link" : "Linkki kopioitu", + "Could not copy link" : "Linkkiä ei voitu kopioida", + "Export" : "Vie", + "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.", + "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", + "Empty trash bin" : "Tyhjennä roskakori", + "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 restore calendar or event" : "Kalenteria tai tapahtumaa ei voitu palauttaa", + "Do you really want to empty the trash bin?" : "Haluatko varmasti tyhjentää roskakorin?", + "_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ää.", + "Internal link" : "Sisäinen linkki", + "Copy internal link" : "Kopioi sisäinen linkki", "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", @@ -63,32 +137,30 @@ "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ä", "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", - "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://)", - "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ä", + "Calendar name …" : "Kalenterin nimi…", + "Share calendar" : "Jaa kalenteri", + "Unshare from me" : "Lopeta jako minulle", + "Save" : "Tallenna", + "Failed to save calendar name and color" : "Kalenterin nimen ja värin tallentaminen epäonnistui", "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"], - "{filename} is an unsupported file-type" : "{filename} ei ole tuettua tiedostotyyppiä", + "Default attachments location" : "Liitteiden oletussijainti", + "Select the default location for attachments" : "Valitse oletussijainti liitteille", + "Invalid location selected" : "Virheellinen sijainti valittu", + "Attachments folder successfully saved." : "Liitteiden kansio tallennettu.", "{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."], + "_Successfully imported %n event_::_Successfully imported %n events_" : ["Tuotiin onnistuneesti %n tapahtuma","Tuotiin onnistuneesti %n tapahtumaa"], "Automatic" : "Automaattinen", "Automatic ({detected})" : "Automaattinen ({detected})", "New setting was not saved successfully." : "Uutta asetusta ei tallennettu onnistuneesti.", @@ -97,25 +169,86 @@ "Navigation" : "Navigointi", "Previous period" : "Edellinen jakso", "Next period" : "Seuraava jakso", - "Views" : "Näyttökertaa", + "Views" : "Näkymät", "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", - "Show shortcuts" : "Näytä pikakuvakkeet", + "Show shortcuts" : "Näytä pikanäppäimet", + "Editor" : "Muokkain", + "Close editor" : "Sulje muokkain", + "Save edited event" : "Tallenna muokattu tapahtuma", + "Delete edited event" : "Poista muokattu tapahtuma", + "Duplicate event" : "Tee kaksoiskappale tapahtumasta", "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 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", - "Settings & import" : "Asetukset ja tuonti", + "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"], + "_{duration} day_::_{duration} days_" : ["{duration} päivä","{duration} päivää"], + "_{duration} week_::_{duration} weeks_" : ["{duration} viikko","{duration} viikkoa"], + "_{duration} month_::_{duration} months_" : ["{duration} kuukausi","{duration} kuukautta"], + "_{duration} year_::_{duration} years_" : ["{duration} vuosi","{duration} vuotta"], + "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 name" : "Tapaamisen nimi", + "Location" : "Sijainti", + "Create a Talk room" : "Luo Talk-huone", + "Description" : "Kuvaus", + "Visibility" : "Näkyvyys", + "Duration" : "Kesto", + "Increments" : "Aikaväli", + "Additional calendars to check for conflicts" : "Lisäkalenterit, jotka tarkistetaan ristiriitojen varalta", + "Pick time ranges where appointments are allowed" : "Valitse aikavälit joihin sallitaan tapaamisia", + "to" : "päättyen", + "Delete slot" : "Poista aikarako", + "No times set" : "Ei asetettuja aikoja", + "Add" : "Lisää", + "Monday" : "Maanantai", + "Tuesday" : "Tiistai", + "Wednesday" : "Keskiviikko", + "Thursday" : "Torstai", + "Friday" : "Perjantai", + "Saturday" : "Lauantai", + "Sunday" : "Sunnuntai", + "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", + "Planning restrictions" : "Suunnittelurajoitukset", + "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", + "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", "before at" : "ennen", "Notification" : "Ilmoitus", "Email" : "Sähköposti", @@ -126,79 +259,121 @@ "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"], - "No reminders yet" : "Ei vielä muistutuksia", + "No attachments" : "Ei liitteitä", + "Add from Files" : "Lisää tiedostosovelluksesta", + "Upload from device" : "Lähetä laitteelta", + "Delete file" : "Poista tiedosto", + "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!", + "_{count} attachment_::_{count} attachments_" : ["{count} liite","{count} liitettä"], + "Invitation accepted" : "Kutsu hyväksytty", + "Available" : "Saatavilla", + "Suggested" : "Ehdotettu", + "Participation marked as tentative" : "Osallistuminen merkitty alustavaksi", + "Accepted {organizerName}'s invitation" : "Hyväksytty järjestäjän {organizerName} kutsu", + "Not available" : "Ei saatavilla", + "Invitation declined" : "Kieltäydytty kutsusta", + "Declined {organizerName}'s invitation" : "Kieltäytyi järjestäjän {organizerName} kutsusta", + "Invitation is delegated" : "Kutsu on delegoitu", + "Checking availability" : "Tarkistetaan saatavuutta", + "Invitation sent" : "Kutsu lähetetty", + "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", + "{organizer} (organizer)" : "{organizer} (järjestäjä)", + "Free" : "Vapaa", "Busy (tentative)" : "Varattu (alustava)", "Busy" : "Varattu", "Out of office" : "Ulkona toimistolta", "Unknown" : "Tuntematon", - "{name} accepted your invitation." : "{name} hyväksyi kutsusi.", - "{name} accepted {organizerName}'s invitation." : "{name} hyväksyi järjestäjän {organizerName} kutsun.", - "{name} declined your invitation." : "{name} kieltäytyi kutsustasi.", - "{name} declined {organizerName}'s invitation." : "{name} hylkäsi kutsun kutsujalta {organizerName}.", - "{name} has delegated their invitation." : "{name} on lähettänyt kutsun eteenpäin.", - "{name} marked their participation as tentative." : "{name} merkitse osallistumisensa alustavaksi.", - "{name} did not respond to your invitation yet." : "{name} ei ole vielä vastannut kutsuusi.", - "{name} did not respond to {organizerName}'s invitation yet." : "{name} ei ole vielä vastannut järjestäjän {organizerName} kutsuun.", + "Accept" : "Hyväksy", + "Decline" : "Kieltäydy", + "Tentative" : "Alustava", + "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", + "No attendees yet" : "Ei vielä osallistujia", + "You don't own this calendar, so you cannot add attendees to this event" : "Et omista tätä kalenteria, joten et voi lisätä osallistujia tähän tapahtumaan", "Successfully appended link to talk room to description." : "Linkki Talk-huoneeseen lisättiin onnistuneesti kuvaukseen.", "Error creating Talk room" : "Virhe luotaessa Talk-huonetta", - "Send e-mail" : "Lähetä sähköpostia", + "Send email" : "Lähetä sähköposti", "Chairperson" : "Puheenjohtaja", "Required participant" : "Vaadittu osallistuja", "Optional participant" : "Valinnainen osallistuja", "Non-participant" : "Osallistumaton", "Remove attendee" : "Poista osallistuja", - "Search for e-mails, users, contacts, resources or rooms" : "Hae sähköpostiosoitteita, käyttäjiä, yhteystietoja, resursseja tai huoneita", + "Search for emails, users or contacts" : "Etsi sähköpostiosoitteita, käyttäjiä tai yhteystietoja", "No match found" : "Ei tuloksia", - "No attendees yet" : "Ei vielä osallistujia", "(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ä", - "Can not modify all-day setting for events that are part of a recurrence-set." : "Toistuvien tapahtumien koko päivä-asetusta ei voida muokata yksittäisistä toistokerroista.", + "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}", + "Repeat" : "Toista", "End repeat" : "Lopeta toisto", "Select to end repeat" : "Valitse lopettaaksesi toiston", "never" : "ei koskaan", "on date" : "päivänä", "after" : "jälkeen", "_time_::_times_" : ["kerran","kertaa"], - "This event is the recurrence-exception of a recurrence-set. You can not add a recurrence-rule to it." : "Koska tämä tapahtuma poikkeaa tapahtumasarjan toistuvuudesta, et voi muokata lisätä tai muokata toistuvuutta.", + "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." : "Muutoket toistuvuusasetukseen vaikuttaa vain tähän ja tuleviin tapahtumakertoihin.", - "Repeat" : "Toista", + "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", - "Monday" : "Maanantai", + "On the" : "Ajankohtana", + "_month_::_months_" : ["kuukausi","kuukautta"], + "_year_::_years_" : ["vuosi","vuotta"], "weekday" : "viikonpäivä", "weekend day" : "viikonloppupäivä", - "Summary" : "Yhteenveto", + "No recurrence" : "Ei toistumista", "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ä", + "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", + "Room type" : "Huoneen tyyppi", + "Any" : "Mikä tahansa", + "Minimum seating capacity" : "Istumapaikkoja vähintään", "More" : "Lisää", - "Save" : "Tallenna", - "Update" : "Päivitä", "Update this occurrence" : "Päivitä tämä esiintymä", "Update this and all future" : "Päivitä tämä ja kaikki tulevat", "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 timezone:" : "Valitse aikavyöhyke:", + "Please select a time zone:" : "Valitse aikavyöhyke:", "Pick a time" : "Valitse aika", "Pick a date" : "Valitse päivä", "from {formattedDate}" : "alkaen {formattedDate}", @@ -210,40 +385,50 @@ "{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", - "Type to search timezone" : "Kirjoita etsiäksesi aikavyöhykettä", - "Personal" : "Henkilökohtainen", - "The automatic timezone detection determined your timezone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your timezone manually in the calendar settings." : "Automaattinen aikavyöhykkeen tunnistaminen tunnisti aikavyöhyykeeksesi UTC:n. Tämä johtuu todennäköisesti selaimesi tietoturva-asetuksista. Aseta aikavyöhyke manuaalisesti kalenterin asetuksissa.", - "Your configured timezone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your timezone in the settings and report this issue." : "Asettamasi aikavyöhykettä ({timezoneId}) ei löytynyt. Käytetään UTC:tä.\nVaihda aikavyöhykeasetus ja raportoi ongelmasta.", - "No more events today" : "Ei enempää tapahtumia tänään", - "No upcoming events" : "Ei tulevia tapahtumia", + "Type to search time zone" : "Kirjoita etsiäksesi aikavyöhykettä", + "Global" : "Julkinen", + "Public holiday calendars" : "Juhlapäiväkalenterit", + "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", + "Holidays in {region}" : "Juhlapäivä alueella {region}", + "An error occurred, unable to create the public holiday calendar." : "Tapahtui virhe, juhlapäiväkalenteria ei voitu luoda.", + "Select 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", + "Appointment Details:" : "Tapaamisen yksityiskohdat:", + "Time:" : "Aika:", + "Booked for:" : "Varattu:", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "Kiitos. varauksesi {startDate} - {endDate} on vahvistettu.", + "Book another appointment:" : "Varaa toinen tapaaminen:", + "See all available slots" : "Näytä kaikki saatavilla olevat aikaraot", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "Aikarako tapaamiselle, {startDate} - {endDate}, ei ole enää saatavilla.", + "Please book a different slot:" : "Varaa muu aikarako:", + "Book an appointment with {name}" : "Varaa tapaaminen käyttäjän {name} kanssa", + "No public appointments found for {name}" : "Käyttäjän {name} julkisia tapaamisia ei löydy", + "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.", "Create a new event" : "Luo uusi tapahtuma", "[Today]" : "[Tänään]", "[Tomorrow]" : "[Huomenna]", "[Yesterday]" : "[Eilen]", + "[Last] dddd" : "[Viimeinen] dddd", "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", + "Managing shared access" : "Jaetun pääsyn hallinta", + "Deny access" : "Estä pääsy", + "Invite" : "Kutsu", "Attendees" : "Osallistujat", - "Reminders" : "Muistutukset", + "Resources" : "Resurssit", + "_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"], "Close" : "Sulje", "Show more details" : "Näytä lisää tietoja", "Subscribe to {name}" : "Tilaa {name}", - "Download {name}" : "Lataa {name}", - "Anniversary" : "Vuosipäivä", - "Appointment" : "Tapaaminen", - "Business" : "Business", - "Education" : "Koulutus", - "Holiday" : "Loma", - "Meeting" : "Tapaaminen", - "Miscellaneous" : "Sekalaiset", - "Non-working hours" : "Ei-työnalaiset tunnit", - "Not in office" : "Pois työpaikalta", - "Phone call" : "Puhelinkeskustelu", - "Sick day" : "Sairauspäivä", - "Special occasion" : "Erikoistilaisuus", - "Travel" : "Matka", - "Vacation" : "Loma", + "Export {name}" : "Vie {name}", "Midnight on the day the event starts" : "Keskiyöllä tapahtumapäivänä", "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n päivä ennen tapahtumaa klo {formattedHourMinute}","%n päivää ennen tapahtumaa klo {formattedHourMinute}"], "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n viikko ennen tapahtumaa klo {formattedHourMinute}","%n viikkoa ennen tapahtumaa klo {formattedHourMinute}"], @@ -268,80 +453,109 @@ "_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}"], + "on the {ordinalNumber} {byDaySet}" : "{ordinalNumber} {byDaySet}", "in {monthNames}" : "kuukausina {monthNames}", + "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", "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" : "ensi vuonna", - "today" : "tänään", - "list" : "Lista", "W" : "Vko", - "all-day" : "koko päivä", "%n more" : "%n lisää", "No events to display" : "Ei tapahtumia näytettäväksi", "_+%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", "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", + "Lecture hall" : "Luentosali", + "Seminar room" : "Seminaarihuone", + "Other" : "Muu", "When shared show" : "Jaettaessa näytä", "When shared show full event" : "Jaettaessa näytä koko tapahtuma", "When shared show only busy" : "Jaettaessa näytä vain varattuna oleminen", "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.", - "Location" : "Sijainti", "Add a location" : "Lisää sijainti", - "Description" : "Kuvaus", "Add a description" : "Lisää kuvaus", "Status" : "Tila", "Confirmed" : "Vahvistettu", - "Tentative" : "Alustava", "Canceled" : "Peruttu", + "Confirmation about the overall status of the event." : "Vahvistus tapahtuman yleiskuvasta.", "Show as" : "Näytä muodossa", "Take this event into account when calculating free-busy information." : "Huomioi tämä tapahtuma laskettaessa vapaita ja varattuja ajankohtia.", - "Free" : "Vapaa", "Categories" : "Luokat", "Categories help you to structure and organize your events." : "Luokat auttavat sinua asettamaan tapahtumia rakenteellisiksi ja hallitsemaan niitä.", "Search or add categories" : "Etsi tai lisää luokkia", "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.", + "Error while sharing file" : "Virhe tiedostoa jakaessa", + "Error while sharing file with user" : "Virhe tiedostoa jakaessa käyttäjän kanssa", + "Attachment {fileName} already exists!" : "Liite {fileName} on jo olemassa!", + "An error occurred during getting file information" : "Tiedostojen tietoja noutaessa tapahtui virhe", "Chat room for event" : "Tapahtuman keskusteluhuone", + "An error occurred, unable to delete the calendar." : "Tapahtui virhe, kalenteria ei voitu poistaa.", "Imported {filename}" : "Tuotiin {filename}", + "This is an event reminder." : "Tämä on tapahtuman muistutus.", "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", - "Present" : "Lahja", + "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", - "Review" : "Esikatsele", "Office" : "Toimisto", - "Party" : "Juhlat", - "Celebration" : "Juhlintaa", + "Contributor week" : "Tukijaviikko", "Mail" : "Sähköposti", "Soccer" : "Jalkapallo", "Football" : "Jalkapallo", "Gaming" : "Pelailua", - "Play" : "Esitys", - "Game" : "Peli", "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", @@ -352,10 +566,12 @@ "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", @@ -366,7 +582,10 @@ "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", @@ -375,28 +594,37 @@ "Go for a run" : "Mene lenkille", "Marathon" : "Maraton", "Video-conference" : "Videokonfrenssi", + "Conference-call" : "Neuvottelupuhelu", "Video-call" : "Videopuhelu", "Video-chat" : "Videokeskustelu", - "Video-meeting" : "Videotapaaminen", + "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", - "Global" : "Julkinen" + "Appointment not found" : "Tapaamista ei löydy", + "User not found" : "Käyttäjää ei löydy" },"pluralForm" :"nplurals=2; plural=(n != 1);" } \ No newline at end of file diff --git a/l10n/fr.js b/l10n/fr.js index 4e8f745ab7..ec33e28212 100644 --- a/l10n/fr.js +++ b/l10n/fr.js @@ -1,59 +1,137 @@ 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 courriel fournie n'est pas valide", + "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 du mail. Veuillez contacter votre administrateur.", - "Successfully sent email to " : "Mail envoyé avec succè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'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", + "More events" : "Plus d'événements", + "No more events today" : "Aucun autre événement aujourd'hui", + "No upcoming events" : "Aucun événement à venir", + "%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\" 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", + "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 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 :", + "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.", + "Anniversary" : "Anniversaire", + "Appointment" : "Rendez-vous", + "Business" : "Entreprise", + "Education" : "Éducation", + "Holiday" : "Vacances", + "Meeting" : "Réunion", + "Miscellaneous" : "Divers", + "Non-working hours" : "Heures non travaillées", + "Not in office" : "Absent du bureau", + "Personal" : "Personnel", + "Phone call" : "Appel téléphonique", + "Sick day" : "Maladie", + "Special occasion" : "Occasion spéciale", + "Travel" : "Voyage", + "Vacation" : "Congé", + "Custom Categories" : "Catégories personnalisées", + "Collaborative Tags" : "Étiquettes collaboratives", + "Standard Categories" : "Catégories standard", "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).", + "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).", "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", + "Event" : "Événement", + "Create new event" : "Créer un nouvel événement", "Today" : "Auj.", "Day" : "Jour", "Week" : "Semaine", "Month" : "Mois", + "Year" : "Année", "List" : "Liste", - "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é", - "Download" : "Télécharger", - "Unshare from me" : "Cesser le partage de ma part", + "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", + "Shared with you by" : "Partagé avec vous par", + "Edit and share calendar" : "Modifier et partager l'agenda", + "Edit calendar" : "Éditer l'agenda", + "Disable calendar \"{calendar}\"" : "Désactiver l'agenda \"{calendar}\"", + "Disable untitled calendar" : "Désactiver agenda sans titre", + "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.", + "_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"], + "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", + "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://)", + "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", "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.", - "_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"], - "_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"], + "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", + "Empty trash bin" : "Vider la corbeille", + "Untitled item" : "É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 ?", + "_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 du calendrier.", + "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", "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 courriel", + "Send link to calendar via email" : "Envoyer le lien vers l'agenda par e-mail", "Enter one address" : "Saisissez une adresse", - "Sending email …" : "Envoi du courriel …", - "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", + "Sending email …" : "Envoi de l'e-mail...", "Copy embedding code" : "Copier le code d'intégration", "Copying code …" : "Copie du code …", "Copied code" : "Code copié", @@ -61,36 +139,36 @@ OC.L10N.register( "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 le mail.", + "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", "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 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.", - "+ New calendar" : "+ Nouvel agenda", - "New calendar" : "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://)", - "Could not update calendar order." : "Impossible de mettre à jour l'ordre du calendrier.", + "Share with users or groups" : "Partager avec des utilisateurs ou des groupes", + "No users or groups" : "Aucun utilisateur ni groupe", + "Calendar name …" : "Nom de l'agenda ...", + "Share calendar" : "Partager l'agenda", + "Unshare from me" : "Quitter ce partage", + "Save" : "Enregistrer", + "Failed to save calendar name and color" : "Échec d'enregistrement du nom et de la couleur de l'agenda", "Import calendars" : "Importer des calendriers", "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"], - "{filename} is an unsupported file-type" : "Le fichier {filename} est dans un format non pris en charge", + "_Import calendar_::_Import calendars_" : ["Importer un agenda","Importer des agendas","Importer des agendas"], + "Default attachments location" : "Emplacement par défaut des pièces jointes", + "Select the default location for attachments" : "Sélectionner l'emplacement par défaut pour les pièces jointes", + "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.", "{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 {accepted} sur {total}.", - "_Successfully imported %n event_::_Successfully imported %n events._" : ["Import avec succès de {imported} événement","Import avec succès de {imported} événements"], + "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"], "Automatic" : "Automatique", "Automatic ({detected})" : "Automatique ({detected})", "New setting was not saved successfully." : "Le nouveau paramètre n'a pas pu être enregistré.", @@ -100,112 +178,212 @@ OC.L10N.register( "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", + "Month view" : "Affichage mois", + "Year view" : "Affichage année", + "List view" : "Affichage liste", "Actions" : "Actions", "Create event" : "Créer un événement", "Show shortcuts" : "Afficher les raccourcis", + "Editor" : "Éditeur", + "Close editor" : "Fermer l'éditeur", + "Save edited event" : "Sauvegarder l'événement édité", + "Delete edited event" : "Supprimer l'événement édité", + "Duplicate event" : "Dupliquer l'événement", "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 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és personnelles", "Show keyboard shortcuts" : "Afficher les raccourcis clavier", - "Settings & import" : "Paramètres & Importation", + "Calendar settings" : "Paramètres de l'agenda", + "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", + "_{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"], + "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", + "Appointment name" : "Nom du rendez-vous", + "Location" : "Lieu", + "Create a Talk room" : "Créer une salle de discussion", + "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" : "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", + "Add" : "Ajouter", + "Monday" : "Lundi", + "Tuesday" : "Mardi", + "Wednesday" : "Mercredi", + "Thursday" : "Jeudi", + "Friday" : "Vendredi", + "Saturday" : "Samedi", + "Sunday" : "Dimanche", + "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", + "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", + "Update" : "Mettre à jour", + "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 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", "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" : "À jour", - "Edit time" : "Modifier l'heure", - "Save time" : "Enregistrer l'heure", + "On date" : "À une date précise", + "Edit time" : "Modifier le rappel", + "Save time" : "Enregistrer le rappel", "Remove reminder" : "Supprimer le rappel", "on" : "le", - "at" : "à", + "at" : "le", "+ Add reminder" : "+ Ajouter un rappel", - "_second_::_seconds_" : ["seconde","secondes"], - "_minute_::_minutes_" : ["minute","minutes"], - "_hour_::_hours_" : ["heure","heures"], - "_day_::_days_" : ["jour","jours"], - "_week_::_weeks_" : ["semaine","semaines"], - "No reminders yet" : "Aucun rappel pour l'instant", - "Availability of attendees, resources and rooms" : "Disponibilité des participants, ressources et salles.", + "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"], + "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", + "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à !", + "_{count} attachment_::_{count} attachments_" : ["{count} pièce jointe","{count} pièces jointes","{count} pièces jointes"], + "Invitation accepted" : "Invitation acceptée", + "Available" : "Disponible", + "Suggested" : "Suggéré", + "Participation marked as tentative" : "Participation marquée comme provisoire", + "Accepted {organizerName}'s invitation" : "Invitation de {organizerName} acceptée", + "Not available" : "Non disponible", + "Invitation declined" : "Invitation déclinée", + "Declined {organizerName}'s invitation" : "Invitation de {organizerName} déclinée", + "Invitation is delegated" : "L'invitation est déléguée", + "Checking availability" : "Vérification de la disponiblité", + "Invitation sent" : "Invitation envoyée", + "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és des participants, ressources et salles.", + "{organizer} (organizer)" : "{organizer} (organizer)", + "Free" : "Libre", "Busy (tentative)" : "Occupé (provisoire)", "Busy" : "Occupé", "Out of office" : "Absent du bureau", "Unknown" : "Inconnu", - "{name} accepted your invitation." : "{name} a accepté votre invitation.", - "{name} accepted {organizerName}'s invitation." : "{name} a accepté l'invitation de '{organizerName}'.", - "{name} declined your invitation." : "{name} a refusé votre invitation.", - "{name} declined {organizerName}'s invitation." : "{name} a refusé l'invitation de '{organizerName}'.", - "{name} has delegated their invitation." : "{name} a délégué votre invitation.", - "{name} marked their participation as tentative." : "{name} ont accepté l'invitation comme provisoire.", - "{name} did not respond to your invitation yet." : "{name} n'a pas encore répondu à votre invitation.", - "{name} did not respond to {organizerName}'s invitation yet." : "{name} n'a pas encore répondu à l'invitation de '{organizerName}'.", + "Accept" : "Accepter", + "Decline" : "Décliner", + "Tentative" : "Provisoire", + "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é 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", + "No attendees yet" : "Aucun participant pour l'instant", + "You don't own this calendar, so you cannot add attendees to this event" : "Vous n'êtes pas propriétaire de cet agenda, donc vous ne pouvez pas ajouter des invités à cet événement", + "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 e-mail" : "Envoyer par courriel", + "Send email" : "Envoyer un e-mail", "Chairperson" : "Président", "Required participant" : "Participant obligatoire", "Optional participant" : "Participant facultatif", "Non-participant" : "Ne participe pas", "Remove attendee" : "Supprimer le participant", - "Search for e-mails, users, contacts, resources or rooms" : "Recherche de courriels, d’utilisateurs, de contacts, de ressources ou de salles", + "Search for emails, users or contacts" : "Rechercher des e-mails, utilisateurs ou contacts", "No match found" : "Aucun résultat trouvé", - "No attendees yet" : "Aucun participant pour l'instant", "(organizer)" : "(organisateur)", "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", "Event title" : "Titre de l'événement", - "All day" : "Toute la journée", - "Can not modify all-day setting for events that are part of a recurrence-set." : "Il n'est pas possible de modifier le réglage \"tous les jours\" pour les événements qui font partie d’un événement avec récurrence.", + "All day" : "Journée entière", + "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 {startDate}" : "du {startDate}", "from {startDate} at {startTime}" : "du {startDate} à {startTime}", "to {endDate}" : "au {endDate}", "to {endDate} at {endTime}" : "au {endDate} à {endTime}", + "Repeat" : "Répéter", "End repeat" : "Arrêter la répétition", "Select to end repeat" : "Sélectionner pour terminer la répétition", "never" : "jamais", - "on date" : "à jour", + "on date" : "à une date précise", "after" : "après ", - "_time_::_times_" : ["fois","fois"], - "This event is the recurrence-exception of a recurrence-set. You can not add a recurrence-rule to it." : "Cet événement est la récurrence-exception d’un ensemble de récurrence. Vous ne pouvez pas y ajouter une règle de récurrence.", + "_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é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-dernière", + "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" : "Répéter", "Repeat every" : "Répéter chaque", "By day of the month" : "Par jour du mois", "On the" : "Le", - "_month_::_months_" : ["mois","mois"], - "_year_::_years_" : ["année","années"], - "Monday" : "Lundi", + "_month_::_months_" : ["mois","mois","mois"], + "_year_::_years_" : ["année","années","années"], "weekday" : "jour de la semaine", "weekend day" : "jour de weekend", - "Summary" : "Résumé", + "No recurrence" : "Pas de récurrence ", "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", + "Add resource" : "Ajouter une ressource", + "Has a projector" : "Dispose d'un projecteur", + "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", + "Search for resources or rooms" : "Rechercher une ressource ou un lieu", + "available" : "disponible", + "unavailable" : "indisponible", + "Room type" : "Type de salle", + "Any" : "Toutes", + "Minimum seating capacity" : "Nombre minimum de places assises", "More" : "Plus", - "Save" : "Enregistrer", - "Update" : "Mettre à jour", "Update this occurrence" : "Mettre à jour cette occurrence", "Update this and all future" : "Mettre à jour cette occurrence et toutes les prochaines", "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 timezone:" : "Veuillez sélectionner un fuseau horaire :", + "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}", @@ -217,144 +395,181 @@ 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", - "Type to search timezone" : "Saisissez du texte pour rechercher le fuseau horaire", - "Personal" : "Personnel", - "The automatic timezone detection determined your timezone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your timezone manually in the calendar settings." : "La détection automatique du fuseau horaire a déterminé que votre fuseau horaire était UTC.\nC’est probablement le résultat de mesures de sécurité de votre navigateur Web.\nVeuillez définir votre fuseau horaire manuellement dans les paramètres du calendrier.", - "Your configured timezone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your timezone in the settings and report this issue." : "Votre fuseau horaire ({timezoneId}) configuré est introuvable. Revenir à 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", + "Type to search time zone" : "Commencer la saisie pour rechercher le fuseau horaire", + "Global" : "Général", + "Public holiday calendars" : "Calendriers des jours fériés", + "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}", + "By {authors}" : "Par {authors}", + "Subscribed" : "Abonné", + "Subscribe" : "S'abonner", + "Holidays in {region}" : "Jours fériés en/au {region}", + "An error occurred, unable to create the public holiday calendar." : "Une erreur s'est produite, impossible de créer le calendrier des jours fériés.", + "Select date" : "Sélectionner la 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é", + "Appointment Details:" : "Détails du rendez-vous :", + "Time:" : "Horaire :", + "Booked for:" : "Réservé pour :", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "Merci. Votre réservation de {startDate} à {endDate} a été confirmée.", + "Book another appointment:" : "Réserver un autre rendez-vous :", + "See all available slots" : "Voir tous les créneaux disponibles", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "Le créneau pour votre rendez-vous du {startDate} au {endDate} n'est plus disponible.", + "Please book a different slot:" : "Merci de réserver un autre créneau :", + "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}", + "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.", + "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.", "Create a new event" : "Créer un nouvel événement", "[Today]" : "[Aujourd'hui]", "[Tomorrow]" : "[Demain]", "[Yesterday]" : "[Hier]", "[Last] dddd" : "dddd [dernier]", "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", + "Managing shared access" : "Gestion des accès partagés", + "Deny access" : "Refuser l'accès", + "Invite" : "Inviter", "Attendees" : "Participants", - "Reminders" : "Rappels", + "Resources" : "Ressources", + "_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é"], "Close" : "Fermer", "Show more details" : "Afficher plus de détails", "Subscribe to {name}" : "S'abonner à {name}", - "Download {name}" : "Télécharger {name}", - "Anniversary" : "Anniversaire", - "Appointment" : "Rendez-vous", - "Business" : "Entreprise", - "Education" : "Éducation", - "Holiday" : "Vacances", - "Meeting" : "Réunion", - "Miscellaneous" : "Divers", - "Non-working hours" : "Heures non travaillées", - "Not in office" : "Absent du bureau", - "Phone call" : "Appel téléphonique", - "Sick day" : "Maladie", - "Special occasion" : "Occasion spéciale", - "Travel" : "Voyage", - "Vacation" : "Libre", + "Export {name}" : "Exporter {name}", "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 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 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}"], "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" : "a la fin de l'évènement", + "at the event's end" : "à la fin de l'évènement", "{time} before the event starts" : "{time} avant le début de l'évènement", "{time} before the event ends" : "{time} avant la fin de l'évènement", "{time} after the event starts" : "{time} après le début de l'évènement", "{time} after the event ends" : "{time} après la fin de l'évènement", - "on {time}" : "à {time}", - "on {time} ({timezoneId})" : "à {time} ({timezoneId})", + "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"], - "_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}"], + "_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}"], "on the {ordinalNumber} {byDaySet}" : "le {ordinalNumber} {byDaySet}", "in {monthNames}" : "en {monthNames}", "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 time_::_%n times_" : ["%n fois","%n fois","%n fois"], "Untitled event" : "Événement sans titre", "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édent", - "next" : "suivant", - "prev year" : "année précédente", - "next year" : "année suivante", - "today" : "aujourd'hui", - "list" : "liste", "W" : "S", - "all-day" : "Toute la journée", "%n more" : "%n de plus", "No events to display" : "Aucun événement à afficher", - "_+%n more_::_+%n more_" : ["+%n de plus","+%n de plus"], + "_+%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", - "It might have been deleted, or there was a typo in a link" : "Il a peut-être été supprimé, ou il y a une faute 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 faute dans le lien", + "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", + "Lecture hall" : "Salle de lecture", + "Seminar room" : "Salle de séminaire", + "Other" : "Autre", "When shared show" : "Si partagé, afficher", "When shared show full event" : "Si partagé, afficher l'évènement entier", "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.", - "Location" : "Emplacement", - "Add a location" : "Ajouter un emplacement", - "Description" : "Description", + "Add a location" : "Ajouter un lieu", "Add a description" : "Ajouter une description", "Status" : "Statut", "Confirmed" : "Confirmé", - "Tentative" : "Provisoire", "Canceled" : "Annulé", "Confirmation about the overall status of the event." : "Confirmation du statut de l'évènement.", "Show as" : "Afficher comme", "Take this event into account when calculating free-busy information." : "Prendre en compte cet évènement dans le calcul du temps de disponibilité.", - "Free" : "Libre", "Categories" : "Catégories", "Categories help you to structure and organize your events." : "Les catégories vous aident à structurer vos évènements.", "Search or add categories" : "Rechercher ou ajouter des catégories", "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.", + "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", + "Attachment {fileName} already exists!" : "La pièce jointe {fileName} existe déjà !", + "An error occurred during getting file information" : "Une erreur est survenue lors de la récupération des informations du fichier", "Chat room for event" : "Salle de discussion de cet événement", + "An error occurred, unable to delete the calendar." : "Une erreur est survenue, impossible de supprimer l'agenda.", "Imported {filename}" : "{filename} importé", + "This is an event reminder." : "Ceci est un rappel d'événement.", "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", - "Present" : "Cadeau", + "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", - "Review" : "Revoir", "Office" : "Bureau", "Contributor week" : "Semaine des contributeurs", - "Party" : "Fête", - "Celebration" : "Fête", "Mail" : "Mail", - "Soccer" : "Foot", + "Soccer" : "Football", "Football" : "Football", - "Gaming" : "Jouer", - "Play" : "Jouer", - "Game" : "Jeu", + "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", @@ -365,21 +580,26 @@ OC.L10N.register( "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" : "Gymnastique", + "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", @@ -398,20 +618,27 @@ OC.L10N.register( "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", - "Global" : "Général" + "Appointment not found" : "Rendez-vous non trouvé", + "User not found" : "Utilisateur non trouvé" }, -"nplurals=2; plural=(n > 1);"); +"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); diff --git a/l10n/fr.json b/l10n/fr.json index b1516dff23..6483681949 100644 --- a/l10n/fr.json +++ b/l10n/fr.json @@ -1,57 +1,135 @@ { "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 courriel fournie n'est pas valide", + "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 du mail. Veuillez contacter votre administrateur.", - "Successfully sent email to " : "Mail envoyé avec succè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'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", + "More events" : "Plus d'événements", + "No more events today" : "Aucun autre événement aujourd'hui", + "No upcoming events" : "Aucun événement à venir", + "%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\" 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", + "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 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 :", + "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.", + "Anniversary" : "Anniversaire", + "Appointment" : "Rendez-vous", + "Business" : "Entreprise", + "Education" : "Éducation", + "Holiday" : "Vacances", + "Meeting" : "Réunion", + "Miscellaneous" : "Divers", + "Non-working hours" : "Heures non travaillées", + "Not in office" : "Absent du bureau", + "Personal" : "Personnel", + "Phone call" : "Appel téléphonique", + "Sick day" : "Maladie", + "Special occasion" : "Occasion spéciale", + "Travel" : "Voyage", + "Vacation" : "Congé", + "Custom Categories" : "Catégories personnalisées", + "Collaborative Tags" : "Étiquettes collaboratives", + "Standard Categories" : "Catégories standard", "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).", + "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).", "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", + "Event" : "Événement", + "Create new event" : "Créer un nouvel événement", "Today" : "Auj.", "Day" : "Jour", "Week" : "Semaine", "Month" : "Mois", + "Year" : "Année", "List" : "Liste", - "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é", - "Download" : "Télécharger", - "Unshare from me" : "Cesser le partage de ma part", + "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", + "Shared with you by" : "Partagé avec vous par", + "Edit and share calendar" : "Modifier et partager l'agenda", + "Edit calendar" : "Éditer l'agenda", + "Disable calendar \"{calendar}\"" : "Désactiver l'agenda \"{calendar}\"", + "Disable untitled calendar" : "Désactiver agenda sans titre", + "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.", + "_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"], + "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", + "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://)", + "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", "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.", - "_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"], - "_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"], + "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", + "Empty trash bin" : "Vider la corbeille", + "Untitled item" : "É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 ?", + "_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 du calendrier.", + "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", "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 courriel", + "Send link to calendar via email" : "Envoyer le lien vers l'agenda par e-mail", "Enter one address" : "Saisissez une adresse", - "Sending email …" : "Envoi du courriel …", - "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", + "Sending email …" : "Envoi de l'e-mail...", "Copy embedding code" : "Copier le code d'intégration", "Copying code …" : "Copie du code …", "Copied code" : "Code copié", @@ -59,36 +137,36 @@ "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 le mail.", + "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", "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 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.", - "+ New calendar" : "+ Nouvel agenda", - "New calendar" : "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://)", - "Could not update calendar order." : "Impossible de mettre à jour l'ordre du calendrier.", + "Share with users or groups" : "Partager avec des utilisateurs ou des groupes", + "No users or groups" : "Aucun utilisateur ni groupe", + "Calendar name …" : "Nom de l'agenda ...", + "Share calendar" : "Partager l'agenda", + "Unshare from me" : "Quitter ce partage", + "Save" : "Enregistrer", + "Failed to save calendar name and color" : "Échec d'enregistrement du nom et de la couleur de l'agenda", "Import calendars" : "Importer des calendriers", "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"], - "{filename} is an unsupported file-type" : "Le fichier {filename} est dans un format non pris en charge", + "_Import calendar_::_Import calendars_" : ["Importer un agenda","Importer des agendas","Importer des agendas"], + "Default attachments location" : "Emplacement par défaut des pièces jointes", + "Select the default location for attachments" : "Sélectionner l'emplacement par défaut pour les pièces jointes", + "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.", "{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 {accepted} sur {total}.", - "_Successfully imported %n event_::_Successfully imported %n events._" : ["Import avec succès de {imported} événement","Import avec succès de {imported} événements"], + "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"], "Automatic" : "Automatique", "Automatic ({detected})" : "Automatique ({detected})", "New setting was not saved successfully." : "Le nouveau paramètre n'a pas pu être enregistré.", @@ -98,112 +176,212 @@ "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", + "Month view" : "Affichage mois", + "Year view" : "Affichage année", + "List view" : "Affichage liste", "Actions" : "Actions", "Create event" : "Créer un événement", "Show shortcuts" : "Afficher les raccourcis", + "Editor" : "Éditeur", + "Close editor" : "Fermer l'éditeur", + "Save edited event" : "Sauvegarder l'événement édité", + "Delete edited event" : "Supprimer l'événement édité", + "Duplicate event" : "Dupliquer l'événement", "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 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és personnelles", "Show keyboard shortcuts" : "Afficher les raccourcis clavier", - "Settings & import" : "Paramètres & Importation", + "Calendar settings" : "Paramètres de l'agenda", + "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", + "_{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"], + "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", + "Appointment name" : "Nom du rendez-vous", + "Location" : "Lieu", + "Create a Talk room" : "Créer une salle de discussion", + "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" : "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", + "Add" : "Ajouter", + "Monday" : "Lundi", + "Tuesday" : "Mardi", + "Wednesday" : "Mercredi", + "Thursday" : "Jeudi", + "Friday" : "Vendredi", + "Saturday" : "Samedi", + "Sunday" : "Dimanche", + "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", + "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", + "Update" : "Mettre à jour", + "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 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", "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" : "À jour", - "Edit time" : "Modifier l'heure", - "Save time" : "Enregistrer l'heure", + "On date" : "À une date précise", + "Edit time" : "Modifier le rappel", + "Save time" : "Enregistrer le rappel", "Remove reminder" : "Supprimer le rappel", "on" : "le", - "at" : "à", + "at" : "le", "+ Add reminder" : "+ Ajouter un rappel", - "_second_::_seconds_" : ["seconde","secondes"], - "_minute_::_minutes_" : ["minute","minutes"], - "_hour_::_hours_" : ["heure","heures"], - "_day_::_days_" : ["jour","jours"], - "_week_::_weeks_" : ["semaine","semaines"], - "No reminders yet" : "Aucun rappel pour l'instant", - "Availability of attendees, resources and rooms" : "Disponibilité des participants, ressources et salles.", + "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"], + "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", + "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à !", + "_{count} attachment_::_{count} attachments_" : ["{count} pièce jointe","{count} pièces jointes","{count} pièces jointes"], + "Invitation accepted" : "Invitation acceptée", + "Available" : "Disponible", + "Suggested" : "Suggéré", + "Participation marked as tentative" : "Participation marquée comme provisoire", + "Accepted {organizerName}'s invitation" : "Invitation de {organizerName} acceptée", + "Not available" : "Non disponible", + "Invitation declined" : "Invitation déclinée", + "Declined {organizerName}'s invitation" : "Invitation de {organizerName} déclinée", + "Invitation is delegated" : "L'invitation est déléguée", + "Checking availability" : "Vérification de la disponiblité", + "Invitation sent" : "Invitation envoyée", + "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és des participants, ressources et salles.", + "{organizer} (organizer)" : "{organizer} (organizer)", + "Free" : "Libre", "Busy (tentative)" : "Occupé (provisoire)", "Busy" : "Occupé", "Out of office" : "Absent du bureau", "Unknown" : "Inconnu", - "{name} accepted your invitation." : "{name} a accepté votre invitation.", - "{name} accepted {organizerName}'s invitation." : "{name} a accepté l'invitation de '{organizerName}'.", - "{name} declined your invitation." : "{name} a refusé votre invitation.", - "{name} declined {organizerName}'s invitation." : "{name} a refusé l'invitation de '{organizerName}'.", - "{name} has delegated their invitation." : "{name} a délégué votre invitation.", - "{name} marked their participation as tentative." : "{name} ont accepté l'invitation comme provisoire.", - "{name} did not respond to your invitation yet." : "{name} n'a pas encore répondu à votre invitation.", - "{name} did not respond to {organizerName}'s invitation yet." : "{name} n'a pas encore répondu à l'invitation de '{organizerName}'.", + "Accept" : "Accepter", + "Decline" : "Décliner", + "Tentative" : "Provisoire", + "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é 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", + "No attendees yet" : "Aucun participant pour l'instant", + "You don't own this calendar, so you cannot add attendees to this event" : "Vous n'êtes pas propriétaire de cet agenda, donc vous ne pouvez pas ajouter des invités à cet événement", + "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 e-mail" : "Envoyer par courriel", + "Send email" : "Envoyer un e-mail", "Chairperson" : "Président", "Required participant" : "Participant obligatoire", "Optional participant" : "Participant facultatif", "Non-participant" : "Ne participe pas", "Remove attendee" : "Supprimer le participant", - "Search for e-mails, users, contacts, resources or rooms" : "Recherche de courriels, d’utilisateurs, de contacts, de ressources ou de salles", + "Search for emails, users or contacts" : "Rechercher des e-mails, utilisateurs ou contacts", "No match found" : "Aucun résultat trouvé", - "No attendees yet" : "Aucun participant pour l'instant", "(organizer)" : "(organisateur)", "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", "Event title" : "Titre de l'événement", - "All day" : "Toute la journée", - "Can not modify all-day setting for events that are part of a recurrence-set." : "Il n'est pas possible de modifier le réglage \"tous les jours\" pour les événements qui font partie d’un événement avec récurrence.", + "All day" : "Journée entière", + "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 {startDate}" : "du {startDate}", "from {startDate} at {startTime}" : "du {startDate} à {startTime}", "to {endDate}" : "au {endDate}", "to {endDate} at {endTime}" : "au {endDate} à {endTime}", + "Repeat" : "Répéter", "End repeat" : "Arrêter la répétition", "Select to end repeat" : "Sélectionner pour terminer la répétition", "never" : "jamais", - "on date" : "à jour", + "on date" : "à une date précise", "after" : "après ", - "_time_::_times_" : ["fois","fois"], - "This event is the recurrence-exception of a recurrence-set. You can not add a recurrence-rule to it." : "Cet événement est la récurrence-exception d’un ensemble de récurrence. Vous ne pouvez pas y ajouter une règle de récurrence.", + "_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é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-dernière", + "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" : "Répéter", "Repeat every" : "Répéter chaque", "By day of the month" : "Par jour du mois", "On the" : "Le", - "_month_::_months_" : ["mois","mois"], - "_year_::_years_" : ["année","années"], - "Monday" : "Lundi", + "_month_::_months_" : ["mois","mois","mois"], + "_year_::_years_" : ["année","années","années"], "weekday" : "jour de la semaine", "weekend day" : "jour de weekend", - "Summary" : "Résumé", + "No recurrence" : "Pas de récurrence ", "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", + "Add resource" : "Ajouter une ressource", + "Has a projector" : "Dispose d'un projecteur", + "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", + "Search for resources or rooms" : "Rechercher une ressource ou un lieu", + "available" : "disponible", + "unavailable" : "indisponible", + "Room type" : "Type de salle", + "Any" : "Toutes", + "Minimum seating capacity" : "Nombre minimum de places assises", "More" : "Plus", - "Save" : "Enregistrer", - "Update" : "Mettre à jour", "Update this occurrence" : "Mettre à jour cette occurrence", "Update this and all future" : "Mettre à jour cette occurrence et toutes les prochaines", "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 timezone:" : "Veuillez sélectionner un fuseau horaire :", + "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}", @@ -215,144 +393,181 @@ "{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", - "Type to search timezone" : "Saisissez du texte pour rechercher le fuseau horaire", - "Personal" : "Personnel", - "The automatic timezone detection determined your timezone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your timezone manually in the calendar settings." : "La détection automatique du fuseau horaire a déterminé que votre fuseau horaire était UTC.\nC’est probablement le résultat de mesures de sécurité de votre navigateur Web.\nVeuillez définir votre fuseau horaire manuellement dans les paramètres du calendrier.", - "Your configured timezone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your timezone in the settings and report this issue." : "Votre fuseau horaire ({timezoneId}) configuré est introuvable. Revenir à 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", + "Type to search time zone" : "Commencer la saisie pour rechercher le fuseau horaire", + "Global" : "Général", + "Public holiday calendars" : "Calendriers des jours fériés", + "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}", + "By {authors}" : "Par {authors}", + "Subscribed" : "Abonné", + "Subscribe" : "S'abonner", + "Holidays in {region}" : "Jours fériés en/au {region}", + "An error occurred, unable to create the public holiday calendar." : "Une erreur s'est produite, impossible de créer le calendrier des jours fériés.", + "Select date" : "Sélectionner la 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é", + "Appointment Details:" : "Détails du rendez-vous :", + "Time:" : "Horaire :", + "Booked for:" : "Réservé pour :", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "Merci. Votre réservation de {startDate} à {endDate} a été confirmée.", + "Book another appointment:" : "Réserver un autre rendez-vous :", + "See all available slots" : "Voir tous les créneaux disponibles", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "Le créneau pour votre rendez-vous du {startDate} au {endDate} n'est plus disponible.", + "Please book a different slot:" : "Merci de réserver un autre créneau :", + "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}", + "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.", + "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.", "Create a new event" : "Créer un nouvel événement", "[Today]" : "[Aujourd'hui]", "[Tomorrow]" : "[Demain]", "[Yesterday]" : "[Hier]", "[Last] dddd" : "dddd [dernier]", "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", + "Managing shared access" : "Gestion des accès partagés", + "Deny access" : "Refuser l'accès", + "Invite" : "Inviter", "Attendees" : "Participants", - "Reminders" : "Rappels", + "Resources" : "Ressources", + "_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é"], "Close" : "Fermer", "Show more details" : "Afficher plus de détails", "Subscribe to {name}" : "S'abonner à {name}", - "Download {name}" : "Télécharger {name}", - "Anniversary" : "Anniversaire", - "Appointment" : "Rendez-vous", - "Business" : "Entreprise", - "Education" : "Éducation", - "Holiday" : "Vacances", - "Meeting" : "Réunion", - "Miscellaneous" : "Divers", - "Non-working hours" : "Heures non travaillées", - "Not in office" : "Absent du bureau", - "Phone call" : "Appel téléphonique", - "Sick day" : "Maladie", - "Special occasion" : "Occasion spéciale", - "Travel" : "Voyage", - "Vacation" : "Libre", + "Export {name}" : "Exporter {name}", "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 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 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}"], "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" : "a la fin de l'évènement", + "at the event's end" : "à la fin de l'évènement", "{time} before the event starts" : "{time} avant le début de l'évènement", "{time} before the event ends" : "{time} avant la fin de l'évènement", "{time} after the event starts" : "{time} après le début de l'évènement", "{time} after the event ends" : "{time} après la fin de l'évènement", - "on {time}" : "à {time}", - "on {time} ({timezoneId})" : "à {time} ({timezoneId})", + "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"], - "_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}"], + "_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}"], "on the {ordinalNumber} {byDaySet}" : "le {ordinalNumber} {byDaySet}", "in {monthNames}" : "en {monthNames}", "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 time_::_%n times_" : ["%n fois","%n fois","%n fois"], "Untitled event" : "Événement sans titre", "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édent", - "next" : "suivant", - "prev year" : "année précédente", - "next year" : "année suivante", - "today" : "aujourd'hui", - "list" : "liste", "W" : "S", - "all-day" : "Toute la journée", "%n more" : "%n de plus", "No events to display" : "Aucun événement à afficher", - "_+%n more_::_+%n more_" : ["+%n de plus","+%n de plus"], + "_+%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", - "It might have been deleted, or there was a typo in a link" : "Il a peut-être été supprimé, ou il y a une faute 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 faute dans le lien", + "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", + "Lecture hall" : "Salle de lecture", + "Seminar room" : "Salle de séminaire", + "Other" : "Autre", "When shared show" : "Si partagé, afficher", "When shared show full event" : "Si partagé, afficher l'évènement entier", "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.", - "Location" : "Emplacement", - "Add a location" : "Ajouter un emplacement", - "Description" : "Description", + "Add a location" : "Ajouter un lieu", "Add a description" : "Ajouter une description", "Status" : "Statut", "Confirmed" : "Confirmé", - "Tentative" : "Provisoire", "Canceled" : "Annulé", "Confirmation about the overall status of the event." : "Confirmation du statut de l'évènement.", "Show as" : "Afficher comme", "Take this event into account when calculating free-busy information." : "Prendre en compte cet évènement dans le calcul du temps de disponibilité.", - "Free" : "Libre", "Categories" : "Catégories", "Categories help you to structure and organize your events." : "Les catégories vous aident à structurer vos évènements.", "Search or add categories" : "Rechercher ou ajouter des catégories", "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.", + "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", + "Attachment {fileName} already exists!" : "La pièce jointe {fileName} existe déjà !", + "An error occurred during getting file information" : "Une erreur est survenue lors de la récupération des informations du fichier", "Chat room for event" : "Salle de discussion de cet événement", + "An error occurred, unable to delete the calendar." : "Une erreur est survenue, impossible de supprimer l'agenda.", "Imported {filename}" : "{filename} importé", + "This is an event reminder." : "Ceci est un rappel d'événement.", "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", - "Present" : "Cadeau", + "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", - "Review" : "Revoir", "Office" : "Bureau", "Contributor week" : "Semaine des contributeurs", - "Party" : "Fête", - "Celebration" : "Fête", "Mail" : "Mail", - "Soccer" : "Foot", + "Soccer" : "Football", "Football" : "Football", - "Gaming" : "Jouer", - "Play" : "Jouer", - "Game" : "Jeu", + "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", @@ -363,21 +578,26 @@ "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" : "Gymnastique", + "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", @@ -396,20 +616,27 @@ "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", - "Global" : "Général" -},"pluralForm" :"nplurals=2; plural=(n > 1);" + "Appointment not found" : "Rendez-vous non trouvé", + "User not found" : "Utilisateur non trouvé" +},"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/gl.js b/l10n/gl.js index fd71b67b56..59c22e9602 100644 --- a/l10n/gl.js +++ b/l10n/gl.js @@ -1,60 +1,138 @@ 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.", - "Successfully sent email to " : "O correo foi enviado satisfactoriamente", + "Unexpected error sending email. Please contact your administrator." : "Produciuse un erro inesperado 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", + "More events" : "Máis eventos", + "No more events today" : "Hoxe non hai máis eventos", + "No upcoming events" : "Non hai eventos próximos", + "%1$s with %2$s" : "%1$s con %2$s", "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).", + "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", + "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:", + "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.", + "Anniversary" : "Aniversario", + "Appointment" : "Cita", + "Business" : "Negocios", + "Education" : "Educación", + "Holiday" : "Día festivo", + "Meeting" : "Xuntanza", + "Miscellaneous" : "Miscelánea", + "Non-working hours" : "Horas non laborábeis", + "Not in office" : "Fóra da oficina", + "Personal" : "Persoal", + "Phone call" : "Chamada telefónica", + "Sick day" : "Día de enfermidade", + "Special occasion" : "Ocasión especial", + "Travel" : "Viaxe", + "Vacation" : "Vacacións", + "Custom Categories" : "Categorías personalizadas", + "Collaborative Tags" : "Etiquetas colaborativas", + "Standard Categories" : "Categorías estándar", + "A Calendar app for Nextcloud" : "Unha aplicación 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." : "A aplicación de Calendario é unha interface de usuario para o servidor CalDAV de Nextcloud. Sincronice doadamente eventos en varios dispositivos co seu Nextcloud e edíteos en líña.\n\n* 🚀 **Integración con outras aplicación de 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! Atope os seus eventos ao seu 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).", "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 ", + "Event" : "Evento", + "Create new event" : "Crear un novo evento", "Today" : "Hoxe", "Day" : "Día", "Week" : "Semana", "Month" : "Mes", + "Year" : "Ano", "List" : "Lista", - "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", - "Download" : "Descargar", - "Unshare from me" : "Deixar de compartir", + "Preview" : "Vista previa", + "Copy link" : "Copiar a ligazón", + "Edit" : "Editar", "Delete" : "Eliminar", + "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", + "Add new" : "Engadir novo", + "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", + "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.", "_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"], + "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 dende ligazón (só lectura)", + "Creating subscription …" : "Creando subscrición …", + "Add public holiday calendar" : "Engadir o calendario de días festivos", + "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://)", + "Copy subscription link" : "Copiar a ligazón de subscrición", + "Copying link …" : "Copiando a ligazón …", + "Copied link" : "Ligazón copiada", + "Could not copy link" : "Non foi posíbel copiar a ligazón", + "Export" : "Exportar", + "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.", + "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", + "Empty trash bin" : "Baleirar o lixo", + "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 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?", + "_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.", + "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", "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 …", - "Copy subscription link" : "Copiar a ligazón de subscrició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", + "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", @@ -65,32 +143,32 @@ OC.L10N.register( "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", "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 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.", - "+ 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://)", - "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", + "Calendar name …" : "Nome do calendario…", + "Share calendar" : "Compartir o calendario", + "Unshare from me" : "Deixar de compartir", + "Save" : "Gardar", + "Failed to save calendar name and color" : "Produciuse un fallo ao gardar o nome e a cor do calendario", "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"], - "{filename} is an unsupported file-type" : "{filename} é un tipo de ficheiro non admitido", + "Default attachments location" : "Localización predeterminada dos anexos", + "Select the default location for attachments" : "Seleccione a localización predeterminada para os anexos", + "Invalid location selected" : "Seleccionouse unha localización non válida", + "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.", "{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.", "Import partially failed. Imported {accepted} out of {total}." : "Fallou parcialmente a importación. Importáronse {accepted} de {total}.", - "_Successfully imported %n event_::_Successfully imported %n events._" : ["Importouse satisfactoriamente %n evento","Importaronse satisfactoriamente %n eventos."], + "_Successfully imported %n event_::_Successfully imported %n events_" : [" %n evento importado satisfactoriamente","%n eventos importados satisfactoriamente"], "Automatic" : "Automatico", "Automatic ({detected})" : "Automático ({detected})", "New setting was not saved successfully." : "O novo axuste non foi fardado correctamente.", @@ -103,21 +181,83 @@ 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", "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 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", - "Settings & import" : "Axustes e importar", + "Calendar settings" : "Axustes de Calendario", + "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 was created successfully" : "A cita foi creada correctamente", + "Appointment was updated successfully" : "A cita foi actualizada 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 name" : "Nome da cita", + "Location" : "Localización", + "Create a Talk room" : "Crear unha sala en Talk", + "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", + "Wednesday" : "mércores", + "Thursday" : "xoves", + "Friday" : "venres", + "Saturday" : "sábado", + "Sunday" : "domingo", + "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", + "Create appointment" : "Crear cita", + "Edit appointment" : "Editar cita", + "Update" : "Actualizar", + "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.", + "Book the appointment" : "Reserva a cita", + "Reminder" : "Lembrete", "before at" : "antes dás", "Notification" : "Notificación", "Email" : "Correo-e", @@ -131,55 +271,81 @@ OC.L10N.register( "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"], - "No reminders yet" : "Aínda non hai lembretes", + "No attachments" : "Sen anexos", + "Add from Files" : "Engadir dende Ficheiros", + "Upload from device" : "Enviar dende o dispositivo", + "Delete file" : "Eliminar ficheiro", + "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!", + "_{count} attachment_::_{count} attachments_" : ["{count} anexo","{count} anexos"], + "Invitation accepted" : "Aceptouse o convite", + "Available" : "Dispoñíbel", + "Suggested" : "Suxerido", + "Participation marked as tentative" : "Participación marcada como provisional", + "Accepted {organizerName}'s invitation" : "Aceptouse o convite de {organizerName}", + "Not available" : "Non dispoñíbel", + "Invitation declined" : "Convite declinado", + "Declined {organizerName}'s invitation" : "Declinouse o convite de {organizerName}", + "Invitation is delegated" : "O convite está delegado", + "Checking availability" : "Comprobando a dispoñibilidade", + "Invitation sent" : "Convite enviado", + "Has not responded to {organizerName}'s invitation yet" : "Aínda non respondeu ao convite de {organizerName}", "Availability of attendees, resources and rooms" : "Dispoñibilidade de asistentes, recursos e salas", - "Busy (tentative)" : "Ocupado (tentativa)", + "{organizer} (organizer)" : "{organizer} (organizador)", + "Free" : "Libre", + "Busy (tentative)" : "Ocupado (provisional)", "Busy" : "Ocupado", "Out of office" : "Fóra da oficina", "Unknown" : "Descoñecido", - "{name} accepted your invitation." : "{name} aceptou o seu convite", - "{name} accepted {organizerName}'s invitation." : "{name} aceptou o convite de {organizerName}", - "{name} declined your invitation." : "{name} declinou o seu convite", - "{name} declined {organizerName}'s invitation." : "{name} declinou o convite de {organizerName}", - "{name} has delegated their invitation." : "{name} delegou o seu convite.", - "{name} marked their participation as tentative." : "{name} marcou a súa participación como tentativa.", - "{name} did not respond to your invitation yet." : "{name} aínda non respondeu ao seu convite", - "{name} did not respond to {organizerName}'s invitation yet." : "{name} aínda non respondeu ao convite de {organizerName}.", + "Accept" : "Aceptar", + "Decline" : "Declinar", + "Tentative" : "Provisional", + "The invitation has been accepted successfully." : "O convite foi aceptado correctamente.", + "Failed to accept the invitation." : "Produciuse un erro ao aceptar o convite", + "The invitation has been declined successfully." : "O convite foi declinado correctamente.", + "Failed to decline the invitation." : "Produciuse un erro 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 estabelecer o estado de participación como provisional.", "Create Talk room for this event" : "Crear sala de conversas para este evento", "Show busy times" : "Amosar as horas ocupadas", + "No attendees yet" : "Aínda non hai participantes", + "You don't own this calendar, so you cannot add attendees to this event" : "Vde. non é o propietario deste calendario, polo que non pode engadir asistentes a este evento", + "Successfully appended link to talk room to location." : "Engadiuse satisfactoriamente a ligazón á localización da sala de conversas.", "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 e-mail" : "Enviar correo", + "Send email" : "Enviar o correo", "Chairperson" : "Presidente", - "Required participant" : "Participante obrigatorio", + "Required participant" : "Precisase o participante", "Optional participant" : "Participante opcional", "Non-participant" : "Non participantes", - "Remove attendee" : "Eliminar o asistente", - "Search for e-mails, users, contacts, resources or rooms" : "Buscar correos, usuarios, contactos, recursos ou salas", + "Remove attendee" : "Retirar o asistente", + "Search for emails, users or contacts" : "Buscar correos, usuarios ou contactos", "No match found" : "Non se atopou ningunha coincidencia", - "No attendees yet" : "Aínda non hai participantes", "(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].", + "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", - "Can not 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 os eventos que forman parte dun conxunto de recorrencias.", + "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 {startDate}" : "dende {startDate}", "from {startDate} at {startTime}" : "dende {startDate} ás {startTime}", "to {endDate}" : "ata {endDate}", "to {endDate} at {endTime}" : "ata {endDate} ás {endTime}", + "Repeat" : "Repetir", "End repeat" : "Fin da repetición", "Select to end repeat" : "Seleccionar para finalizar a repetición", "never" : "nunca", "on date" : "na data", "after" : "após", "_time_::_times_" : ["vez","veces"], - "This event is the recurrence-exception of a recurrence-set. You can not add a recurrence-rule to it." : "Este evento é a excepción de recorrencia dun conxunto de recorrencias. Non se lle pode engadir unha regra de recorrencia.", + "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", @@ -187,25 +353,37 @@ OC.L10N.register( "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" : "Repetir", "Repeat every" : "Repetir cada", "By day of the month" : "Por día do mes", "On the" : "Durante o", "_month_::_months_" : ["mes","meses"], "_year_::_years_" : ["ano","anos"], - "Monday" : "luns", "weekday" : "día da semana", "weekend day" : "día da fin de semana", - "Summary" : "Resumo", + "No recurrence" : "Sen recorrencia", "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.", + "Suggestions" : "Suxestións", + "No rooms or resources yet" : "Aínda non hai salas nin recursos", + "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 o recurso", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} asento","{seatingCapacity} asentos"], + "Projector" : "Proxector", + "Whiteboard" : "Encerado dixital", + "Search for resources or rooms" : "Buscar por recursos ou aulas", + "available" : "dispoñíbel", + "unavailable" : "non dispoñíbel", + "Room type" : "Tipo de sala", + "Any" : "Calquera", + "Minimum seating capacity" : "Capacidade mínima de asentos", "More" : "Máis", - "Save" : "Gardar", - "Update" : "Actualizar", "Update this occurrence" : "Actualizar esta recorrencia", "Update this and all future" : "Actualizar esta e todas as futuras", "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.", - "Please select a timezone:" : "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", "from {formattedDate}" : "dende {formattedDate}", @@ -217,41 +395,53 @@ OC.L10N.register( "{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", - "Type to search timezone" : "Escriba para buscar o fuso horario", - "Personal" : "Persoal", - "The automatic timezone detection determined your timezone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your timezone manually in the calendar settings." : "A detección automática do fuso horario determinou que a súa franxa horaria é UTC.\nEste é probabelmente o resultado das medidas de seguridade do seu navegador web.\nEstabeleza a súa zona horaria manualmente nos axustes do calendario.", - "Your configured timezone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your timezone in the settings and report this issue." : "Non se atopou o fuso horario ({timezoneId}) configurado. Retornase a UTC.\nCambie o fuso horario nos axustes e informe deste problema.", - "No more events today" : "Hoxe non hai máis eventos", - "No upcoming events" : "Non hai eventos próximos", + "Type to search time zone" : "Escriba para buscar o fuso horario", + "Global" : "Global", + "Public holiday calendars" : "Calendarios de festivos", + "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}", + "By {authors}" : "Por {authors}", + "Subscribed" : "Subscrito", + "Subscribe" : "Subscribirse", + "Holidays in {region}" : "Festivos en {region}", + "An error occurred, unable to create the public holiday calendar." : "Produciuse un erro, non é posíbel crear o calendario de festivos.", + "Select date" : "Seleccionar a data", + "Select slot" : "Seleccionar franxa horaria", + "No slots available" : "Non hai franxas horarias dispoñíbeis", + "Could not fetch slots" : "Non foi posíbel recuperar as franxas horarias", + "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 atoparon citas públicas para {name}", + "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 problema.", "Create a new event" : "Crear un novo evento", "[Today]" : "[Hoxe]", "[Tomorrow]" : "[Mañá]", "[Yesterday]" : "[Onte]", "[Last] dddd" : "[Último] dddd", "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", + "Managing shared access" : "Xestionar o acceso compartido", + "Deny access" : "Denegar o acceso", + "Invite" : "Convidar", "Attendees" : "Asistentes", - "Reminders" : "Lembretes", + "Resources" : "Recursos", + "_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"], "Close" : "Pechar", "Show more details" : "Amosar máis detalles", "Subscribe to {name}" : "Subscribirse a {name}", - "Download {name}" : "Descargar {name}", - "Anniversary" : "Aniversario", - "Appointment" : "Cita", - "Business" : "Negocios", - "Education" : "Educación", - "Holiday" : "Festivo", - "Meeting" : "Xuntanza", - "Miscellaneous" : "Miscelánea", - "Non-working hours" : "Horas non laborábeis", - "Not in office" : "Fóra da oficina", - "Phone call" : "Chamada telefónica", - "Sick day" : "Día de enfermidade", - "Special occasion" : "Ocasión especial", - "Travel" : "Viaxe", - "Vacation" : "Vacacións", + "Export {name}" : "Exportar {name}", "Midnight on the day the event starts" : "Media noite do día que comeza o evento", "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n día antes do evento ás {formattedHourMinute}","%n días antes do evento ás {formattedHourMinute}"], "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n semana antes do evento ás {formattedHourMinute}","%n semanas antes do evento ás {formattedHourMinute}"], @@ -283,15 +473,8 @@ OC.L10N.register( "_%n time_::_%n times_" : ["%n vez","%n veces"], "Untitled event" : "Evento sen título", "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" : "ant.", - "next" : "seg.", - "prev year" : "ano ant.", - "next year" : "ano seg.", - "today" : "hoxe", - "list" : "lista", + "Please ask your administrator to enable the Tasks App." : "Pregúntelle a administración desta instancia pola activación da aplicación de tarefas.", "W" : "S", - "all-day" : "todo-o-día", "%n more" : "%n máis", "No events to display" : "Non hai eventos para amosar", "_+%n more_::_+%n more_" : ["+%n máis","+%n máis"], @@ -299,62 +482,95 @@ OC.L10N.register( "Create a new event or change the visible time-range" : "Crear un novo evento ou cambiar o intervalo de tempo visíbel", "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", + "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.", - "Location" : "Localización", "Add a location" : "Engadir unha localización", - "Description" : "Descrición", "Add a description" : "Engadir unha descrición", "Status" : "Estado", "Confirmed" : "Confirmado", - "Tentative" : "Tentativa", "Canceled" : "Cancelada", "Confirmation about the overall status of the event." : "Confirmación sobre o estado xeral do evento.", "Show as" : "Amosar como", "Take this event into account when calculating free-busy information." : "Teña en conta este evento ao calcular a información da ocupación.", - "Free" : "Libre", "Categories" : "Categorías", "Categories help you to structure and organize your events." : "As categorías axudan a estruturar e organizar os seus eventos.", "Search or add categories" : "Buscar ou engadir categorías", "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", + "Chat room for event" : "Sala de parolas 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", + "This is an event reminder." : "Este é un lembrete de eventos.", "Meditation" : "Meditación", "Relaxing" : "Relaxante", "Relax" : "Relaxamento", + "Break" : "Descanso", + "Commute" : "Viaxe ao traballo", + "Commuting" : "Desprazamentos", + "Shuttle" : "Lanzadeira", + "Invoice" : "Factura", + "Finance" : "Finanzas", + "Bank" : "Banco", + "Money" : "Diñeiro", + "Wedding" : "Voda", + "Dog" : "Can", + "Concert" : "Concerto", + "Festival" : "Festival", + "Theater" : "Teatro", + "Theatre" : "Teatro", "Presentation" : "Presentación", - "Present" : "Presentar", + "Talk" : "Talk", + "Speech" : "Discurso", + "Deadline" : "Data límite", + "Submission" : "Entrega", + "Reporting" : "Informes", "Camping" : "Campismo", "Camp" : "Campo", + "Election" : "Elección", + "Voting" : "Votación", + "Vote" : "Votar", + "Barbecue" : "Barbacoa", + "Barbeque" : "Churrasco", + "Garden" : "Xardín", + "Farm" : "Granxa", "Movie" : "Filme", "Cinema" : "Cinema", "Graduation" : "Graduación", "Brainstorm" : "Tormenta de ideas", + "Review" : "Revisar", + "Audit" : "Auditoría", + "Inspection" : "Inspección", + "Proofreading" : "Corrección de probas", "Baseball" : "Béisbol", "Meet" : "Xuntanza", "Planning" : "Planificación", "Pointing" : "Sinalar", "Retrospective" : "Retrospectiva", - "Review" : "Revisar", "Office" : "Oficina", "Contributor week" : "Semana de colaboradores", - "Party" : "Festa", - "Celebration" : "Celebración", "Mail" : "Correo", "Soccer" : "Futbol", "Football" : "Rugby", "Gaming" : "Xogos", - "Play" : "Xogar", - "Game" : "Xogo", "Drive" : "Conducir", + "Driving" : "Condución", "Bicycle" : "Bicicleta", "Cycle" : "Bici", + "Cycling" : "Ciclismo", "Biking" : "Ciclismo", + "Bike" : "Bicicleta", "Podcast" : "Podcast", "Basketball" : "Baloncesto", "Fishing" : "Pesca", @@ -365,10 +581,12 @@ OC.L10N.register( "Museum" : "Museo", "Pilates" : "Pilates", "Park" : "Parque", + "Walk" : "Camiñar", "Studying" : "Estudando", "Doctor" : "Médico", "Health" : "Saúde", "Dentist" : "Dentista", + "Hospital" : "Hospital", "Interview" : "Entrevista", "Training" : "Adestramento", "Practice" : "Práctica", @@ -379,7 +597,10 @@ OC.L10N.register( "Gym" : "Ximnasio", "Barber" : "Perruqueiro", "Haircut" : "Corte de pelo", + "Hairdresser" : "Perruquería", "Exam" : "Exame", + "Written test" : "Proba escrita", + "Oral test" : "Proba oral", "Working" : "Traballando", "New Years Eve" : "Serán de fin de ano", "NYE" : "Noitevella", @@ -390,7 +611,7 @@ OC.L10N.register( "Video-conference" : "Vídeoconferencia", "Conference-call" : "Chamada de conferencia", "Video-call" : "Vídeochamada", - "Video-chat" : "Vídeoconversa", + "Video-chat" : "Vídeoparola", "Video-meeting" : "Vídeoxuntanza", "Call" : "Chamada", "Calling" : "Chamando", @@ -398,20 +619,27 @@ OC.L10N.register( "Conference" : "Conferencia", "Pizza" : "Pizza", "Travelling" : "Viaxando", + "Trip" : "Viaxe", "Journey" : "Traxecto", "Collaborate" : "Colaborar", "Pair" : "Parella", "Lecture" : "Lectura", "Seminar" : "Seminario", + "Teaching" : "Ensinando", "Photograph" : "Fotografo", + "Party" : "Festa", + "Celebration" : "Celebración", "Celebrate" : "Celebrar", + "Birthday" : "Aniversario (nacemento)", "Shopping" : "Compras", + "Groceries" : "Comestíbeis", "Skate" : "Patinar", "Skateboard" : "Monopatín", "Wine tasting" : "Cata de viños", "Golf" : "Golf", "Dinner" : "Cea", "Lunch" : "Xantar", - "Global" : "Global" + "Appointment not found" : "Non se atopou a cita", + "User not found" : "Non se atopou o usuario" }, "nplurals=2; plural=(n != 1);"); diff --git a/l10n/gl.json b/l10n/gl.json index 2b8a290708..760eb55d65 100644 --- a/l10n/gl.json +++ b/l10n/gl.json @@ -1,58 +1,136 @@ { "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.", - "Successfully sent email to " : "O correo foi enviado satisfactoriamente", + "Unexpected error sending email. Please contact your administrator." : "Produciuse un erro inesperado 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", + "More events" : "Máis eventos", + "No more events today" : "Hoxe non hai máis eventos", + "No upcoming events" : "Non hai eventos próximos", + "%1$s with %2$s" : "%1$s con %2$s", "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).", + "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", + "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:", + "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.", + "Anniversary" : "Aniversario", + "Appointment" : "Cita", + "Business" : "Negocios", + "Education" : "Educación", + "Holiday" : "Día festivo", + "Meeting" : "Xuntanza", + "Miscellaneous" : "Miscelánea", + "Non-working hours" : "Horas non laborábeis", + "Not in office" : "Fóra da oficina", + "Personal" : "Persoal", + "Phone call" : "Chamada telefónica", + "Sick day" : "Día de enfermidade", + "Special occasion" : "Ocasión especial", + "Travel" : "Viaxe", + "Vacation" : "Vacacións", + "Custom Categories" : "Categorías personalizadas", + "Collaborative Tags" : "Etiquetas colaborativas", + "Standard Categories" : "Categorías estándar", + "A Calendar app for Nextcloud" : "Unha aplicación 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." : "A aplicación de Calendario é unha interface de usuario para o servidor CalDAV de Nextcloud. Sincronice doadamente eventos en varios dispositivos co seu Nextcloud e edíteos en líña.\n\n* 🚀 **Integración con outras aplicación de 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! Atope os seus eventos ao seu 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).", "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 ", + "Event" : "Evento", + "Create new event" : "Crear un novo evento", "Today" : "Hoxe", "Day" : "Día", "Week" : "Semana", "Month" : "Mes", + "Year" : "Ano", "List" : "Lista", - "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", - "Download" : "Descargar", - "Unshare from me" : "Deixar de compartir", + "Preview" : "Vista previa", + "Copy link" : "Copiar a ligazón", + "Edit" : "Editar", "Delete" : "Eliminar", + "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", + "Add new" : "Engadir novo", + "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", + "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.", "_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"], + "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 dende ligazón (só lectura)", + "Creating subscription …" : "Creando subscrición …", + "Add public holiday calendar" : "Engadir o calendario de días festivos", + "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://)", + "Copy subscription link" : "Copiar a ligazón de subscrición", + "Copying link …" : "Copiando a ligazón …", + "Copied link" : "Ligazón copiada", + "Could not copy link" : "Non foi posíbel copiar a ligazón", + "Export" : "Exportar", + "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.", + "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", + "Empty trash bin" : "Baleirar o lixo", + "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 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?", + "_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.", + "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", "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 …", - "Copy subscription link" : "Copiar a ligazón de subscrició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", + "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", @@ -63,32 +141,32 @@ "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", "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 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.", - "+ 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://)", - "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", + "Calendar name …" : "Nome do calendario…", + "Share calendar" : "Compartir o calendario", + "Unshare from me" : "Deixar de compartir", + "Save" : "Gardar", + "Failed to save calendar name and color" : "Produciuse un fallo ao gardar o nome e a cor do calendario", "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"], - "{filename} is an unsupported file-type" : "{filename} é un tipo de ficheiro non admitido", + "Default attachments location" : "Localización predeterminada dos anexos", + "Select the default location for attachments" : "Seleccione a localización predeterminada para os anexos", + "Invalid location selected" : "Seleccionouse unha localización non válida", + "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.", "{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.", "Import partially failed. Imported {accepted} out of {total}." : "Fallou parcialmente a importación. Importáronse {accepted} de {total}.", - "_Successfully imported %n event_::_Successfully imported %n events._" : ["Importouse satisfactoriamente %n evento","Importaronse satisfactoriamente %n eventos."], + "_Successfully imported %n event_::_Successfully imported %n events_" : [" %n evento importado satisfactoriamente","%n eventos importados satisfactoriamente"], "Automatic" : "Automatico", "Automatic ({detected})" : "Automático ({detected})", "New setting was not saved successfully." : "O novo axuste non foi fardado correctamente.", @@ -101,21 +179,83 @@ "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", "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 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", - "Settings & import" : "Axustes e importar", + "Calendar settings" : "Axustes de Calendario", + "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 was created successfully" : "A cita foi creada correctamente", + "Appointment was updated successfully" : "A cita foi actualizada 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 name" : "Nome da cita", + "Location" : "Localización", + "Create a Talk room" : "Crear unha sala en Talk", + "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", + "Wednesday" : "mércores", + "Thursday" : "xoves", + "Friday" : "venres", + "Saturday" : "sábado", + "Sunday" : "domingo", + "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", + "Create appointment" : "Crear cita", + "Edit appointment" : "Editar cita", + "Update" : "Actualizar", + "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.", + "Book the appointment" : "Reserva a cita", + "Reminder" : "Lembrete", "before at" : "antes dás", "Notification" : "Notificación", "Email" : "Correo-e", @@ -129,55 +269,81 @@ "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"], - "No reminders yet" : "Aínda non hai lembretes", + "No attachments" : "Sen anexos", + "Add from Files" : "Engadir dende Ficheiros", + "Upload from device" : "Enviar dende o dispositivo", + "Delete file" : "Eliminar ficheiro", + "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!", + "_{count} attachment_::_{count} attachments_" : ["{count} anexo","{count} anexos"], + "Invitation accepted" : "Aceptouse o convite", + "Available" : "Dispoñíbel", + "Suggested" : "Suxerido", + "Participation marked as tentative" : "Participación marcada como provisional", + "Accepted {organizerName}'s invitation" : "Aceptouse o convite de {organizerName}", + "Not available" : "Non dispoñíbel", + "Invitation declined" : "Convite declinado", + "Declined {organizerName}'s invitation" : "Declinouse o convite de {organizerName}", + "Invitation is delegated" : "O convite está delegado", + "Checking availability" : "Comprobando a dispoñibilidade", + "Invitation sent" : "Convite enviado", + "Has not responded to {organizerName}'s invitation yet" : "Aínda non respondeu ao convite de {organizerName}", "Availability of attendees, resources and rooms" : "Dispoñibilidade de asistentes, recursos e salas", - "Busy (tentative)" : "Ocupado (tentativa)", + "{organizer} (organizer)" : "{organizer} (organizador)", + "Free" : "Libre", + "Busy (tentative)" : "Ocupado (provisional)", "Busy" : "Ocupado", "Out of office" : "Fóra da oficina", "Unknown" : "Descoñecido", - "{name} accepted your invitation." : "{name} aceptou o seu convite", - "{name} accepted {organizerName}'s invitation." : "{name} aceptou o convite de {organizerName}", - "{name} declined your invitation." : "{name} declinou o seu convite", - "{name} declined {organizerName}'s invitation." : "{name} declinou o convite de {organizerName}", - "{name} has delegated their invitation." : "{name} delegou o seu convite.", - "{name} marked their participation as tentative." : "{name} marcou a súa participación como tentativa.", - "{name} did not respond to your invitation yet." : "{name} aínda non respondeu ao seu convite", - "{name} did not respond to {organizerName}'s invitation yet." : "{name} aínda non respondeu ao convite de {organizerName}.", + "Accept" : "Aceptar", + "Decline" : "Declinar", + "Tentative" : "Provisional", + "The invitation has been accepted successfully." : "O convite foi aceptado correctamente.", + "Failed to accept the invitation." : "Produciuse un erro ao aceptar o convite", + "The invitation has been declined successfully." : "O convite foi declinado correctamente.", + "Failed to decline the invitation." : "Produciuse un erro 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 estabelecer o estado de participación como provisional.", "Create Talk room for this event" : "Crear sala de conversas para este evento", "Show busy times" : "Amosar as horas ocupadas", + "No attendees yet" : "Aínda non hai participantes", + "You don't own this calendar, so you cannot add attendees to this event" : "Vde. non é o propietario deste calendario, polo que non pode engadir asistentes a este evento", + "Successfully appended link to talk room to location." : "Engadiuse satisfactoriamente a ligazón á localización da sala de conversas.", "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 e-mail" : "Enviar correo", + "Send email" : "Enviar o correo", "Chairperson" : "Presidente", - "Required participant" : "Participante obrigatorio", + "Required participant" : "Precisase o participante", "Optional participant" : "Participante opcional", "Non-participant" : "Non participantes", - "Remove attendee" : "Eliminar o asistente", - "Search for e-mails, users, contacts, resources or rooms" : "Buscar correos, usuarios, contactos, recursos ou salas", + "Remove attendee" : "Retirar o asistente", + "Search for emails, users or contacts" : "Buscar correos, usuarios ou contactos", "No match found" : "Non se atopou ningunha coincidencia", - "No attendees yet" : "Aínda non hai participantes", "(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].", + "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", - "Can not 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 os eventos que forman parte dun conxunto de recorrencias.", + "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 {startDate}" : "dende {startDate}", "from {startDate} at {startTime}" : "dende {startDate} ás {startTime}", "to {endDate}" : "ata {endDate}", "to {endDate} at {endTime}" : "ata {endDate} ás {endTime}", + "Repeat" : "Repetir", "End repeat" : "Fin da repetición", "Select to end repeat" : "Seleccionar para finalizar a repetición", "never" : "nunca", "on date" : "na data", "after" : "após", "_time_::_times_" : ["vez","veces"], - "This event is the recurrence-exception of a recurrence-set. You can not add a recurrence-rule to it." : "Este evento é a excepción de recorrencia dun conxunto de recorrencias. Non se lle pode engadir unha regra de recorrencia.", + "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", @@ -185,25 +351,37 @@ "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" : "Repetir", "Repeat every" : "Repetir cada", "By day of the month" : "Por día do mes", "On the" : "Durante o", "_month_::_months_" : ["mes","meses"], "_year_::_years_" : ["ano","anos"], - "Monday" : "luns", "weekday" : "día da semana", "weekend day" : "día da fin de semana", - "Summary" : "Resumo", + "No recurrence" : "Sen recorrencia", "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.", + "Suggestions" : "Suxestións", + "No rooms or resources yet" : "Aínda non hai salas nin recursos", + "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 o recurso", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} asento","{seatingCapacity} asentos"], + "Projector" : "Proxector", + "Whiteboard" : "Encerado dixital", + "Search for resources or rooms" : "Buscar por recursos ou aulas", + "available" : "dispoñíbel", + "unavailable" : "non dispoñíbel", + "Room type" : "Tipo de sala", + "Any" : "Calquera", + "Minimum seating capacity" : "Capacidade mínima de asentos", "More" : "Máis", - "Save" : "Gardar", - "Update" : "Actualizar", "Update this occurrence" : "Actualizar esta recorrencia", "Update this and all future" : "Actualizar esta e todas as futuras", "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.", - "Please select a timezone:" : "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", "from {formattedDate}" : "dende {formattedDate}", @@ -215,41 +393,53 @@ "{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", - "Type to search timezone" : "Escriba para buscar o fuso horario", - "Personal" : "Persoal", - "The automatic timezone detection determined your timezone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your timezone manually in the calendar settings." : "A detección automática do fuso horario determinou que a súa franxa horaria é UTC.\nEste é probabelmente o resultado das medidas de seguridade do seu navegador web.\nEstabeleza a súa zona horaria manualmente nos axustes do calendario.", - "Your configured timezone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your timezone in the settings and report this issue." : "Non se atopou o fuso horario ({timezoneId}) configurado. Retornase a UTC.\nCambie o fuso horario nos axustes e informe deste problema.", - "No more events today" : "Hoxe non hai máis eventos", - "No upcoming events" : "Non hai eventos próximos", + "Type to search time zone" : "Escriba para buscar o fuso horario", + "Global" : "Global", + "Public holiday calendars" : "Calendarios de festivos", + "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}", + "By {authors}" : "Por {authors}", + "Subscribed" : "Subscrito", + "Subscribe" : "Subscribirse", + "Holidays in {region}" : "Festivos en {region}", + "An error occurred, unable to create the public holiday calendar." : "Produciuse un erro, non é posíbel crear o calendario de festivos.", + "Select date" : "Seleccionar a data", + "Select slot" : "Seleccionar franxa horaria", + "No slots available" : "Non hai franxas horarias dispoñíbeis", + "Could not fetch slots" : "Non foi posíbel recuperar as franxas horarias", + "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 atoparon citas públicas para {name}", + "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 problema.", "Create a new event" : "Crear un novo evento", "[Today]" : "[Hoxe]", "[Tomorrow]" : "[Mañá]", "[Yesterday]" : "[Onte]", "[Last] dddd" : "[Último] dddd", "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", + "Managing shared access" : "Xestionar o acceso compartido", + "Deny access" : "Denegar o acceso", + "Invite" : "Convidar", "Attendees" : "Asistentes", - "Reminders" : "Lembretes", + "Resources" : "Recursos", + "_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"], "Close" : "Pechar", "Show more details" : "Amosar máis detalles", "Subscribe to {name}" : "Subscribirse a {name}", - "Download {name}" : "Descargar {name}", - "Anniversary" : "Aniversario", - "Appointment" : "Cita", - "Business" : "Negocios", - "Education" : "Educación", - "Holiday" : "Festivo", - "Meeting" : "Xuntanza", - "Miscellaneous" : "Miscelánea", - "Non-working hours" : "Horas non laborábeis", - "Not in office" : "Fóra da oficina", - "Phone call" : "Chamada telefónica", - "Sick day" : "Día de enfermidade", - "Special occasion" : "Ocasión especial", - "Travel" : "Viaxe", - "Vacation" : "Vacacións", + "Export {name}" : "Exportar {name}", "Midnight on the day the event starts" : "Media noite do día que comeza o evento", "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n día antes do evento ás {formattedHourMinute}","%n días antes do evento ás {formattedHourMinute}"], "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n semana antes do evento ás {formattedHourMinute}","%n semanas antes do evento ás {formattedHourMinute}"], @@ -281,15 +471,8 @@ "_%n time_::_%n times_" : ["%n vez","%n veces"], "Untitled event" : "Evento sen título", "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" : "ant.", - "next" : "seg.", - "prev year" : "ano ant.", - "next year" : "ano seg.", - "today" : "hoxe", - "list" : "lista", + "Please ask your administrator to enable the Tasks App." : "Pregúntelle a administración desta instancia pola activación da aplicación de tarefas.", "W" : "S", - "all-day" : "todo-o-día", "%n more" : "%n máis", "No events to display" : "Non hai eventos para amosar", "_+%n more_::_+%n more_" : ["+%n máis","+%n máis"], @@ -297,62 +480,95 @@ "Create a new event or change the visible time-range" : "Crear un novo evento ou cambiar o intervalo de tempo visíbel", "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", + "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.", - "Location" : "Localización", "Add a location" : "Engadir unha localización", - "Description" : "Descrición", "Add a description" : "Engadir unha descrición", "Status" : "Estado", "Confirmed" : "Confirmado", - "Tentative" : "Tentativa", "Canceled" : "Cancelada", "Confirmation about the overall status of the event." : "Confirmación sobre o estado xeral do evento.", "Show as" : "Amosar como", "Take this event into account when calculating free-busy information." : "Teña en conta este evento ao calcular a información da ocupación.", - "Free" : "Libre", "Categories" : "Categorías", "Categories help you to structure and organize your events." : "As categorías axudan a estruturar e organizar os seus eventos.", "Search or add categories" : "Buscar ou engadir categorías", "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", + "Chat room for event" : "Sala de parolas 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", + "This is an event reminder." : "Este é un lembrete de eventos.", "Meditation" : "Meditación", "Relaxing" : "Relaxante", "Relax" : "Relaxamento", + "Break" : "Descanso", + "Commute" : "Viaxe ao traballo", + "Commuting" : "Desprazamentos", + "Shuttle" : "Lanzadeira", + "Invoice" : "Factura", + "Finance" : "Finanzas", + "Bank" : "Banco", + "Money" : "Diñeiro", + "Wedding" : "Voda", + "Dog" : "Can", + "Concert" : "Concerto", + "Festival" : "Festival", + "Theater" : "Teatro", + "Theatre" : "Teatro", "Presentation" : "Presentación", - "Present" : "Presentar", + "Talk" : "Talk", + "Speech" : "Discurso", + "Deadline" : "Data límite", + "Submission" : "Entrega", + "Reporting" : "Informes", "Camping" : "Campismo", "Camp" : "Campo", + "Election" : "Elección", + "Voting" : "Votación", + "Vote" : "Votar", + "Barbecue" : "Barbacoa", + "Barbeque" : "Churrasco", + "Garden" : "Xardín", + "Farm" : "Granxa", "Movie" : "Filme", "Cinema" : "Cinema", "Graduation" : "Graduación", "Brainstorm" : "Tormenta de ideas", + "Review" : "Revisar", + "Audit" : "Auditoría", + "Inspection" : "Inspección", + "Proofreading" : "Corrección de probas", "Baseball" : "Béisbol", "Meet" : "Xuntanza", "Planning" : "Planificación", "Pointing" : "Sinalar", "Retrospective" : "Retrospectiva", - "Review" : "Revisar", "Office" : "Oficina", "Contributor week" : "Semana de colaboradores", - "Party" : "Festa", - "Celebration" : "Celebración", "Mail" : "Correo", "Soccer" : "Futbol", "Football" : "Rugby", "Gaming" : "Xogos", - "Play" : "Xogar", - "Game" : "Xogo", "Drive" : "Conducir", + "Driving" : "Condución", "Bicycle" : "Bicicleta", "Cycle" : "Bici", + "Cycling" : "Ciclismo", "Biking" : "Ciclismo", + "Bike" : "Bicicleta", "Podcast" : "Podcast", "Basketball" : "Baloncesto", "Fishing" : "Pesca", @@ -363,10 +579,12 @@ "Museum" : "Museo", "Pilates" : "Pilates", "Park" : "Parque", + "Walk" : "Camiñar", "Studying" : "Estudando", "Doctor" : "Médico", "Health" : "Saúde", "Dentist" : "Dentista", + "Hospital" : "Hospital", "Interview" : "Entrevista", "Training" : "Adestramento", "Practice" : "Práctica", @@ -377,7 +595,10 @@ "Gym" : "Ximnasio", "Barber" : "Perruqueiro", "Haircut" : "Corte de pelo", + "Hairdresser" : "Perruquería", "Exam" : "Exame", + "Written test" : "Proba escrita", + "Oral test" : "Proba oral", "Working" : "Traballando", "New Years Eve" : "Serán de fin de ano", "NYE" : "Noitevella", @@ -388,7 +609,7 @@ "Video-conference" : "Vídeoconferencia", "Conference-call" : "Chamada de conferencia", "Video-call" : "Vídeochamada", - "Video-chat" : "Vídeoconversa", + "Video-chat" : "Vídeoparola", "Video-meeting" : "Vídeoxuntanza", "Call" : "Chamada", "Calling" : "Chamando", @@ -396,20 +617,27 @@ "Conference" : "Conferencia", "Pizza" : "Pizza", "Travelling" : "Viaxando", + "Trip" : "Viaxe", "Journey" : "Traxecto", "Collaborate" : "Colaborar", "Pair" : "Parella", "Lecture" : "Lectura", "Seminar" : "Seminario", + "Teaching" : "Ensinando", "Photograph" : "Fotografo", + "Party" : "Festa", + "Celebration" : "Celebración", "Celebrate" : "Celebrar", + "Birthday" : "Aniversario (nacemento)", "Shopping" : "Compras", + "Groceries" : "Comestíbeis", "Skate" : "Patinar", "Skateboard" : "Monopatín", "Wine tasting" : "Cata de viños", "Golf" : "Golf", "Dinner" : "Cea", "Lunch" : "Xantar", - "Global" : "Global" + "Appointment not found" : "Non se atopou a cita", + "User not found" : "Non se atopou o usuario" },"pluralForm" :"nplurals=2; plural=(n != 1);" } \ No newline at end of file diff --git a/l10n/he.js b/l10n/he.js index f703b694c0..858d8c5618 100644 --- a/l10n/he.js +++ b/l10n/he.js @@ -5,13 +5,33 @@ OC.L10N.register( "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 " : "דוא\"ל נשלח בהצלחה אל", "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" : "אין אירועים בזמן הקרוב", "Calendar" : "יומן", + "Appointments" : "פגישות", + "Confirm" : "אימות", + "Date:" : "תאריך:", + "Where:" : "איפה:", + "Anniversary" : "יום השנה", + "Appointment" : "פגישה", + "Business" : "עסקי", + "Education" : "חינוך", + "Holiday" : "חג", + "Meeting" : "מפגש", + "Miscellaneous" : "שונות", + "Non-working hours" : "מחוץ לשעות העבודה", + "Not in office" : "מחוץ למשרד", + "Personal" : "אישי", + "Phone call" : "שיחת טלפון", + "Sick day" : "יום מחלה", + "Special occasion" : "אירוע מיוחד", + "Travel" : "טיול", + "Vacation" : "חופשה", "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" : "היום הקודם", @@ -20,40 +40,47 @@ OC.L10N.register( "Next day" : "היום הבא", "Next week" : "השבוע הבא", "Next month" : "החודש הבא", - "+ New event" : "+ ארוע חדש", "Today" : "היום", "Day" : "יום", "Week" : "שבוע", "Month" : "חודש", + "Year" : "שנה", "List" : "רשימה", - "Untitled calendar" : "לוח שנה ללא כותרת", - "Edit name" : "ערוך שם", - "Saving name …" : "שמירת השם ...", - "Edit color" : "ערוך צבע", - "Saving color …" : "שמירת הצבע ...", - "Copy private link" : "העתקת קישור פרטי", - "Download" : "הורדה", - "Unshare from me" : "ביטול השיתוף איתי", + "Preview" : "תצוגה מקדימה", + "Copy link" : "העתקת קישור", + "Edit" : "עריכה", "Delete" : "מחיקה", + "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." : "אירעה שגיאה--לא מצליחים לשנות את צבע לוח השנה.", "_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} שניות"], + "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://‎)", + "Copy subscription link" : "העתק את קישור המנוי", + "Copying link …" : "מעתיק את הקישור  ...", + "Copied link" : "הועתק קישור", + "Could not copy link" : "לא ניתן להעתיק קישור", + "Export" : "ייצוא", + "Calendar link copied to clipboard." : "הקישור ללוח השנה הועתק ללוח הגזירים.", + "Calendar link could not be copied to clipboard." : "לא ניתן להעתיק את הקישור ללוח השנה אל לוח הגזירים.", + "Name" : "שם", + "Deleted" : "נמחק", + "Restore" : "שחזור", + "Delete permanently" : "מחיקה לצמיתות", + "Empty trash bin" : "פינוי סל האשפה", + "Could not update calendar order." : "לא היה ניתן לעדכן את סדר לוח השנה.", + "Internal link" : "קישור פנימי", + "Copy internal link" : "העתקת קישור פנימי", "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" : "הקוד הועתק", @@ -65,32 +92,22 @@ OC.L10N.register( "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" : "אין משתמשים או קבוצות", "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://‎)", - "Could not update calendar order." : "לא היה ניתן לעדכן את סדר לוח השנה.", + "Share with users or groups" : "שיתוף עם משתמשים או קבוצות", + "No users or groups" : "אין משתמשים או קבוצות", + "Unshare from me" : "ביטול השיתוף איתי", + "Save" : "שמור", "Import calendars" : "יבוא לוחות שנה", "Please select a calendar to import into …" : "בחר לוח שנה לייבוא אליו …", "Filename" : "שם קובץ", "Calendar to import into" : "לוח שנה לייבוא אליו", "Cancel" : "ביטול", "_Import calendar_::_Import calendars_" : ["יבוא לוחות שנה","יבוא לוחות שנה","יבוא לוחות שנה","יבוא לוחות שנה"], - "{filename} is an unsupported file-type" : "{filename} הוא סוג קובץ שאינו נתמך", "{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 אירועים יובאו בהצלחה."], "Automatic" : "אוטומטי", "Automatic ({detected})" : "אוטומטי ({detected})", "New setting was not saved successfully." : "ההגדרה החדשה לא נשמרה בהצלחה.", @@ -103,21 +120,35 @@ OC.L10N.register( "Day view" : "תצוגת יום", "Week view" : "תצוגת שבוע", "Month view" : "תצוגת חודש", + "List view" : "תצוגת רשימה", "Actions" : "פעולות", "Create event" : "יצירת אירוע", "Show shortcuts" : "הצגת קיצורי דרך", "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" : "הצגת קיצורי מקלדת", - "Settings & import" : "הגדרות וייבוא", + "No reminder" : "אין תזכורת", "CalDAV link copied to clipboard." : "קישור ה־CalDAV הועתק ללוח הגזירים.", "CalDAV link could not be copied to clipboard." : "לא ניתן להעתיק את קישור ה־CalDAV ללוח הגזירים.", + "Location" : "מיקום", + "Description" : "תיאור", + "Duration" : "משך", + "to" : "אל", + "Add" : "הוספה", + "Monday" : "יום שני", + "Tuesday" : "יום שלישי", + "Wednesday" : "יום רביעי", + "Thursday" : "יום חמישי", + "Friday" : "יום שישי", + "Saturday" : "יום שבת", + "Sunday" : "יום ראשון", + "Update" : "עדכון", + "Your email address" : "כתובת הדוא״ל שלך", "before at" : "לפני", "Notification" : "הוֹדָעָה", "Email" : "דוא״ל", @@ -136,50 +167,47 @@ OC.L10N.register( "_hour_::_hours_" : ["שעה","שעתיים","שעות","שעות"], "_day_::_days_" : ["יום","יומיים","ימים","ימים"], "_week_::_weeks_" : ["שבוע","שבועיים","שבועות","שבועות"], - "No reminders yet" : "אין תזכורות עדיין", + "Delete file" : "מחיקת קבצים", + "Choose a file to add as attachment" : "בחירת קובץ להוספה כקובץ מצורף", + "Choose a file to share as a link" : "נא לבחור קובץ לשיתוף כקישור", + "Available" : "זמינות", "Availability of attendees, resources and rooms" : "זמינות של משתתפים, משאבים וחדרים", + "Free" : "פנוי", "Busy (tentative)" : "תפוס (טנטטיבי)", "Busy" : "עסוק", "Out of office" : "מחוץ למשרד", "Unknown" : "לא ידוע", - "{name} accepted your invitation." : "{name} קיבל את ההזמנה שלך.", - "{name} accepted {organizerName}'s invitation." : "{name} קיבל את ההזמנה של {organizerName}.", - "{name} declined your invitation." : "{name} דחה את הזמנתך.", - "{name} declined {organizerName}'s invitation." : "{name} דחה את ההזמנה של {organizerName}.", - "{name} has delegated their invitation." : "{name} האציל את ההזמנה שלהם.", - "{name} marked their participation as tentative." : "{שם} סימנה את השתתפותם כטנטטיבי.", - "{name} did not respond to your invitation yet." : "{name} עדיין לא הגיב להזמנתך.", - "{name} did not respond to {organizerName}'s invitation yet." : "{name} עדיין לא נענה להזמנה של {organizerName}.", + "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 e-mail" : "שלח דוא\"ל", + "Send email" : "שליחת דואר אלקטרוני", "Chairperson" : "יושב ראש", "Required participant" : "משתתף חובה", "Optional participant" : "משתתף אופציונלי", "Non-participant" : "לא משתתף", "Remove attendee" : "הסר את המשתתף", - "Search for e-mails, users, contacts, resources or rooms" : "חפש הודעות דואר אלקטרוני, משתמשים, אנשי קשר, משאבים, או חדרים", "No match found" : "לא נמצאה התאמה", - "No attendees 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" : "כל היום", - "Can not modify all-day setting for events that are part of a recurrence-set." : "לא ניתן לשנות את הגדרת all-day לאירועים שהם חלק מ-recurrence-set.", "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" : "לעולם לא", "on date" : "בתאריך", "after" : "לאחר", "_time_::_times_" : ["בשעה","בשעה","בשעה","בשעות"], - "This event is the recurrence-exception of a recurrence-set. You can not add a recurrence-rule to it." : "אירוע זה הוא ה-recurrence-exception של recurrence-set. אינך יכול להוסיף לו recurrence-rule.", "first" : "ראשון", "third" : "שלישי", "fourth" : "רביעי", @@ -187,25 +215,19 @@ OC.L10N.register( "second to last" : "אחד לפני האחרון", "last" : "אחרון", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "שינויים ב-recurrence-rule יחולו רק על האירוע הזה ועל כל אירועים עתידיים.", - "Repeat" : "חזרה", "Repeat every" : "חזור על כל", "By day of the month" : "לפי היום בחודש", "On the" : "על", "_month_::_months_" : ["חודש","חודשיים","חודשים","חודשים"], "_year_::_years_" : ["שנה","שנתיים","שנים","שנים"], - "Monday" : "יום שני", "weekday" : "יום בשבוע", "weekend day" : "יום בסופ״ש", - "Summary" : "תקציר", "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" : "יותר", - "Save" : "שמור", - "Update" : "עדכון", "Update this occurrence" : "עדכון המופע הזה", "Update this and all future" : "עדכון של זה והעתידיים", "Public calendar does not exist" : "לוח השנה הציבורי אינו קיים", "Maybe the share was deleted or has expired?" : "אולי השיתוף נמחק או פג תוקפו?", - "Please select a timezone:" : "אנא בחר אזור זמן:", "Pick a time" : "בחר זמן", "Pick a date" : "תבחר תאריך", "from {formattedDate}" : "מ- {formattedDate}", @@ -217,12 +239,9 @@ OC.L10N.register( "{formattedDate} at {formattedTime}" : "{formattedDate} בשעה {formattedTime}", "Please enter a valid date" : "נא להקליד תאריך תקני", "Please enter a valid date and time" : "נא להקליד שעה ותאריך תקניים", - "Type to search timezone" : "יש להקליד כדי לחפש אזור זמן", - "Personal" : "אישי", - "The automatic timezone detection determined your timezone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your timezone manually in the calendar settings." : "זיהוי אזור הזמן האוטומטי קבע שאזור הזמן שלך הוא UTC.\nזה ככל הנראה תוצאה של אמצעי אבטחה של דפדפן האינטרנט שלך.\nהגדר את אזור הזמן שלך באופן ידני בהגדרות של לוח השנה.", - "Your configured timezone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your timezone in the settings and report this issue." : "אזור הזמן שהוגדר שלך ({timezoneId}) לא נמצא. חוזר ל- UTC.\nאנא שנה את אזור הזמן שלך בהגדרות, ודיווח על בעיה זו.", - "No more events today" : "אין עוד אירועים היום", - "No upcoming events" : "אין אירועים בזמן הקרוב", + "Global" : "גלובלי", + "Subscribe" : "הרשמה", + "Time:" : "שעה:", "Create a new event" : "צור אירוע חדש", "[Today]" : "[היום]", "[Tomorrow]" : "[מחר]", @@ -232,26 +251,12 @@ OC.L10N.register( "Delete this occurrence" : "מחיקת המופע הזה", "Delete this and all future" : "מחיקת זה והבאים", "Details" : "פרטים", + "Invite" : "הזמנה", "Attendees" : "משתתפים", - "Reminders" : "תזכורות", + "Resources" : "משאבים", "Close" : "סגירה", "Show more details" : "הצגת פרטים נוספים", "Subscribe to {name}" : "הרשמה אל {name}", - "Download {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" : "חצות ביום שלפני שמתחיל האירוע", "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["יום לפני האירוע בשעה {formattedHourMinute}","יומיים לפני האירוע בשעה {formattedHourMinute}","%n ימים לפני האירוע בשעה {formattedHourMinute}","%n ימים לפני האירוע בשעה {formattedHourMinute}"], "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["שבוע לפני האירוע בשעה {formattedHourMinute}","שבועיים לפני האירוע בשעה {formattedHourMinute}","%n שבועות לפני האירוע בשעה {formattedHourMinute}","%n שבועות לפני האירוע בשעה {formattedHourMinute}"], @@ -284,14 +289,7 @@ OC.L10N.register( "Untitled event" : "אירוע ללא כותרת", "Untitled task" : "משימה ללא כותרת", "Please ask your administrator to enable the Tasks App." : "אנא בקש ממנהל המערכת להפעיל את אפליקציית ה-Tasks.", - "prev" : "הקודם", - "next" : "הבא", - "prev year" : "שנה שעברה", - "next year" : "בשנה הבאה", - "today" : "היום", - "list" : "רשימה", "W" : "W", - "all-day" : "כל היום", "%n more" : "%n עוד", "No events to display" : "אין אירועים להצגה", "_+%n more_::_+%n more_" : ["+ עוד פעם","+ עוד פעמיים","+ עוד %n פעמים","+ עוד %n פעמים"], @@ -299,59 +297,57 @@ OC.L10N.register( "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" : "אחר", "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." : "הנראות של אירוע זה בלוחות שנה משותפים.", - "Location" : "מיקום", "Add a location" : "הוסף מיקום", - "Description" : "תיאור", "Add a description" : "הוסף תיאור", "Status" : "מצב", "Confirmed" : "מאושר", - "Tentative" : "טנטטיבית", "Canceled" : "מבוטלת", "Confirmation about the overall status of the event." : "אישור לגבי הסטטוס הכללי של האירוע.", "Show as" : "הצג כ-", "Take this event into account when calculating free-busy information." : "קחו בחשבון אירוע זה בעת חישוב מידע free/busy.", - "Free" : "פנוי", "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" : "שגיאה בשיתוף הקובץ", "Chat room for event" : "חדר צ'ט לאירוע", + "An error occurred, unable to delete the calendar." : "אירעה שגיאה, לא ניתן למחוק את היומן.", "Imported {filename}" : "יובא {filename} ", "Meditation" : "מדיטציה", "Relaxing" : "מנוחה", "Relax" : "לנפוש", + "Commuting" : "בדרכים", + "Dog" : "כלב", "Presentation" : "מצגת", - "Present" : "מתנה", + "Talk" : "שיחה", "Camping" : "קֶמפִּינג (= מַחֲנָאוּת)", "Camp" : "מחנה", "Movie" : "סרט", "Cinema" : "בית קולנוע", "Graduation" : "טֶקֶס סִיוּם לימודים", "Brainstorm" : "סיעור מוחות", + "Review" : "סקירה", "Baseball" : "בייסבול = (כַּדוּר בָּסִיס)", "Meet" : "לפגוש", "Planning" : "תִכנוּן", "Pointing" : "מצביע", "Retrospective" : "רֶטרוֹספֶּקטִיבִי (=סוֹקֵר לְאָחוֹר)", - "Review" : "סקירה", "Office" : "משרד", "Contributor week" : "שבוע מנדבים", - "Party" : "מסיבה", - "Celebration" : "חגיגה", "Mail" : "דואר", "Soccer" : "כדורגל", "Football" : "פוטבול/כדורגל", "Gaming" : "גיימינג", - "Play" : "נגן", - "Game" : "משחק", "Drive" : "נהיגה", + "Driving" : "נהיגה", "Bicycle" : "אופניים", "Cycle" : "רכיבה על אופנועים", "Biking" : "רכיבה על אופניים", @@ -369,6 +365,7 @@ OC.L10N.register( "Doctor" : "רופא", "Health" : "בריאות", "Dentist" : "רופא/ת שיניים", + "Hospital" : "בית חולים", "Interview" : "ראיון", "Training" : "אימון", "Practice" : "לְתַרְגֵל", @@ -404,7 +401,10 @@ OC.L10N.register( "Lecture" : "הרצאה", "Seminar" : "סמינר", "Photograph" : "צילום", + "Party" : "מסיבה", + "Celebration" : "חגיגה", "Celebrate" : "לַחֲגוֹג", + "Birthday" : "יום הולדת", "Shopping" : "קניות", "Skate" : "לְהַחלִיק עַל מִחלָקַיִם", "Skateboard" : "רכיבה על סקייטבורד", @@ -412,6 +412,6 @@ OC.L10N.register( "Golf" : "גוֹלף", "Dinner" : "ארוחת ערב", "Lunch" : "ארוחת צהריים", - "Global" : "גלובלי" + "User not found" : "המשתמש לא נמצא" }, "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;"); diff --git a/l10n/he.json b/l10n/he.json index 0d0f219cde..cbb69adeaf 100644 --- a/l10n/he.json +++ b/l10n/he.json @@ -3,13 +3,33 @@ "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 " : "דוא\"ל נשלח בהצלחה אל", "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" : "אין אירועים בזמן הקרוב", "Calendar" : "יומן", + "Appointments" : "פגישות", + "Confirm" : "אימות", + "Date:" : "תאריך:", + "Where:" : "איפה:", + "Anniversary" : "יום השנה", + "Appointment" : "פגישה", + "Business" : "עסקי", + "Education" : "חינוך", + "Holiday" : "חג", + "Meeting" : "מפגש", + "Miscellaneous" : "שונות", + "Non-working hours" : "מחוץ לשעות העבודה", + "Not in office" : "מחוץ למשרד", + "Personal" : "אישי", + "Phone call" : "שיחת טלפון", + "Sick day" : "יום מחלה", + "Special occasion" : "אירוע מיוחד", + "Travel" : "טיול", + "Vacation" : "חופשה", "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" : "היום הקודם", @@ -18,40 +38,47 @@ "Next day" : "היום הבא", "Next week" : "השבוע הבא", "Next month" : "החודש הבא", - "+ New event" : "+ ארוע חדש", "Today" : "היום", "Day" : "יום", "Week" : "שבוע", "Month" : "חודש", + "Year" : "שנה", "List" : "רשימה", - "Untitled calendar" : "לוח שנה ללא כותרת", - "Edit name" : "ערוך שם", - "Saving name …" : "שמירת השם ...", - "Edit color" : "ערוך צבע", - "Saving color …" : "שמירת הצבע ...", - "Copy private link" : "העתקת קישור פרטי", - "Download" : "הורדה", - "Unshare from me" : "ביטול השיתוף איתי", + "Preview" : "תצוגה מקדימה", + "Copy link" : "העתקת קישור", + "Edit" : "עריכה", "Delete" : "מחיקה", + "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." : "אירעה שגיאה--לא מצליחים לשנות את צבע לוח השנה.", "_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} שניות"], + "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://‎)", + "Copy subscription link" : "העתק את קישור המנוי", + "Copying link …" : "מעתיק את הקישור  ...", + "Copied link" : "הועתק קישור", + "Could not copy link" : "לא ניתן להעתיק קישור", + "Export" : "ייצוא", + "Calendar link copied to clipboard." : "הקישור ללוח השנה הועתק ללוח הגזירים.", + "Calendar link could not be copied to clipboard." : "לא ניתן להעתיק את הקישור ללוח השנה אל לוח הגזירים.", + "Name" : "שם", + "Deleted" : "נמחק", + "Restore" : "שחזור", + "Delete permanently" : "מחיקה לצמיתות", + "Empty trash bin" : "פינוי סל האשפה", + "Could not update calendar order." : "לא היה ניתן לעדכן את סדר לוח השנה.", + "Internal link" : "קישור פנימי", + "Copy internal link" : "העתקת קישור פנימי", "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" : "הקוד הועתק", @@ -63,32 +90,22 @@ "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" : "אין משתמשים או קבוצות", "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://‎)", - "Could not update calendar order." : "לא היה ניתן לעדכן את סדר לוח השנה.", + "Share with users or groups" : "שיתוף עם משתמשים או קבוצות", + "No users or groups" : "אין משתמשים או קבוצות", + "Unshare from me" : "ביטול השיתוף איתי", + "Save" : "שמור", "Import calendars" : "יבוא לוחות שנה", "Please select a calendar to import into …" : "בחר לוח שנה לייבוא אליו …", "Filename" : "שם קובץ", "Calendar to import into" : "לוח שנה לייבוא אליו", "Cancel" : "ביטול", "_Import calendar_::_Import calendars_" : ["יבוא לוחות שנה","יבוא לוחות שנה","יבוא לוחות שנה","יבוא לוחות שנה"], - "{filename} is an unsupported file-type" : "{filename} הוא סוג קובץ שאינו נתמך", "{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 אירועים יובאו בהצלחה."], "Automatic" : "אוטומטי", "Automatic ({detected})" : "אוטומטי ({detected})", "New setting was not saved successfully." : "ההגדרה החדשה לא נשמרה בהצלחה.", @@ -101,21 +118,35 @@ "Day view" : "תצוגת יום", "Week view" : "תצוגת שבוע", "Month view" : "תצוגת חודש", + "List view" : "תצוגת רשימה", "Actions" : "פעולות", "Create event" : "יצירת אירוע", "Show shortcuts" : "הצגת קיצורי דרך", "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" : "הצגת קיצורי מקלדת", - "Settings & import" : "הגדרות וייבוא", + "No reminder" : "אין תזכורת", "CalDAV link copied to clipboard." : "קישור ה־CalDAV הועתק ללוח הגזירים.", "CalDAV link could not be copied to clipboard." : "לא ניתן להעתיק את קישור ה־CalDAV ללוח הגזירים.", + "Location" : "מיקום", + "Description" : "תיאור", + "Duration" : "משך", + "to" : "אל", + "Add" : "הוספה", + "Monday" : "יום שני", + "Tuesday" : "יום שלישי", + "Wednesday" : "יום רביעי", + "Thursday" : "יום חמישי", + "Friday" : "יום שישי", + "Saturday" : "יום שבת", + "Sunday" : "יום ראשון", + "Update" : "עדכון", + "Your email address" : "כתובת הדוא״ל שלך", "before at" : "לפני", "Notification" : "הוֹדָעָה", "Email" : "דוא״ל", @@ -134,50 +165,47 @@ "_hour_::_hours_" : ["שעה","שעתיים","שעות","שעות"], "_day_::_days_" : ["יום","יומיים","ימים","ימים"], "_week_::_weeks_" : ["שבוע","שבועיים","שבועות","שבועות"], - "No reminders yet" : "אין תזכורות עדיין", + "Delete file" : "מחיקת קבצים", + "Choose a file to add as attachment" : "בחירת קובץ להוספה כקובץ מצורף", + "Choose a file to share as a link" : "נא לבחור קובץ לשיתוף כקישור", + "Available" : "זמינות", "Availability of attendees, resources and rooms" : "זמינות של משתתפים, משאבים וחדרים", + "Free" : "פנוי", "Busy (tentative)" : "תפוס (טנטטיבי)", "Busy" : "עסוק", "Out of office" : "מחוץ למשרד", "Unknown" : "לא ידוע", - "{name} accepted your invitation." : "{name} קיבל את ההזמנה שלך.", - "{name} accepted {organizerName}'s invitation." : "{name} קיבל את ההזמנה של {organizerName}.", - "{name} declined your invitation." : "{name} דחה את הזמנתך.", - "{name} declined {organizerName}'s invitation." : "{name} דחה את ההזמנה של {organizerName}.", - "{name} has delegated their invitation." : "{name} האציל את ההזמנה שלהם.", - "{name} marked their participation as tentative." : "{שם} סימנה את השתתפותם כטנטטיבי.", - "{name} did not respond to your invitation yet." : "{name} עדיין לא הגיב להזמנתך.", - "{name} did not respond to {organizerName}'s invitation yet." : "{name} עדיין לא נענה להזמנה של {organizerName}.", + "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 e-mail" : "שלח דוא\"ל", + "Send email" : "שליחת דואר אלקטרוני", "Chairperson" : "יושב ראש", "Required participant" : "משתתף חובה", "Optional participant" : "משתתף אופציונלי", "Non-participant" : "לא משתתף", "Remove attendee" : "הסר את המשתתף", - "Search for e-mails, users, contacts, resources or rooms" : "חפש הודעות דואר אלקטרוני, משתמשים, אנשי קשר, משאבים, או חדרים", "No match found" : "לא נמצאה התאמה", - "No attendees 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" : "כל היום", - "Can not modify all-day setting for events that are part of a recurrence-set." : "לא ניתן לשנות את הגדרת all-day לאירועים שהם חלק מ-recurrence-set.", "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" : "לעולם לא", "on date" : "בתאריך", "after" : "לאחר", "_time_::_times_" : ["בשעה","בשעה","בשעה","בשעות"], - "This event is the recurrence-exception of a recurrence-set. You can not add a recurrence-rule to it." : "אירוע זה הוא ה-recurrence-exception של recurrence-set. אינך יכול להוסיף לו recurrence-rule.", "first" : "ראשון", "third" : "שלישי", "fourth" : "רביעי", @@ -185,25 +213,19 @@ "second to last" : "אחד לפני האחרון", "last" : "אחרון", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "שינויים ב-recurrence-rule יחולו רק על האירוע הזה ועל כל אירועים עתידיים.", - "Repeat" : "חזרה", "Repeat every" : "חזור על כל", "By day of the month" : "לפי היום בחודש", "On the" : "על", "_month_::_months_" : ["חודש","חודשיים","חודשים","חודשים"], "_year_::_years_" : ["שנה","שנתיים","שנים","שנים"], - "Monday" : "יום שני", "weekday" : "יום בשבוע", "weekend day" : "יום בסופ״ש", - "Summary" : "תקציר", "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" : "יותר", - "Save" : "שמור", - "Update" : "עדכון", "Update this occurrence" : "עדכון המופע הזה", "Update this and all future" : "עדכון של זה והעתידיים", "Public calendar does not exist" : "לוח השנה הציבורי אינו קיים", "Maybe the share was deleted or has expired?" : "אולי השיתוף נמחק או פג תוקפו?", - "Please select a timezone:" : "אנא בחר אזור זמן:", "Pick a time" : "בחר זמן", "Pick a date" : "תבחר תאריך", "from {formattedDate}" : "מ- {formattedDate}", @@ -215,12 +237,9 @@ "{formattedDate} at {formattedTime}" : "{formattedDate} בשעה {formattedTime}", "Please enter a valid date" : "נא להקליד תאריך תקני", "Please enter a valid date and time" : "נא להקליד שעה ותאריך תקניים", - "Type to search timezone" : "יש להקליד כדי לחפש אזור זמן", - "Personal" : "אישי", - "The automatic timezone detection determined your timezone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your timezone manually in the calendar settings." : "זיהוי אזור הזמן האוטומטי קבע שאזור הזמן שלך הוא UTC.\nזה ככל הנראה תוצאה של אמצעי אבטחה של דפדפן האינטרנט שלך.\nהגדר את אזור הזמן שלך באופן ידני בהגדרות של לוח השנה.", - "Your configured timezone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your timezone in the settings and report this issue." : "אזור הזמן שהוגדר שלך ({timezoneId}) לא נמצא. חוזר ל- UTC.\nאנא שנה את אזור הזמן שלך בהגדרות, ודיווח על בעיה זו.", - "No more events today" : "אין עוד אירועים היום", - "No upcoming events" : "אין אירועים בזמן הקרוב", + "Global" : "גלובלי", + "Subscribe" : "הרשמה", + "Time:" : "שעה:", "Create a new event" : "צור אירוע חדש", "[Today]" : "[היום]", "[Tomorrow]" : "[מחר]", @@ -230,26 +249,12 @@ "Delete this occurrence" : "מחיקת המופע הזה", "Delete this and all future" : "מחיקת זה והבאים", "Details" : "פרטים", + "Invite" : "הזמנה", "Attendees" : "משתתפים", - "Reminders" : "תזכורות", + "Resources" : "משאבים", "Close" : "סגירה", "Show more details" : "הצגת פרטים נוספים", "Subscribe to {name}" : "הרשמה אל {name}", - "Download {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" : "חצות ביום שלפני שמתחיל האירוע", "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["יום לפני האירוע בשעה {formattedHourMinute}","יומיים לפני האירוע בשעה {formattedHourMinute}","%n ימים לפני האירוע בשעה {formattedHourMinute}","%n ימים לפני האירוע בשעה {formattedHourMinute}"], "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["שבוע לפני האירוע בשעה {formattedHourMinute}","שבועיים לפני האירוע בשעה {formattedHourMinute}","%n שבועות לפני האירוע בשעה {formattedHourMinute}","%n שבועות לפני האירוע בשעה {formattedHourMinute}"], @@ -282,14 +287,7 @@ "Untitled event" : "אירוע ללא כותרת", "Untitled task" : "משימה ללא כותרת", "Please ask your administrator to enable the Tasks App." : "אנא בקש ממנהל המערכת להפעיל את אפליקציית ה-Tasks.", - "prev" : "הקודם", - "next" : "הבא", - "prev year" : "שנה שעברה", - "next year" : "בשנה הבאה", - "today" : "היום", - "list" : "רשימה", "W" : "W", - "all-day" : "כל היום", "%n more" : "%n עוד", "No events to display" : "אין אירועים להצגה", "_+%n more_::_+%n more_" : ["+ עוד פעם","+ עוד פעמיים","+ עוד %n פעמים","+ עוד %n פעמים"], @@ -297,59 +295,57 @@ "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" : "אחר", "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." : "הנראות של אירוע זה בלוחות שנה משותפים.", - "Location" : "מיקום", "Add a location" : "הוסף מיקום", - "Description" : "תיאור", "Add a description" : "הוסף תיאור", "Status" : "מצב", "Confirmed" : "מאושר", - "Tentative" : "טנטטיבית", "Canceled" : "מבוטלת", "Confirmation about the overall status of the event." : "אישור לגבי הסטטוס הכללי של האירוע.", "Show as" : "הצג כ-", "Take this event into account when calculating free-busy information." : "קחו בחשבון אירוע זה בעת חישוב מידע free/busy.", - "Free" : "פנוי", "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" : "שגיאה בשיתוף הקובץ", "Chat room for event" : "חדר צ'ט לאירוע", + "An error occurred, unable to delete the calendar." : "אירעה שגיאה, לא ניתן למחוק את היומן.", "Imported {filename}" : "יובא {filename} ", "Meditation" : "מדיטציה", "Relaxing" : "מנוחה", "Relax" : "לנפוש", + "Commuting" : "בדרכים", + "Dog" : "כלב", "Presentation" : "מצגת", - "Present" : "מתנה", + "Talk" : "שיחה", "Camping" : "קֶמפִּינג (= מַחֲנָאוּת)", "Camp" : "מחנה", "Movie" : "סרט", "Cinema" : "בית קולנוע", "Graduation" : "טֶקֶס סִיוּם לימודים", "Brainstorm" : "סיעור מוחות", + "Review" : "סקירה", "Baseball" : "בייסבול = (כַּדוּר בָּסִיס)", "Meet" : "לפגוש", "Planning" : "תִכנוּן", "Pointing" : "מצביע", "Retrospective" : "רֶטרוֹספֶּקטִיבִי (=סוֹקֵר לְאָחוֹר)", - "Review" : "סקירה", "Office" : "משרד", "Contributor week" : "שבוע מנדבים", - "Party" : "מסיבה", - "Celebration" : "חגיגה", "Mail" : "דואר", "Soccer" : "כדורגל", "Football" : "פוטבול/כדורגל", "Gaming" : "גיימינג", - "Play" : "נגן", - "Game" : "משחק", "Drive" : "נהיגה", + "Driving" : "נהיגה", "Bicycle" : "אופניים", "Cycle" : "רכיבה על אופנועים", "Biking" : "רכיבה על אופניים", @@ -367,6 +363,7 @@ "Doctor" : "רופא", "Health" : "בריאות", "Dentist" : "רופא/ת שיניים", + "Hospital" : "בית חולים", "Interview" : "ראיון", "Training" : "אימון", "Practice" : "לְתַרְגֵל", @@ -402,7 +399,10 @@ "Lecture" : "הרצאה", "Seminar" : "סמינר", "Photograph" : "צילום", + "Party" : "מסיבה", + "Celebration" : "חגיגה", "Celebrate" : "לַחֲגוֹג", + "Birthday" : "יום הולדת", "Shopping" : "קניות", "Skate" : "לְהַחלִיק עַל מִחלָקַיִם", "Skateboard" : "רכיבה על סקייטבורד", @@ -410,6 +410,6 @@ "Golf" : "גוֹלף", "Dinner" : "ארוחת ערב", "Lunch" : "ארוחת צהריים", - "Global" : "גלובלי" + "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;" } \ No newline at end of file diff --git a/l10n/hr.js b/l10n/hr.js index 7ca171151d..d267a9b82f 100644 --- a/l10n/hr.js +++ b/l10n/hr.js @@ -5,13 +5,34 @@ OC.L10N.register( "Provided email-address is not valid" : "Unesena adresa e-pošte nije važeća", "%s has published the calendar »%s«" : "%s je objavio kalendar »%s«", "Unexpected error sending email. Please contact your administrator." : "Došlo je do pogreške pri slanju poruke e-pošte. Obratite se svom administratoru.", - "Successfully sent email to " : "Poruka e-pošte uspješno poslana ", + "Successfully sent email to %1$s" : "Poruka e-pošte uspješno je poslana na %1$s", "Hello," : "Pozdrav,", "We wanted to inform you that %s has published the calendar »%s«." : "htjeli bismo vas obavijestiti da je %s objavio kalendar »%s«.", "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", + "Date:" : "Datum:", + "Where:" : "Gdje:", + "Anniversary" : "Godišnjica", + "Appointment" : "Dogovor", + "Business" : "Poslovno", + "Education" : "Obrazovno", + "Holiday" : "Blagdan/praznik", + "Meeting" : "Sastanak", + "Miscellaneous" : "Razno", + "Non-working hours" : "Neradni sati", + "Not in office" : "Nije u uredu", + "Personal" : "Osobno", + "Phone call" : "Telefonski poziv", + "Sick day" : "Bolovanje", + "Special occasion" : "Poseban događaj", + "Travel" : "Putovanje", + "Vacation" : "Odmor", "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", @@ -19,41 +40,55 @@ OC.L10N.register( "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", - "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", - "Download" : "Preuzmi", - "Unshare from me" : "Prekid dijeljenja sa mnom", + "Preview" : "Pretpregled", + "Copy link" : "Kopiraj poveznicu", + "Edit" : "Uredi", "Delete" : "Izbriši", + "Untitled calendar" : "Kalendar bez naslova", + "Shared with you by" : "S vama podijelio", "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.", "_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"], + "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://)", + "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", + "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.", + "Trash bin" : "Kanta za smeće", + "Name" : "Naziv", + "Deleted" : "Izbrisano", + "Restore" : "Vrati", + "Delete permanently" : "Trajno izbrišite", + "Empty trash bin" : "Isprazni kantu za smeće", + "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?", + "Could not update calendar order." : "Ažuriranje redoslijeda kalendara nije uspjelo.", + "Internal link" : "Interna poveznica", + "Copy internal link" : "Kopiraj internu poveznicu", "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", @@ -65,32 +100,22 @@ OC.L10N.register( "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", "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://)", - "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", "Calendar to import into" : "Kalendar za uvoz", "Cancel" : "Odustani", "_Import calendar_::_Import calendars_" : ["Uvezi kalendar","Uvezi kalendare","Uvezi kalendare"], - "{filename} is an unsupported file-type" : "{filename} je nepodržana vrsta datoteke", "{filename} could not be parsed" : "Nije moguće parsirati {filename}", "No valid files found, aborting import" : "Nisu pronađene važeće datoteke, uvoz je otkazan", "Import partially failed. Imported {accepted} out of {total}." : "Djelomično neuspješan uvoz. Uvezeno {accepted} od {total}.", - "_Successfully imported %n event_::_Successfully imported %n events._" : ["Uspješan uvoz %n događaja","Uspješan uvoz %n događaja.","Uspješan uvoz %n događaja."], "Automatic" : "Automatsko", "Automatic ({detected})" : "Automatsko ({detected})", "New setting was not saved successfully." : "Nova postavka nije uspješno spremljena.", @@ -103,21 +128,40 @@ OC.L10N.register( "Day view" : "Dnevni prikaz", "Week view" : "Tjedni prikaz", "Month view" : "Mjesečni prikaz", + "List view" : "Prikaz popisa", "Actions" : "Radnje", "Create event" : "Stvori događaj", "Show shortcuts" : "Prikaži prečace", "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", + "Default reminder" : "Zadani podsjetnik", "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", - "Settings & import" : "Postavke i uvoz", + "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.", + "Location" : "Lokacija", + "Description" : "Opis", + "Visibility" : "Vidljivost", + "Duration" : "Trajanje", + "to" : "do", + "Delete slot" : "Izbriši mjesto", + "Add" : "Dodaj", + "Monday" : "Ponedjeljak", + "Tuesday" : "Utorak", + "Wednesday" : "Srijeda", + "Thursday" : "Četvrtak", + "Friday" : "Petak", + "Saturday" : "Subota", + "Sunday" : "Nedjelja", + "Update" : "Ažuriraj", + "Your email address" : "Vaša adresa e-pošte", + "Reminder" : "Podsjetnik", "before at" : "prije u", "Notification" : "Obavijest", "Email" : "E-pošta", @@ -131,55 +175,58 @@ OC.L10N.register( "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"], - "No reminders yet" : "Još nema podsjetnika", + "Delete file" : "Izbriši datoteku", + "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", + "Available" : "Dostupno", + "Not available" : "Nije dostupno", "Availability of attendees, resources and rooms" : "Raspoloživost sudionika, resursa i soba", + "{organizer} (organizer)" : "{organizer} (organizator)", + "Free" : "Dostupno", "Busy (tentative)" : "Zauzeto (uvjetno)", "Busy" : "Zauzeto", "Out of office" : "Izvan ureda", "Unknown" : "Nepoznato", - "{name} accepted your invitation." : "{name} je prihvatio vaš poziv.", - "{name} accepted {organizerName}'s invitation." : "{name} je prihvatio poziv {organizerName}.", - "{name} declined your invitation." : "{name} je odbio vaš poziv.", - "{name} declined {organizerName}'s invitation." : "{name} je odbio poziv {organizerName}.", - "{name} has delegated their invitation." : "{name} je delegirao svoj poziv.", - "{name} marked their participation as tentative." : "{name} je označio svoje sudjelovanje kao uvjetno.", - "{name} did not respond to your invitation yet." : "{name} još nije odgovorio na vaš poziv.", - "{name} did not respond to {organizerName}'s invitation yet." : "{name} još nije odgovorio na poziv {organizerName}.", + "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 e-mail" : "Pošalji poruku e-pošte", + "Send email" : "Pošalji poruku e-pošte", "Chairperson" : "Predsjednik", "Required participant" : "Obavezan sudionik", "Optional participant" : "Neobavezan sudionik", "Non-participant" : "Nije sudionik", "Remove attendee" : "Ukloni sudionika", - "Search for e-mails, users, contacts, resources or rooms" : "Traži poruke e-pošte, korisnike, kontakte, resurse ili sobe", + "Search for emails, users or contacts" : "Potražite poruke e-pošte, korisnike ili kontakte", "No match found" : "Nema podudaranja", - "No attendees yet" : "Još nema sudionika", "(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", - "Can not 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.", + "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}", + "Repeat" : "Ponovi", "End repeat" : "Završi ponavljanje", "Select to end repeat" : "Odaberi za završetak ponavljanja", "never" : "nikad", "on date" : "na datum", "after" : "nakon", "_time_::_times_" : ["put","puta","puta"], - "This event is the recurrence-exception of a recurrence-set. You can not add a recurrence-rule to it." : "Ovaj događaj je iznimka ponavljanja skupa ponavljanja. Ne možete mu dodati pravilo 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", @@ -187,25 +234,37 @@ OC.L10N.register( "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" : "Ponovi", "Repeat every" : "Ponovi svakih", "By day of the month" : "Do dana u mjesecu", "On the" : "Na", "_month_::_months_" : ["mjesec","mjeseci","mjeseci"], "_year_::_years_" : ["godinu","godina","godina"], - "Monday" : "Ponedjeljak", "weekday" : "dan u tjednu", "weekend day" : "dan vikendom", - "Summary" : "Sažetak", + "No recurrence" : "Nema ponavljanja", "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", + "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", + "Room type" : "Vrsta sobe", + "Any" : "Bilo koji", + "Minimum seating capacity" : "Minimalni broj sjedala", "More" : "Više", - "Save" : "Spremi", - "Update" : "Ažuriraj", "Update this occurrence" : "Ažuriraj ovo ponavljanje", "Update this and all future" : "Ažuriraj ovo i sva buduća ponavljanja", "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 timezone:" : "Odaberite vremensku zonu:", + "Please select a time zone:" : "Odaberite vremensku zonu:", "Pick a time" : "Odaberi vrijeme", "Pick a date" : "Odaberi datum", "from {formattedDate}" : "od {formattedDate}", @@ -217,12 +276,13 @@ 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", - "Type to search timezone" : "Upišite za pretraživanje vremenskih zona", - "Personal" : "Osobno", - "The automatic timezone detection determined your timezone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your timezone 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 timezone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your timezone 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", + "Type to search time zone" : "Upišite za pretraživanje vremenskih zona", + "Global" : "Globalno", + "Subscribed" : "Pretplaćen", + "Subscribe" : "Preplata", + "Time:" : "Vrijeme:", + "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.", "Create a new event" : "Stvorite novi događaj", "[Today]" : "[Danas]", "[Tomorrow]" : "[Sutra]", @@ -232,26 +292,12 @@ OC.L10N.register( "Delete this occurrence" : "Izbriši ovo ponavljanje", "Delete this and all future" : "Izbriši ovo i sva buduća ponavljanja", "Details" : "Pojedinosti", + "Invite" : "Poziv", "Attendees" : "Sudionici", - "Reminders" : "Podsjetnici", + "Resources" : "Resursi", "Close" : "Zatvori", "Show more details" : "Prikaži više pojedinosti", "Subscribe to {name}" : "Pretplati se na {name}", - "Download {name}" : "Preuzmi {name}", - "Anniversary" : "Godišnjica", - "Appointment" : "Dogovor", - "Business" : "Poslovno", - "Education" : "Obrazovno", - "Holiday" : "Blagdan/praznik", - "Meeting" : "Sastanak", - "Miscellaneous" : "Razno", - "Non-working hours" : "Neradni sati", - "Not in office" : "Nije u uredu", - "Phone call" : "Telefonski poziv", - "Sick day" : "Bolovanje", - "Special occasion" : "Poseban događaj", - "Travel" : "Putovanje", - "Vacation" : "Odmor", "Midnight on the day the event starts" : "Ponoć na dan početka događaja", "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n dan prije početka događaja u {formattedHourMinute}","%n dana prije početka događaja u {formattedHourMinute}","%n dana prije početka događaja u {formattedHourMinute}"], "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n tjedan prije početka događaja u {formattedHourMinute}","%n tjedana prije početka događaja u {formattedHourMinute}","%n tjedana prije početka događaja u {formattedHourMinute}"], @@ -284,14 +330,7 @@ OC.L10N.register( "Untitled event" : "Događaj bez naslova", "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ći", - "prev year" : "pret. godina", - "next year" : "sljedeće godine", - "today" : "danas", - "list" : "popis", "W" : "W", - "all-day" : "cijeli dan", "%n more" : "još %n", "No events to display" : "Nema događaja za prikaz", "_+%n more_::_+%n more_" : ["+%n više","+%n više","+%n više"], @@ -299,62 +338,64 @@ OC.L10N.register( "Create a new event or change the visible time-range" : "Stvorite novi događaj ili promijenite vidljivi vremenski raspon", "It might have been deleted, or there was a typo in a link" : "Možda je izbrisan ili postoji tipfeler u poveznici", "It might have been deleted, or there was a typo in the link" : "Možda je izbrisan ili postoji tipfeler u poveznici", + "Meeting room" : "Soba za sastanke", + "Lecture hall" : "Predavaonica", + "Seminar room" : "Soba za seminare", + "Other" : "Drugo", "When shared show" : "Kada se dijeli, prikaži", "When shared show full event" : "Kada se dijeli, prikaži cijeli događaj", "When shared show only busy" : "Kada se dijeli, prikaži samo zauzeto", "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.", - "Location" : "Lokacija", "Add a location" : "Dodaj lokaciju", - "Description" : "Opis", "Add a description" : "Dodaj opis", "Status" : "Status", "Confirmed" : "Potvrđeno", - "Tentative" : "Uvjetno", "Canceled" : "Otkazano", "Confirmation about the overall status of the event." : "Potvrda cjelokupnog statusa događaja.", "Show as" : "Prikaži kao", "Take this event into account when calculating free-busy information." : "Uzmite ovaj događaj u obzir pri izračunu informacija o dostupnosti i zauzeću.", - "Free" : "Dostupno", "Categories" : "Kategorije", "Categories help you to structure and organize your events." : "Kategorije vam pomažu odrediti strukturu i organizirati događaj.", "Search or add categories" : "Pretraži ili dodaj kategorije", "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.", + "Error while sharing file" : "Pogreška pri dijeljenju datoteke", "Chat room for event" : "Soba za razmjenu poruka za događaj", + "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", - "Present" : "Prezentiraj", + "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", - "Review" : "Pregled", "Office" : "Ured", "Contributor week" : "Tjedan suradnika", - "Party" : "Tulum", - "Celebration" : "Proslava", "Mail" : "Pošta", "Soccer" : "Nogomet", "Football" : "Nogomet", "Gaming" : "Igranje", - "Play" : "Zabava", - "Game" : "Igra", "Drive" : "Vožnja", + "Driving" : "Vožnja", "Bicycle" : "Bicikl", "Cycle" : "Vožnja biciklom", "Biking" : "Biciklizam", + "Bike" : "Bicikl", "Podcast" : "Podcast", "Basketball" : "Košarka", "Fishing" : "Ribolov", @@ -369,6 +410,7 @@ OC.L10N.register( "Doctor" : "Liječnik", "Health" : "Zdravlje", "Dentist" : "Stomatolog", + "Hospital" : "Bolnica", "Interview" : "Razgovor", "Training" : "Trening", "Practice" : "Vježba", @@ -380,6 +422,8 @@ OC.L10N.register( "Barber" : "Brijač", "Haircut" : "Frizura", "Exam" : "Ispit", + "Written test" : "Pisani ispit", + "Oral test" : "Usmeni ispit", "Working" : "Rad", "New Years Eve" : "Stara godina", "NYE" : "NYE", @@ -404,7 +448,10 @@ OC.L10N.register( "Lecture" : "Predavanje", "Seminar" : "Seminar", "Photograph" : "Fotografija", + "Party" : "Tulum", + "Celebration" : "Proslava", "Celebrate" : "Slavlje", + "Birthday" : "Rođendan", "Shopping" : "Kupnja", "Skate" : "Koturanje", "Skateboard" : "Daska za koturanje", @@ -412,6 +459,6 @@ OC.L10N.register( "Golf" : "Golf", "Dinner" : "Večera", "Lunch" : "Ručak", - "Global" : "Globalno" + "User not found" : "Korisnik nije pronađen" }, "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 c39a6d1c37..9b19415b59 100644 --- a/l10n/hr.json +++ b/l10n/hr.json @@ -3,13 +3,34 @@ "Provided email-address is not valid" : "Unesena adresa e-pošte nije važeća", "%s has published the calendar »%s«" : "%s je objavio kalendar »%s«", "Unexpected error sending email. Please contact your administrator." : "Došlo je do pogreške pri slanju poruke e-pošte. Obratite se svom administratoru.", - "Successfully sent email to " : "Poruka e-pošte uspješno poslana ", + "Successfully sent email to %1$s" : "Poruka e-pošte uspješno je poslana na %1$s", "Hello," : "Pozdrav,", "We wanted to inform you that %s has published the calendar »%s«." : "htjeli bismo vas obavijestiti da je %s objavio kalendar »%s«.", "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", + "Date:" : "Datum:", + "Where:" : "Gdje:", + "Anniversary" : "Godišnjica", + "Appointment" : "Dogovor", + "Business" : "Poslovno", + "Education" : "Obrazovno", + "Holiday" : "Blagdan/praznik", + "Meeting" : "Sastanak", + "Miscellaneous" : "Razno", + "Non-working hours" : "Neradni sati", + "Not in office" : "Nije u uredu", + "Personal" : "Osobno", + "Phone call" : "Telefonski poziv", + "Sick day" : "Bolovanje", + "Special occasion" : "Poseban događaj", + "Travel" : "Putovanje", + "Vacation" : "Odmor", "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", @@ -17,41 +38,55 @@ "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", - "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", - "Download" : "Preuzmi", - "Unshare from me" : "Prekid dijeljenja sa mnom", + "Preview" : "Pretpregled", + "Copy link" : "Kopiraj poveznicu", + "Edit" : "Uredi", "Delete" : "Izbriši", + "Untitled calendar" : "Kalendar bez naslova", + "Shared with you by" : "S vama podijelio", "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.", "_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"], + "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://)", + "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", + "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.", + "Trash bin" : "Kanta za smeće", + "Name" : "Naziv", + "Deleted" : "Izbrisano", + "Restore" : "Vrati", + "Delete permanently" : "Trajno izbrišite", + "Empty trash bin" : "Isprazni kantu za smeće", + "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?", + "Could not update calendar order." : "Ažuriranje redoslijeda kalendara nije uspjelo.", + "Internal link" : "Interna poveznica", + "Copy internal link" : "Kopiraj internu poveznicu", "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", @@ -63,32 +98,22 @@ "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", "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://)", - "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", "Calendar to import into" : "Kalendar za uvoz", "Cancel" : "Odustani", "_Import calendar_::_Import calendars_" : ["Uvezi kalendar","Uvezi kalendare","Uvezi kalendare"], - "{filename} is an unsupported file-type" : "{filename} je nepodržana vrsta datoteke", "{filename} could not be parsed" : "Nije moguće parsirati {filename}", "No valid files found, aborting import" : "Nisu pronađene važeće datoteke, uvoz je otkazan", "Import partially failed. Imported {accepted} out of {total}." : "Djelomično neuspješan uvoz. Uvezeno {accepted} od {total}.", - "_Successfully imported %n event_::_Successfully imported %n events._" : ["Uspješan uvoz %n događaja","Uspješan uvoz %n događaja.","Uspješan uvoz %n događaja."], "Automatic" : "Automatsko", "Automatic ({detected})" : "Automatsko ({detected})", "New setting was not saved successfully." : "Nova postavka nije uspješno spremljena.", @@ -101,21 +126,40 @@ "Day view" : "Dnevni prikaz", "Week view" : "Tjedni prikaz", "Month view" : "Mjesečni prikaz", + "List view" : "Prikaz popisa", "Actions" : "Radnje", "Create event" : "Stvori događaj", "Show shortcuts" : "Prikaži prečace", "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", + "Default reminder" : "Zadani podsjetnik", "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", - "Settings & import" : "Postavke i uvoz", + "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.", + "Location" : "Lokacija", + "Description" : "Opis", + "Visibility" : "Vidljivost", + "Duration" : "Trajanje", + "to" : "do", + "Delete slot" : "Izbriši mjesto", + "Add" : "Dodaj", + "Monday" : "Ponedjeljak", + "Tuesday" : "Utorak", + "Wednesday" : "Srijeda", + "Thursday" : "Četvrtak", + "Friday" : "Petak", + "Saturday" : "Subota", + "Sunday" : "Nedjelja", + "Update" : "Ažuriraj", + "Your email address" : "Vaša adresa e-pošte", + "Reminder" : "Podsjetnik", "before at" : "prije u", "Notification" : "Obavijest", "Email" : "E-pošta", @@ -129,55 +173,58 @@ "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"], - "No reminders yet" : "Još nema podsjetnika", + "Delete file" : "Izbriši datoteku", + "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", + "Available" : "Dostupno", + "Not available" : "Nije dostupno", "Availability of attendees, resources and rooms" : "Raspoloživost sudionika, resursa i soba", + "{organizer} (organizer)" : "{organizer} (organizator)", + "Free" : "Dostupno", "Busy (tentative)" : "Zauzeto (uvjetno)", "Busy" : "Zauzeto", "Out of office" : "Izvan ureda", "Unknown" : "Nepoznato", - "{name} accepted your invitation." : "{name} je prihvatio vaš poziv.", - "{name} accepted {organizerName}'s invitation." : "{name} je prihvatio poziv {organizerName}.", - "{name} declined your invitation." : "{name} je odbio vaš poziv.", - "{name} declined {organizerName}'s invitation." : "{name} je odbio poziv {organizerName}.", - "{name} has delegated their invitation." : "{name} je delegirao svoj poziv.", - "{name} marked their participation as tentative." : "{name} je označio svoje sudjelovanje kao uvjetno.", - "{name} did not respond to your invitation yet." : "{name} još nije odgovorio na vaš poziv.", - "{name} did not respond to {organizerName}'s invitation yet." : "{name} još nije odgovorio na poziv {organizerName}.", + "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 e-mail" : "Pošalji poruku e-pošte", + "Send email" : "Pošalji poruku e-pošte", "Chairperson" : "Predsjednik", "Required participant" : "Obavezan sudionik", "Optional participant" : "Neobavezan sudionik", "Non-participant" : "Nije sudionik", "Remove attendee" : "Ukloni sudionika", - "Search for e-mails, users, contacts, resources or rooms" : "Traži poruke e-pošte, korisnike, kontakte, resurse ili sobe", + "Search for emails, users or contacts" : "Potražite poruke e-pošte, korisnike ili kontakte", "No match found" : "Nema podudaranja", - "No attendees yet" : "Još nema sudionika", "(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", - "Can not 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.", + "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}", + "Repeat" : "Ponovi", "End repeat" : "Završi ponavljanje", "Select to end repeat" : "Odaberi za završetak ponavljanja", "never" : "nikad", "on date" : "na datum", "after" : "nakon", "_time_::_times_" : ["put","puta","puta"], - "This event is the recurrence-exception of a recurrence-set. You can not add a recurrence-rule to it." : "Ovaj događaj je iznimka ponavljanja skupa ponavljanja. Ne možete mu dodati pravilo 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", @@ -185,25 +232,37 @@ "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" : "Ponovi", "Repeat every" : "Ponovi svakih", "By day of the month" : "Do dana u mjesecu", "On the" : "Na", "_month_::_months_" : ["mjesec","mjeseci","mjeseci"], "_year_::_years_" : ["godinu","godina","godina"], - "Monday" : "Ponedjeljak", "weekday" : "dan u tjednu", "weekend day" : "dan vikendom", - "Summary" : "Sažetak", + "No recurrence" : "Nema ponavljanja", "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", + "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", + "Room type" : "Vrsta sobe", + "Any" : "Bilo koji", + "Minimum seating capacity" : "Minimalni broj sjedala", "More" : "Više", - "Save" : "Spremi", - "Update" : "Ažuriraj", "Update this occurrence" : "Ažuriraj ovo ponavljanje", "Update this and all future" : "Ažuriraj ovo i sva buduća ponavljanja", "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 timezone:" : "Odaberite vremensku zonu:", + "Please select a time zone:" : "Odaberite vremensku zonu:", "Pick a time" : "Odaberi vrijeme", "Pick a date" : "Odaberi datum", "from {formattedDate}" : "od {formattedDate}", @@ -215,12 +274,13 @@ "{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", - "Type to search timezone" : "Upišite za pretraživanje vremenskih zona", - "Personal" : "Osobno", - "The automatic timezone detection determined your timezone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your timezone 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 timezone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your timezone 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", + "Type to search time zone" : "Upišite za pretraživanje vremenskih zona", + "Global" : "Globalno", + "Subscribed" : "Pretplaćen", + "Subscribe" : "Preplata", + "Time:" : "Vrijeme:", + "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.", "Create a new event" : "Stvorite novi događaj", "[Today]" : "[Danas]", "[Tomorrow]" : "[Sutra]", @@ -230,26 +290,12 @@ "Delete this occurrence" : "Izbriši ovo ponavljanje", "Delete this and all future" : "Izbriši ovo i sva buduća ponavljanja", "Details" : "Pojedinosti", + "Invite" : "Poziv", "Attendees" : "Sudionici", - "Reminders" : "Podsjetnici", + "Resources" : "Resursi", "Close" : "Zatvori", "Show more details" : "Prikaži više pojedinosti", "Subscribe to {name}" : "Pretplati se na {name}", - "Download {name}" : "Preuzmi {name}", - "Anniversary" : "Godišnjica", - "Appointment" : "Dogovor", - "Business" : "Poslovno", - "Education" : "Obrazovno", - "Holiday" : "Blagdan/praznik", - "Meeting" : "Sastanak", - "Miscellaneous" : "Razno", - "Non-working hours" : "Neradni sati", - "Not in office" : "Nije u uredu", - "Phone call" : "Telefonski poziv", - "Sick day" : "Bolovanje", - "Special occasion" : "Poseban događaj", - "Travel" : "Putovanje", - "Vacation" : "Odmor", "Midnight on the day the event starts" : "Ponoć na dan početka događaja", "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n dan prije početka događaja u {formattedHourMinute}","%n dana prije početka događaja u {formattedHourMinute}","%n dana prije početka događaja u {formattedHourMinute}"], "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n tjedan prije početka događaja u {formattedHourMinute}","%n tjedana prije početka događaja u {formattedHourMinute}","%n tjedana prije početka događaja u {formattedHourMinute}"], @@ -282,14 +328,7 @@ "Untitled event" : "Događaj bez naslova", "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ći", - "prev year" : "pret. godina", - "next year" : "sljedeće godine", - "today" : "danas", - "list" : "popis", "W" : "W", - "all-day" : "cijeli dan", "%n more" : "još %n", "No events to display" : "Nema događaja za prikaz", "_+%n more_::_+%n more_" : ["+%n više","+%n više","+%n više"], @@ -297,62 +336,64 @@ "Create a new event or change the visible time-range" : "Stvorite novi događaj ili promijenite vidljivi vremenski raspon", "It might have been deleted, or there was a typo in a link" : "Možda je izbrisan ili postoji tipfeler u poveznici", "It might have been deleted, or there was a typo in the link" : "Možda je izbrisan ili postoji tipfeler u poveznici", + "Meeting room" : "Soba za sastanke", + "Lecture hall" : "Predavaonica", + "Seminar room" : "Soba za seminare", + "Other" : "Drugo", "When shared show" : "Kada se dijeli, prikaži", "When shared show full event" : "Kada se dijeli, prikaži cijeli događaj", "When shared show only busy" : "Kada se dijeli, prikaži samo zauzeto", "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.", - "Location" : "Lokacija", "Add a location" : "Dodaj lokaciju", - "Description" : "Opis", "Add a description" : "Dodaj opis", "Status" : "Status", "Confirmed" : "Potvrđeno", - "Tentative" : "Uvjetno", "Canceled" : "Otkazano", "Confirmation about the overall status of the event." : "Potvrda cjelokupnog statusa događaja.", "Show as" : "Prikaži kao", "Take this event into account when calculating free-busy information." : "Uzmite ovaj događaj u obzir pri izračunu informacija o dostupnosti i zauzeću.", - "Free" : "Dostupno", "Categories" : "Kategorije", "Categories help you to structure and organize your events." : "Kategorije vam pomažu odrediti strukturu i organizirati događaj.", "Search or add categories" : "Pretraži ili dodaj kategorije", "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.", + "Error while sharing file" : "Pogreška pri dijeljenju datoteke", "Chat room for event" : "Soba za razmjenu poruka za događaj", + "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", - "Present" : "Prezentiraj", + "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", - "Review" : "Pregled", "Office" : "Ured", "Contributor week" : "Tjedan suradnika", - "Party" : "Tulum", - "Celebration" : "Proslava", "Mail" : "Pošta", "Soccer" : "Nogomet", "Football" : "Nogomet", "Gaming" : "Igranje", - "Play" : "Zabava", - "Game" : "Igra", "Drive" : "Vožnja", + "Driving" : "Vožnja", "Bicycle" : "Bicikl", "Cycle" : "Vožnja biciklom", "Biking" : "Biciklizam", + "Bike" : "Bicikl", "Podcast" : "Podcast", "Basketball" : "Košarka", "Fishing" : "Ribolov", @@ -367,6 +408,7 @@ "Doctor" : "Liječnik", "Health" : "Zdravlje", "Dentist" : "Stomatolog", + "Hospital" : "Bolnica", "Interview" : "Razgovor", "Training" : "Trening", "Practice" : "Vježba", @@ -378,6 +420,8 @@ "Barber" : "Brijač", "Haircut" : "Frizura", "Exam" : "Ispit", + "Written test" : "Pisani ispit", + "Oral test" : "Usmeni ispit", "Working" : "Rad", "New Years Eve" : "Stara godina", "NYE" : "NYE", @@ -402,7 +446,10 @@ "Lecture" : "Predavanje", "Seminar" : "Seminar", "Photograph" : "Fotografija", + "Party" : "Tulum", + "Celebration" : "Proslava", "Celebrate" : "Slavlje", + "Birthday" : "Rođendan", "Shopping" : "Kupnja", "Skate" : "Koturanje", "Skateboard" : "Daska za koturanje", @@ -410,6 +457,6 @@ "Golf" : "Golf", "Dinner" : "Večera", "Lunch" : "Ručak", - "Global" : "Globalno" + "User not found" : "Korisnik nije pronađen" },"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 0d3dc73b67..6bfa249c45 100644 --- a/l10n/hu.js +++ b/l10n/hu.js @@ -1,96 +1,173 @@ OC.L10N.register( "calendar", { - "User-Session unexpectedly expired" : "Felhasználói folyamat váratlanul lejárt", - "Provided email-address is not valid" : "A megadott email 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 üzenet küldés közben. Kérem lépjen kapcsolatba a rendszergazdával.", - "Successfully sent email to " : "Üzenet sikeresen elküldve", - "Hello," : "Szia!", - "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.", - "Open »%s«" : "»%s« megnyitása", + "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”.", + "Open »%s«" : "„%s” megnyitása", "Cheers!" : "Üdv!", + "Upcoming events" : "Közelgő események", + "More events" : "További események", + "No more events today" : "Ma nincs több esemény", + "No upcoming events" : "Nincsenek közelgő események", + "%1$s with %2$s" : "%1$s – %2$s", "Calendar" : "Naptár", - "A Calendar app for Nextcloud" : "Naptár alkalmazás a Nextcloud-hoz", + "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\" 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", + "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 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:", + "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.", + "Anniversary" : "Évforduló", + "Appointment" : "Találkozó", + "Business" : "Üzleti", + "Education" : "Oktatás", + "Holiday" : "Szabadság", + "Meeting" : "Találkozó", + "Miscellaneous" : "Egyéb", + "Non-working hours" : "Nem munkaidő", + "Not in office" : "Nem irodában", + "Personal" : "Személyes", + "Phone call" : "Telefonhívás", + "Sick day" : "Betegszabadság", + "Special occasion" : "Különleges alkalom", + "Travel" : "Utazás", + "Vacation" : "Nyaralás", + "Collaborative Tags" : "Együttműködési címkék", + "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 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", + "Event" : "Esemény", + "Create new event" : "Új esemény létrehozása", "Today" : "Ma", "Day" : "Nap", "Week" : "Hét", "Month" : "Hónap", + "Year" : "Év", "List" : "Lista", - "Untitled calendar" : "Cím nélküli 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", - "Download" : "Letöltés", - "Unshare from me" : "Megosztás visszavonása", + "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", + "Shared with you by" : "Önnel megosztotta:", + "Edit and share calendar" : "Naptár szerkesztése és megosztása", + "Edit calendar" : "Naptár szerkesztése", + "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.", "_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"], + "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://)", + "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", + "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.", + "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", + "Empty trash bin" : "Kuka ürítése", + "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 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?", + "_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.", + "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", "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" : "Hivatkozás küldése a naptárba emailen keresztül", - "Enter one address" : "Adj meg egy címet", - "Sending email …" : "Email küldése …", - "Copy subscription link" : "Feliratkozási link másolása", - "Copying link …" : "Link másolása  ...", - "Copied link" : "Link másolva", - "Could not copy link" : "A hivatkozást nem lehet másolni", - "Copy embedding code" : "Beépülő kód másolása", - "Copying code …" : "Kód 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 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 megosztani a naptárat.", - "An error occurred, unable to send email." : "Hiba lépett fel, nem lehet emailt küldeni.", - "Embed code copied to clipboard." : "Vágólapra másolt kód beágyazása.", - "Embed code could not be copied to clipboard." : "Vágólapra másolt kód beágyazása sikertelen.", + "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.", "can edit" : "szerkesztheti", - "Unshare with {displayName}" : "Megosztás {displayName}-vel törölve", - "An error occurred, unable to change the unshare the calendar." : "Hiba lépett fel, nem lehet a naptár megosztását visszavonni.", - "An error occurred, unable to change the permission of the share." : "Hiba lépett fel, nem lehet a megosztás jogait megváltoztatni.", - "+ New calendar" : "+ Új naptár", - "New calendar" : "Új naptár", - "Creating calendar …" : "Naptár létrehozása …", - "New calendar with task list" : "Új naptár feladat listával", - "New subscription from link (read-only)" : "Új feliratkozás linkből (csak olvasható)", - "Creating subscription …" : "Előfizetés létrehozása …", - "An error occurred, unable to create the calendar." : "Hiba lépett fel, a naptárat nem lehet létrehozni.", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Kérem érvényes linket adjon meg (http://, https://, webcal://, vagy webcals:// -al kezdje)", + "Unshare with {displayName}" : "Megosztás megszüntetése a következővel: {displayName}", + "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.", + "Share with users or groups" : "Megosztás felhasználókkal vagy csoportokkal", + "No users or groups" : "Nincsenek felhasználók vagy csoportok", + "Calendar name …" : "Naptár neve…", + "Share calendar" : "Naptár megosztása", + "Unshare from me" : "Megosztás visszavonása", + "Save" : "Mentés", + "Failed to save calendar name and color" : "A naptár nevének és színének mentése sikertelen", "Import calendars" : "Naptárak importálása", - "Please select a calendar to import into …" : "Válasszon naptárat, amit ide importál  ... ", + "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égsem", + "Cancel" : "Mégse", "_Import calendar_::_Import calendars_" : ["Naptár importálása","Naptárak importálása"], - "{filename} is an unsupported file-type" : "A {filename} nem támogatott fájl típus", - "{filename} could not be parsed" : "A {filename} nem feldolgozható", + "Default attachments location" : "Mellékletek alapértelmezett helye", + "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.", + "{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}." : "Importálás nem teljes. {accepted} a {total}-ből lett importálva.", - "_Successfully imported %n event_::_Successfully imported %n events._" : ["Sikeresen importált %n eseményt.","Sikeresen importált %n eseményt."], + "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"], "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", @@ -99,221 +176,390 @@ OC.L10N.register( "Day view" : "Nap nézet", "Week view" : "Hét nézet", "Month view" : "Hónap nézet", + "List view" : "Lista nézet", "Actions" : "Műveletek", "Create event" : "Esemény létrehozása", + "Show shortcuts" : "Gyorsbillentyűk megjelenítése", + "Editor" : "Szerkesztő", + "Close editor" : "Szerkesztő bezárása", + "Save edited event" : "Szerkesztett esemény mentése", + "Delete edited event" : "Szerkesztett esemény törlése", + "Duplicate event" : "Esemény megkettőzése", "Enable birthday calendar" : "Születésnapokat tartalamzó naptár engedélyezése", - "Show tasks in calendar" : "Feladatok mutatása a naptárban", + "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", - "Show weekends" : "Hétvégék mutatása", + "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", + "Default reminder" : "Alapértelmezett emlékeztető", "Copy primary CalDAV address" : "Elsődleges CalDAV cím másolása", "Copy iOS/macOS CalDAV address" : "iOS/macOS CalDAV cím másolása", - "Show keyboard shortcuts" : "Billentyűparancsok mutatása", - "Settings & import" : "Beállítások és Importálás", - "CalDAV link copied to clipboard." : "CalDAV hivatkozási vágólapra másolva.", - "CalDAV link could not be copied to clipboard." : "CalDAV hivatkozást nem lehet vágólapra másolni.", + "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"], + "_{duration} day_::_{duration} days_" : ["{duration} nap","{duration} nap"], + "_{duration} week_::_{duration} weeks_" : ["{duration} hét","{duration} hét"], + "_{duration} month_::_{duration} months_" : ["{duration} hónap","{duration} hónap"], + "_{duration} year_::_{duration} years_" : ["{duration} év","{duration} év"], + "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", + "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", + "Increments" : "Lépésköz", + "Additional calendars to check for conflicts" : "További naptárak az ütközés-ellenőrzéshez", + "Pick time ranges where appointments are allowed" : "Válasszon időszakokat, amikor a találkozók engedélyezettek", + "to" : "–", + "Delete slot" : "Idősáv törlése", + "No times set" : "Nincs idő megadva", + "Add" : "Hozzáadás", + "Monday" : "hétfő", + "Tuesday" : "kedd", + "Wednesday" : "szerda", + "Thursday" : "csütörtök", + "Friday" : "péntek", + "Saturday" : "szombat", + "Sunday" : "vasárnap", + "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á", + "Planning restrictions" : "Tervezési korlátozások", + "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", + "Update" : "Frissítés", + "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ő", "before at" : "előtt", "Notification" : "Értesítés", "Email" : "E-mail", - "Audio notification" : "Audio értesítés", + "Audio notification" : "Hangértesítés", "Other notification" : "Egyéb értesítés", "Relative to event" : "Az eseményhez viszonyítva", "On date" : "Időpontban", "Edit time" : "Idő szerkesztése", "Save time" : "Időpont mentése", "Remove reminder" : "Értesítés eltávolítása", - "on" : "Be", + "on" : "be", + "at" : "ekkor: ", "+ Add reminder" : "+ Emlékeztető hozzáadása", - "_second_::_seconds_" : ["másodperc","másodpercek"], - "_minute_::_minutes_" : ["perc","percek"], - "_hour_::_hours_" : ["óra","órák"], - "_day_::_days_" : ["nap","napok"], - "_week_::_weeks_" : ["hét","hetek"], - "No reminders yet" : "Nincs még emlékeztetője", + "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"], + "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", + "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.", + "_{count} attachment_::_{count} attachments_" : ["{count} melléklet","{count} melléklet"], + "Invitation accepted" : "Meghívás elfogadva", + "Available" : "Elérhető", + "Suggested" : "Javasolt", + "Participation marked as tentative" : "A részvétel feltételesként jelölve", + "Accepted {organizerName}'s invitation" : "Elfogadta {organizerName} meghívását", + "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", + "Checking availability" : "Elérhetőség ellenőrzése", + "Invitation sent" : "Meghívó elküldve", + "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", - "Busy (tentative)" : "Foglalt (ideiglenes)", + "{organizer} (organizer)" : "{organizer} (szervező)", + "Free" : "Szabad", + "Busy (tentative)" : "Foglalt (feltételes)", "Busy" : "Foglalt", "Out of office" : "Irodán kívül", "Unknown" : "Ismeretlen", - "{name} accepted your invitation." : "{name} elfogadta a meghívásodat.", - "{name} accepted {organizerName}'s invitation." : "{name} elfogadta {organizerName} meghívását.", - "{name} declined your invitation." : "{name} elutasította a meghívásodat.", - "{name} declined {organizerName}'s invitation." : "{name} elíutasította {organizerName} meghívását.", - "{name} has delegated their invitation." : "{name} átruházta meghívását.", - "{name} marked their participation as tentative." : "{name} ideiglenesként jelölte meg részvételüket.", - "{name} did not respond to your invitation yet." : "{name} még nem válaszolt a meghívásodra.", - "{name} did not respond to {organizerName}'s invitation yet." : "{name} még nem válaszolt {organizerName} meghívására.", - "Create Talk room for this event" : "Talk szoba létrehozása erre az eseményre", - "Show busy times" : "Mutassa az elfoglalt időket", - "Successfully appended link to talk room to description." : "Talk szoba linkjének sikeres csatolása a leíráshoz.", - "Error creating Talk room" : "Hiba a Talk szoba létrehozásakor", - "Send e-mail" : "Küldjön e-mailt", - "Chairperson" : "Az elnök", + "Accept" : "Elfogadás", + "Decline" : "Elutasítás", + "Tentative" : "Feltételes", + "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", + "No attendees yet" : "Még nincs résztvevő", + "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", + "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 e-mails, users, contacts, resources or rooms" : "Keressen e-maileket, felhasználókat, névjegyeket, forrásokat vagy szobákat", + "Search for emails, users or contacts" : "E-mailek, felhasználók és névjegyek keresése", "No match found" : "Nem található egyezés", - "No attendees yet" : "Nincs még résztvevő", "(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ím", + "Event title" : "Esemény címe", "All day" : "Egész napos", - "Can not modify all-day setting for events that are part of a recurrence-set." : "Az egész napos beállítást nem lehet megváltoztatni az ismétlődési halmaz részét képező eseményeknél.", - "from {startDate}" : "{startDate}-tól", - "from {startDate} at {startTime}" : "{startDate}-tól {startTime}-kor", - "to {endDate}" : "{endDate}-ig", - "to {endDate} at {endTime}" : "{endDate}-ig {endTime}-kor", + "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}", + "Repeat" : "Ismétlés", "End repeat" : "Ismétlés vége", "Select to end repeat" : "Válassza az ismétlés befejezéséhez", "never" : "soha", "on date" : "dátumon", "after" : "után", "_time_::_times_" : ["alkalommal","alkalommal"], - "This event is the recurrence-exception of a recurrence-set. You can not add a recurrence-rule to it." : "Ez az esemény az ismétlődők kivétele. Nem adhat hozzá ismétlődési szabályt.", + "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" : "második hátulról", + "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" : "Ismétlés", - "Repeat every" : "Ismételje minden", + "Repeat every" : "Ismétlés minden", "By day of the month" : "A hónap ezen napján", + "On the" : "Ekkor: ", "_month_::_months_" : ["hónap","hónapok"], "_year_::_years_" : ["év","évek"], - "Monday" : "Hétfő", "weekday" : "hétköznap", "weekend day" : "hétvége", - "Summary" : "Összefoglalás", - "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 megismétlődésének meghatározá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.", + "No recurrence" : "Nincs ismétlődés", + "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", + "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", + "Room type" : "Szoba típusa", + "Any" : "Bármely", + "Minimum seating capacity" : "Ülőhelyek legkisebb száma", "More" : "Több", - "Save" : "Mentés", - "Update" : "Frissítés", - "Update this occurrence" : "Frissítse ezt az előfordulást", - "Update this and all future" : "Frissítse ezt és az összes jövőbenit", + "Update this occurrence" : "Ezen előfordulás frissítése", + "Update this and all future" : "Ezen és az összes jövőbeli 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 timezone:" : "Kérjük, válassza ki az időzónát:", + "Please select a time zone:" : "Válasszon egy időzónát:", "Pick a time" : "Válasszon egy időt", - "Pick a date" : "Válassz egy dátumot", - "from {formattedDate}" : "{formattedDate}-tól", - "to {formattedDate}" : "{formattedDate}-ig", - "on {formattedDate}" : "{formattedDate}-on", - "from {formattedDate} at {formattedTime}" : "{formattedDate}-tól {formattedTime}-kor", - "to {formattedDate} at {formattedTime}" : "{formattedDate}-ig {formattedTime}-kor", - "on {formattedDate} at {formattedTime}" : "{formattedDate}-on {formattedTime}-kor", - "{formattedDate} at {formattedTime}" : "{formattedDate} {formattedTime}-kor", - "Please enter a valid date" : "Kérjük, adjon meg egy érvényes dátumot", + "Pick a date" : "Válasszon egy dátumot", + "from {formattedDate}" : "ettől: {formattedDate}", + "to {formattedDate}" : "eddig: {formattedDate}", + "on {formattedDate}" : "ekkor: {formattedDate}", + "from {formattedDate} at {formattedTime}" : "ettől: {formattedDate} {formattedTime}", + "to {formattedDate} at {formattedTime}" : "eddig: {formattedDate} {formattedTime}", + "on {formattedDate} at {formattedTime}" : "ekkor: {formattedDate} {formattedTime}", + "{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", - "Type to search timezone" : "Írja be az időzóna kereséséhez", - "Personal" : "Személyes", - "The automatic timezone detection determined your timezone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your timezone manually in the calendar settings." : "Az automatikus időzóna-észlelés meghatározta, hogy az időzónája UTC.\nEz valószínűleg a böngésző biztonsági intézkedéseinek eredménye.\nKérjük, manuálisan állítsa be az időzónát a naptárbeállításokban.", - "Your configured timezone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your timezone in the settings and report this issue." : "A beállított időzónád ({timezoneId}) nem található. Visszaállás az UTC-re.\nKérjük, módosítsa az időzónát a beállításokban, és jelentse ezt a problémát.", - "Delete this occurrence" : "Törölje ezt az eseményt", - "Delete this and all future" : "Törölje ezt és az összes jövőbenit", + "Type to search time zone" : "Gépeljen az időzóna kereséséhez", + "Global" : "Globális", + "By {authors}" : "Szerzők: {authors}", + "Subscribed" : "Feliratkozott", + "Subscribe" : "Feliratkozás", + "Holidays in {region}" : "Ünnepnapok itt: {region}", + "Select date" : "Válasszon dátumot", + "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", + "Appointment Details:" : "Találkozó részletei:", + "Time:" : "Idő:", + "Booked for:" : "Részére lefoglalva:", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "Köszönjük. A(z) {startdate} és {stopdate} közti foglalása megerősítésre került", + "Book another appointment:" : "Másik találkozó lefoglalása:", + "See all available slots" : "Összes elérhető idősáv megtekintése", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "A(z) {startdate} és {stopdate} közti találkozójának idősávja már nem érhető el.", + "Please book a different slot:" : "Foglaljon egy másik idősávban:", + "Book an appointment with {name}" : "Találkozó lefoglalása a következővel: {name}", + "No public appointments found for {name}" : "Nem találhatók nyilvános találkozók a következővel: {name}", + "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.", + "Create a new event" : "Új esemény létrehozása", + "[Today]" : "[Ma]", + "[Tomorrow]" : "[Holnap]", + "[Yesterday]" : "[Tegnap]", + "[Last] dddd" : "[Múlt] dddd", + "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", + "Managing shared access" : "Közös hozzáférés kezelése", + "Deny access" : "Hozzáférés megtagadása", + "Invite" : "Meghívás", "Attendees" : "Résztvevők", - "Reminders" : "Emlékeztetők", + "Resources" : "Erőforrások", + "_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"], "Close" : "Bezárás", "Show more details" : "Részletek megjelenítése", - "Subscribe to {name}" : "Feliratkozás {name}", - "Download {name}" : "Töltse le {name}", - "Anniversary" : "Évforduló", - "Appointment" : "Találkozók", - "Business" : "Üzleti", - "Education" : "Oktatás", - "Holiday" : "Szabadság", - "Meeting" : "Találkozó", - "Miscellaneous" : "Vegyes", - "Non-working hours" : "Nem munkaidő", - "Not in office" : "Nem irodában", - "Phone call" : "Telefonhívás", - "Sick day" : "Beteg szabadság", - "Special occasion" : "Különleges alkalom", - "Travel" : "Utazás", - "Vacation" : "Nyaralás", - "Midnight on the day the event starts" : "Az éjszaka az esemény kezdete napján", + "Subscribe to {name}" : "Feliratkozás erre: {name}", + "Export {name}" : "{name} exportálása", + "Midnight on the day the event starts" : "Az esemény kezdetének napján éjfélkor", "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n nappal az esemény előtt {formattedHourMinute}-kor","%n nappal az esemény előtt {formattedHourMinute}-kor"], "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n héttel az esemény előtt {formattedHourMinute}-kor","%n héttel az esemény előtt {formattedHourMinute}-kor"], "on the day of the event at {formattedHourMinute}" : "az esemény napján {formattedHourMinute}-kor", "at the event's start" : "az esemény kezdetén", "at the event's end" : "az esemény végén", - "{time} before the event starts" : "{time} az esemény kezdete előtt", - "{time} before the event ends" : "{time} az esemény vége előtt", - "{time} after the event starts" : "{idő} az esemény kezdete után", - "{time} after the event ends" : "{idő} az esemény vége után", + "{time} before the event starts" : "{time} idővel az esemény kezdete előtt", + "{time} before the event ends" : "{time} idővel az esemény vége előtt", + "{time} after the event starts" : "{time} idővel az esemény kezdete után", + "{time} after the event ends" : "{time} idővel az esemény vége után", "on {time}" : "{time}-kor", "on {time} ({timezoneId})" : "{time}-kor ({timezoneId})", - "Week {number} of {year}" : "{year} év {number}. hete", + "Week {number} of {year}" : "{year} {number}. hete", "Does not repeat" : "Nem ismétlődik", "Daily" : "Naponta", "Weekly" : "Hetente", - "Monthly" : "Havi", - "Yearly" : "Évi", - "_Every %n day_::_Every %n days_" : ["Minden %n napon","Minden %n napon"], - "_Every %n week_::_Every %n weeks_" : ["Minden %n héten","Minden %n héten"], - "_Every %n month_::_Every %n months_" : ["Minden %n hónapon","Minden %n hónapon"], - "_Every %n year_::_Every %n years_" : ["Minden %n éven","Minden %n éven"], - "_on {weekday}_::_on {weekdays}_" : ["{weekdays}-on","{weekdays}-okon"], + "Monthly" : "Havonta", + "Yearly" : "Évente", + "_Every %n day_::_Every %n days_" : ["%n naponta","%n naponta"], + "_Every %n week_::_Every %n weeks_" : ["%n hetente","%n hetente"], + "_Every %n month_::_Every %n months_" : ["%n havonta","%n havonta"], + "_Every %n year_::_Every %n years_" : ["%n évente","%n évente"], + "_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", "Untitled task" : "Névtelen feladat", - "next year" : "következő évben", - "today" : "ma", - "When shared show" : "Megosztáskor mutassa", - "When shared show full event" : "Megosztáskor mutassa a teljes eseményt.", - "When shared show only busy" : "Megosztáskor csak a foglaltságot mutassa", - "When shared hide this event" : "Megosztáskor rejtse el ezt az eseményt", - "The visibility of this event in shared calendars." : "Az esemény láthatósága megosztott naptárakban.", - "Location" : "Hely", + "Please ask your administrator to enable the Tasks App." : "Kérje meg a rendszergazdát, hogy engedélyezze a Feladatok alkalmazást.", + "W" : "H", + "%n more" : "%n további", + "No events to display" : "Nincs megjelenítendő esemény", + "_+%n more_::_+%n more_" : ["+%n további","+%n további"], + "No events" : "Nincs esemény", + "Create a new event or change the visible time-range" : "Hozzon létre egy új eseményt, vagy módosítsa a látható időtartományt", + "It might have been deleted, or there was a typo in a link" : "Lehet, hogy törölték, vagy elgépelés volt egy hivatkozásban", + "It might have been deleted, or there was a typo in the link" : "Lehet, hogy törölték, vagy elgépelés volt a hivatkozásban", + "Meeting room" : "Tárgyalóterem", + "Lecture hall" : "Előadóterem", + "Seminar room" : "Szemináriumterem", + "Other" : "Egyéb", + "When shared show" : "Megjelenítés megosztáskor", + "When shared show full event" : "A teljes esemény megjelenítése megosztáskor", + "When shared show only busy" : "Csak a foglaltság megjelenítése megosztáskor", + "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", - "Description" : "Leírás", "Add a description" : "Leírás hozzáadása", "Status" : "Állapot", "Confirmed" : "Elfogadva", - "Tentative" : "Valószínűleg", - "Canceled" : "Megszakítva", - "Show as" : "Mutasd mint", - "Free" : "Szabad", + "Canceled" : "Lemondva", + "Confirmation about the overall status of the event." : "Megerősítés az esemény általános állapotáról.", + "Show as" : "Megjelenítés mint", + "Take this event into account when calculating free-busy information." : "Ezen esemény figyelembe vétele a foglaltsági információk kiszámításakor.", "Categories" : "Kategóriák", + "Categories help you to structure and organize your events." : "A kategóriák segítenek az események strukturálásában és megszervezésében.", "Search or add categories" : "Kategóriák keresése vagy hozzáadása", "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írva a naptár színét.", - "Chat room for event" : "Csevegő szoba az eseményhez", - "Imported {filename}" : "Importált {filename}", + "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.", + "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", + "Chat room for event" : "Csevegőszoba az eseményhez", + "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", + "This is an event reminder." : "Ez egy eseményemlékeztető.", "Meditation" : "Meditáció", "Relaxing" : "Pihenés", - "Relax" : "Pihen", + "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ó", - "Present" : "Jelen", + "Talk" : "Előadás", + "Speech" : "Beszéd", + "Deadline" : "Határidő", + "Submission" : "Beküldés", + "Reporting" : "Jelentés", "Camping" : "Kemping", - "Camp" : "Tábor", + "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" : "Vizsga", + "Graduation" : "Ballagás", + "Brainstorm" : "Ötletelés", + "Review" : "Visszajelzés", + "Audit" : "Audit", + "Inspection" : "Vizsgálat", + "Proofreading" : "Átolvasás", "Baseball" : "Baseball", - "Meet" : "Találkozik", + "Meet" : "Találkozás", "Planning" : "Tervezés", + "Pointing" : "Mutatás", "Retrospective" : "Visszatekintő", - "Review" : "Visszajelzés", "Office" : "Munkahely", - "Party" : "Parti", - "Celebration" : "Ünnep", + "Contributor week" : "Közreműködői hét", "Mail" : "Levél", - "Soccer" : "Futbal", - "Football" : "Foci", + "Soccer" : "Foci", + "Football" : "Futball", "Gaming" : "Játék", - "Play" : "Lejátszás", - "Game" : "Játék", "Drive" : "Vezetés", + "Driving" : "Vezetés", "Bicycle" : "Kerékpár", - "Cycle" : "Ciklus", + "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", @@ -323,10 +569,12 @@ OC.L10N.register( "Museum" : "Múzeum", "Pilates" : "Pilates", "Park" : "Park", + "Walk" : "Gyaloglás", "Studying" : "Tanulás", - "Doctor" : "Doktor", + "Doctor" : "Orvos", "Health" : "Egészség", "Dentist" : "Fogorvos", + "Hospital" : "Kórház", "Interview" : "Interjú", "Training" : "Képzés", "Practice" : "Gyakorlás", @@ -334,35 +582,52 @@ OC.L10N.register( "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" : "Új Év", - "NYE" : "Új év", + "New Years Eve" : "Szilveszter", + "NYE" : "Újév", "Fireworks" : "Tüzijáték", - "Running" : "Futni", + "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", - "Journey" : "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", - "Global" : "Globális" + "Appointment not found" : "A találkozó nem található", + "User not found" : "A felhasználó nem található" }, "nplurals=2; plural=(n != 1);"); diff --git a/l10n/hu.json b/l10n/hu.json index 1316070a52..b6e5b1022c 100644 --- a/l10n/hu.json +++ b/l10n/hu.json @@ -1,94 +1,171 @@ { "translations": { - "User-Session unexpectedly expired" : "Felhasználói folyamat váratlanul lejárt", - "Provided email-address is not valid" : "A megadott email 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 üzenet küldés közben. Kérem lépjen kapcsolatba a rendszergazdával.", - "Successfully sent email to " : "Üzenet sikeresen elküldve", - "Hello," : "Szia!", - "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.", - "Open »%s«" : "»%s« megnyitása", + "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”.", + "Open »%s«" : "„%s” megnyitása", "Cheers!" : "Üdv!", + "Upcoming events" : "Közelgő események", + "More events" : "További események", + "No more events today" : "Ma nincs több esemény", + "No upcoming events" : "Nincsenek közelgő események", + "%1$s with %2$s" : "%1$s – %2$s", "Calendar" : "Naptár", - "A Calendar app for Nextcloud" : "Naptár alkalmazás a Nextcloud-hoz", + "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\" 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", + "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 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:", + "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.", + "Anniversary" : "Évforduló", + "Appointment" : "Találkozó", + "Business" : "Üzleti", + "Education" : "Oktatás", + "Holiday" : "Szabadság", + "Meeting" : "Találkozó", + "Miscellaneous" : "Egyéb", + "Non-working hours" : "Nem munkaidő", + "Not in office" : "Nem irodában", + "Personal" : "Személyes", + "Phone call" : "Telefonhívás", + "Sick day" : "Betegszabadság", + "Special occasion" : "Különleges alkalom", + "Travel" : "Utazás", + "Vacation" : "Nyaralás", + "Collaborative Tags" : "Együttműködési címkék", + "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 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", + "Event" : "Esemény", + "Create new event" : "Új esemény létrehozása", "Today" : "Ma", "Day" : "Nap", "Week" : "Hét", "Month" : "Hónap", + "Year" : "Év", "List" : "Lista", - "Untitled calendar" : "Cím nélküli 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", - "Download" : "Letöltés", - "Unshare from me" : "Megosztás visszavonása", + "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", + "Shared with you by" : "Önnel megosztotta:", + "Edit and share calendar" : "Naptár szerkesztése és megosztása", + "Edit calendar" : "Naptár szerkesztése", + "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.", "_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"], + "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://)", + "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", + "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.", + "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", + "Empty trash bin" : "Kuka ürítése", + "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 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?", + "_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.", + "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", "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" : "Hivatkozás küldése a naptárba emailen keresztül", - "Enter one address" : "Adj meg egy címet", - "Sending email …" : "Email küldése …", - "Copy subscription link" : "Feliratkozási link másolása", - "Copying link …" : "Link másolása  ...", - "Copied link" : "Link másolva", - "Could not copy link" : "A hivatkozást nem lehet másolni", - "Copy embedding code" : "Beépülő kód másolása", - "Copying code …" : "Kód 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 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 megosztani a naptárat.", - "An error occurred, unable to send email." : "Hiba lépett fel, nem lehet emailt küldeni.", - "Embed code copied to clipboard." : "Vágólapra másolt kód beágyazása.", - "Embed code could not be copied to clipboard." : "Vágólapra másolt kód beágyazása sikertelen.", + "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.", "can edit" : "szerkesztheti", - "Unshare with {displayName}" : "Megosztás {displayName}-vel törölve", - "An error occurred, unable to change the unshare the calendar." : "Hiba lépett fel, nem lehet a naptár megosztását visszavonni.", - "An error occurred, unable to change the permission of the share." : "Hiba lépett fel, nem lehet a megosztás jogait megváltoztatni.", - "+ New calendar" : "+ Új naptár", - "New calendar" : "Új naptár", - "Creating calendar …" : "Naptár létrehozása …", - "New calendar with task list" : "Új naptár feladat listával", - "New subscription from link (read-only)" : "Új feliratkozás linkből (csak olvasható)", - "Creating subscription …" : "Előfizetés létrehozása …", - "An error occurred, unable to create the calendar." : "Hiba lépett fel, a naptárat nem lehet létrehozni.", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Kérem érvényes linket adjon meg (http://, https://, webcal://, vagy webcals:// -al kezdje)", + "Unshare with {displayName}" : "Megosztás megszüntetése a következővel: {displayName}", + "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.", + "Share with users or groups" : "Megosztás felhasználókkal vagy csoportokkal", + "No users or groups" : "Nincsenek felhasználók vagy csoportok", + "Calendar name …" : "Naptár neve…", + "Share calendar" : "Naptár megosztása", + "Unshare from me" : "Megosztás visszavonása", + "Save" : "Mentés", + "Failed to save calendar name and color" : "A naptár nevének és színének mentése sikertelen", "Import calendars" : "Naptárak importálása", - "Please select a calendar to import into …" : "Válasszon naptárat, amit ide importál  ... ", + "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égsem", + "Cancel" : "Mégse", "_Import calendar_::_Import calendars_" : ["Naptár importálása","Naptárak importálása"], - "{filename} is an unsupported file-type" : "A {filename} nem támogatott fájl típus", - "{filename} could not be parsed" : "A {filename} nem feldolgozható", + "Default attachments location" : "Mellékletek alapértelmezett helye", + "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.", + "{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}." : "Importálás nem teljes. {accepted} a {total}-ből lett importálva.", - "_Successfully imported %n event_::_Successfully imported %n events._" : ["Sikeresen importált %n eseményt.","Sikeresen importált %n eseményt."], + "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"], "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", @@ -97,221 +174,390 @@ "Day view" : "Nap nézet", "Week view" : "Hét nézet", "Month view" : "Hónap nézet", + "List view" : "Lista nézet", "Actions" : "Műveletek", "Create event" : "Esemény létrehozása", + "Show shortcuts" : "Gyorsbillentyűk megjelenítése", + "Editor" : "Szerkesztő", + "Close editor" : "Szerkesztő bezárása", + "Save edited event" : "Szerkesztett esemény mentése", + "Delete edited event" : "Szerkesztett esemény törlése", + "Duplicate event" : "Esemény megkettőzése", "Enable birthday calendar" : "Születésnapokat tartalamzó naptár engedélyezése", - "Show tasks in calendar" : "Feladatok mutatása a naptárban", + "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", - "Show weekends" : "Hétvégék mutatása", + "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", + "Default reminder" : "Alapértelmezett emlékeztető", "Copy primary CalDAV address" : "Elsődleges CalDAV cím másolása", "Copy iOS/macOS CalDAV address" : "iOS/macOS CalDAV cím másolása", - "Show keyboard shortcuts" : "Billentyűparancsok mutatása", - "Settings & import" : "Beállítások és Importálás", - "CalDAV link copied to clipboard." : "CalDAV hivatkozási vágólapra másolva.", - "CalDAV link could not be copied to clipboard." : "CalDAV hivatkozást nem lehet vágólapra másolni.", + "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"], + "_{duration} day_::_{duration} days_" : ["{duration} nap","{duration} nap"], + "_{duration} week_::_{duration} weeks_" : ["{duration} hét","{duration} hét"], + "_{duration} month_::_{duration} months_" : ["{duration} hónap","{duration} hónap"], + "_{duration} year_::_{duration} years_" : ["{duration} év","{duration} év"], + "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", + "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", + "Increments" : "Lépésköz", + "Additional calendars to check for conflicts" : "További naptárak az ütközés-ellenőrzéshez", + "Pick time ranges where appointments are allowed" : "Válasszon időszakokat, amikor a találkozók engedélyezettek", + "to" : "–", + "Delete slot" : "Idősáv törlése", + "No times set" : "Nincs idő megadva", + "Add" : "Hozzáadás", + "Monday" : "hétfő", + "Tuesday" : "kedd", + "Wednesday" : "szerda", + "Thursday" : "csütörtök", + "Friday" : "péntek", + "Saturday" : "szombat", + "Sunday" : "vasárnap", + "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á", + "Planning restrictions" : "Tervezési korlátozások", + "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", + "Update" : "Frissítés", + "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ő", "before at" : "előtt", "Notification" : "Értesítés", "Email" : "E-mail", - "Audio notification" : "Audio értesítés", + "Audio notification" : "Hangértesítés", "Other notification" : "Egyéb értesítés", "Relative to event" : "Az eseményhez viszonyítva", "On date" : "Időpontban", "Edit time" : "Idő szerkesztése", "Save time" : "Időpont mentése", "Remove reminder" : "Értesítés eltávolítása", - "on" : "Be", + "on" : "be", + "at" : "ekkor: ", "+ Add reminder" : "+ Emlékeztető hozzáadása", - "_second_::_seconds_" : ["másodperc","másodpercek"], - "_minute_::_minutes_" : ["perc","percek"], - "_hour_::_hours_" : ["óra","órák"], - "_day_::_days_" : ["nap","napok"], - "_week_::_weeks_" : ["hét","hetek"], - "No reminders yet" : "Nincs még emlékeztetője", + "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"], + "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", + "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.", + "_{count} attachment_::_{count} attachments_" : ["{count} melléklet","{count} melléklet"], + "Invitation accepted" : "Meghívás elfogadva", + "Available" : "Elérhető", + "Suggested" : "Javasolt", + "Participation marked as tentative" : "A részvétel feltételesként jelölve", + "Accepted {organizerName}'s invitation" : "Elfogadta {organizerName} meghívását", + "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", + "Checking availability" : "Elérhetőség ellenőrzése", + "Invitation sent" : "Meghívó elküldve", + "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", - "Busy (tentative)" : "Foglalt (ideiglenes)", + "{organizer} (organizer)" : "{organizer} (szervező)", + "Free" : "Szabad", + "Busy (tentative)" : "Foglalt (feltételes)", "Busy" : "Foglalt", "Out of office" : "Irodán kívül", "Unknown" : "Ismeretlen", - "{name} accepted your invitation." : "{name} elfogadta a meghívásodat.", - "{name} accepted {organizerName}'s invitation." : "{name} elfogadta {organizerName} meghívását.", - "{name} declined your invitation." : "{name} elutasította a meghívásodat.", - "{name} declined {organizerName}'s invitation." : "{name} elíutasította {organizerName} meghívását.", - "{name} has delegated their invitation." : "{name} átruházta meghívását.", - "{name} marked their participation as tentative." : "{name} ideiglenesként jelölte meg részvételüket.", - "{name} did not respond to your invitation yet." : "{name} még nem válaszolt a meghívásodra.", - "{name} did not respond to {organizerName}'s invitation yet." : "{name} még nem válaszolt {organizerName} meghívására.", - "Create Talk room for this event" : "Talk szoba létrehozása erre az eseményre", - "Show busy times" : "Mutassa az elfoglalt időket", - "Successfully appended link to talk room to description." : "Talk szoba linkjének sikeres csatolása a leíráshoz.", - "Error creating Talk room" : "Hiba a Talk szoba létrehozásakor", - "Send e-mail" : "Küldjön e-mailt", - "Chairperson" : "Az elnök", + "Accept" : "Elfogadás", + "Decline" : "Elutasítás", + "Tentative" : "Feltételes", + "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", + "No attendees yet" : "Még nincs résztvevő", + "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", + "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 e-mails, users, contacts, resources or rooms" : "Keressen e-maileket, felhasználókat, névjegyeket, forrásokat vagy szobákat", + "Search for emails, users or contacts" : "E-mailek, felhasználók és névjegyek keresése", "No match found" : "Nem található egyezés", - "No attendees yet" : "Nincs még résztvevő", "(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ím", + "Event title" : "Esemény címe", "All day" : "Egész napos", - "Can not modify all-day setting for events that are part of a recurrence-set." : "Az egész napos beállítást nem lehet megváltoztatni az ismétlődési halmaz részét képező eseményeknél.", - "from {startDate}" : "{startDate}-tól", - "from {startDate} at {startTime}" : "{startDate}-tól {startTime}-kor", - "to {endDate}" : "{endDate}-ig", - "to {endDate} at {endTime}" : "{endDate}-ig {endTime}-kor", + "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}", + "Repeat" : "Ismétlés", "End repeat" : "Ismétlés vége", "Select to end repeat" : "Válassza az ismétlés befejezéséhez", "never" : "soha", "on date" : "dátumon", "after" : "után", "_time_::_times_" : ["alkalommal","alkalommal"], - "This event is the recurrence-exception of a recurrence-set. You can not add a recurrence-rule to it." : "Ez az esemény az ismétlődők kivétele. Nem adhat hozzá ismétlődési szabályt.", + "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" : "második hátulról", + "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" : "Ismétlés", - "Repeat every" : "Ismételje minden", + "Repeat every" : "Ismétlés minden", "By day of the month" : "A hónap ezen napján", + "On the" : "Ekkor: ", "_month_::_months_" : ["hónap","hónapok"], "_year_::_years_" : ["év","évek"], - "Monday" : "Hétfő", "weekday" : "hétköznap", "weekend day" : "hétvége", - "Summary" : "Összefoglalás", - "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 megismétlődésének meghatározá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.", + "No recurrence" : "Nincs ismétlődés", + "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", + "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", + "Room type" : "Szoba típusa", + "Any" : "Bármely", + "Minimum seating capacity" : "Ülőhelyek legkisebb száma", "More" : "Több", - "Save" : "Mentés", - "Update" : "Frissítés", - "Update this occurrence" : "Frissítse ezt az előfordulást", - "Update this and all future" : "Frissítse ezt és az összes jövőbenit", + "Update this occurrence" : "Ezen előfordulás frissítése", + "Update this and all future" : "Ezen és az összes jövőbeli 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 timezone:" : "Kérjük, válassza ki az időzónát:", + "Please select a time zone:" : "Válasszon egy időzónát:", "Pick a time" : "Válasszon egy időt", - "Pick a date" : "Válassz egy dátumot", - "from {formattedDate}" : "{formattedDate}-tól", - "to {formattedDate}" : "{formattedDate}-ig", - "on {formattedDate}" : "{formattedDate}-on", - "from {formattedDate} at {formattedTime}" : "{formattedDate}-tól {formattedTime}-kor", - "to {formattedDate} at {formattedTime}" : "{formattedDate}-ig {formattedTime}-kor", - "on {formattedDate} at {formattedTime}" : "{formattedDate}-on {formattedTime}-kor", - "{formattedDate} at {formattedTime}" : "{formattedDate} {formattedTime}-kor", - "Please enter a valid date" : "Kérjük, adjon meg egy érvényes dátumot", + "Pick a date" : "Válasszon egy dátumot", + "from {formattedDate}" : "ettől: {formattedDate}", + "to {formattedDate}" : "eddig: {formattedDate}", + "on {formattedDate}" : "ekkor: {formattedDate}", + "from {formattedDate} at {formattedTime}" : "ettől: {formattedDate} {formattedTime}", + "to {formattedDate} at {formattedTime}" : "eddig: {formattedDate} {formattedTime}", + "on {formattedDate} at {formattedTime}" : "ekkor: {formattedDate} {formattedTime}", + "{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", - "Type to search timezone" : "Írja be az időzóna kereséséhez", - "Personal" : "Személyes", - "The automatic timezone detection determined your timezone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your timezone manually in the calendar settings." : "Az automatikus időzóna-észlelés meghatározta, hogy az időzónája UTC.\nEz valószínűleg a böngésző biztonsági intézkedéseinek eredménye.\nKérjük, manuálisan állítsa be az időzónát a naptárbeállításokban.", - "Your configured timezone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your timezone in the settings and report this issue." : "A beállított időzónád ({timezoneId}) nem található. Visszaállás az UTC-re.\nKérjük, módosítsa az időzónát a beállításokban, és jelentse ezt a problémát.", - "Delete this occurrence" : "Törölje ezt az eseményt", - "Delete this and all future" : "Törölje ezt és az összes jövőbenit", + "Type to search time zone" : "Gépeljen az időzóna kereséséhez", + "Global" : "Globális", + "By {authors}" : "Szerzők: {authors}", + "Subscribed" : "Feliratkozott", + "Subscribe" : "Feliratkozás", + "Holidays in {region}" : "Ünnepnapok itt: {region}", + "Select date" : "Válasszon dátumot", + "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", + "Appointment Details:" : "Találkozó részletei:", + "Time:" : "Idő:", + "Booked for:" : "Részére lefoglalva:", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "Köszönjük. A(z) {startdate} és {stopdate} közti foglalása megerősítésre került", + "Book another appointment:" : "Másik találkozó lefoglalása:", + "See all available slots" : "Összes elérhető idősáv megtekintése", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "A(z) {startdate} és {stopdate} közti találkozójának idősávja már nem érhető el.", + "Please book a different slot:" : "Foglaljon egy másik idősávban:", + "Book an appointment with {name}" : "Találkozó lefoglalása a következővel: {name}", + "No public appointments found for {name}" : "Nem találhatók nyilvános találkozók a következővel: {name}", + "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.", + "Create a new event" : "Új esemény létrehozása", + "[Today]" : "[Ma]", + "[Tomorrow]" : "[Holnap]", + "[Yesterday]" : "[Tegnap]", + "[Last] dddd" : "[Múlt] dddd", + "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", + "Managing shared access" : "Közös hozzáférés kezelése", + "Deny access" : "Hozzáférés megtagadása", + "Invite" : "Meghívás", "Attendees" : "Résztvevők", - "Reminders" : "Emlékeztetők", + "Resources" : "Erőforrások", + "_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"], "Close" : "Bezárás", "Show more details" : "Részletek megjelenítése", - "Subscribe to {name}" : "Feliratkozás {name}", - "Download {name}" : "Töltse le {name}", - "Anniversary" : "Évforduló", - "Appointment" : "Találkozók", - "Business" : "Üzleti", - "Education" : "Oktatás", - "Holiday" : "Szabadság", - "Meeting" : "Találkozó", - "Miscellaneous" : "Vegyes", - "Non-working hours" : "Nem munkaidő", - "Not in office" : "Nem irodában", - "Phone call" : "Telefonhívás", - "Sick day" : "Beteg szabadság", - "Special occasion" : "Különleges alkalom", - "Travel" : "Utazás", - "Vacation" : "Nyaralás", - "Midnight on the day the event starts" : "Az éjszaka az esemény kezdete napján", + "Subscribe to {name}" : "Feliratkozás erre: {name}", + "Export {name}" : "{name} exportálása", + "Midnight on the day the event starts" : "Az esemény kezdetének napján éjfélkor", "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n nappal az esemény előtt {formattedHourMinute}-kor","%n nappal az esemény előtt {formattedHourMinute}-kor"], "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n héttel az esemény előtt {formattedHourMinute}-kor","%n héttel az esemény előtt {formattedHourMinute}-kor"], "on the day of the event at {formattedHourMinute}" : "az esemény napján {formattedHourMinute}-kor", "at the event's start" : "az esemény kezdetén", "at the event's end" : "az esemény végén", - "{time} before the event starts" : "{time} az esemény kezdete előtt", - "{time} before the event ends" : "{time} az esemény vége előtt", - "{time} after the event starts" : "{idő} az esemény kezdete után", - "{time} after the event ends" : "{idő} az esemény vége után", + "{time} before the event starts" : "{time} idővel az esemény kezdete előtt", + "{time} before the event ends" : "{time} idővel az esemény vége előtt", + "{time} after the event starts" : "{time} idővel az esemény kezdete után", + "{time} after the event ends" : "{time} idővel az esemény vége után", "on {time}" : "{time}-kor", "on {time} ({timezoneId})" : "{time}-kor ({timezoneId})", - "Week {number} of {year}" : "{year} év {number}. hete", + "Week {number} of {year}" : "{year} {number}. hete", "Does not repeat" : "Nem ismétlődik", "Daily" : "Naponta", "Weekly" : "Hetente", - "Monthly" : "Havi", - "Yearly" : "Évi", - "_Every %n day_::_Every %n days_" : ["Minden %n napon","Minden %n napon"], - "_Every %n week_::_Every %n weeks_" : ["Minden %n héten","Minden %n héten"], - "_Every %n month_::_Every %n months_" : ["Minden %n hónapon","Minden %n hónapon"], - "_Every %n year_::_Every %n years_" : ["Minden %n éven","Minden %n éven"], - "_on {weekday}_::_on {weekdays}_" : ["{weekdays}-on","{weekdays}-okon"], + "Monthly" : "Havonta", + "Yearly" : "Évente", + "_Every %n day_::_Every %n days_" : ["%n naponta","%n naponta"], + "_Every %n week_::_Every %n weeks_" : ["%n hetente","%n hetente"], + "_Every %n month_::_Every %n months_" : ["%n havonta","%n havonta"], + "_Every %n year_::_Every %n years_" : ["%n évente","%n évente"], + "_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", "Untitled task" : "Névtelen feladat", - "next year" : "következő évben", - "today" : "ma", - "When shared show" : "Megosztáskor mutassa", - "When shared show full event" : "Megosztáskor mutassa a teljes eseményt.", - "When shared show only busy" : "Megosztáskor csak a foglaltságot mutassa", - "When shared hide this event" : "Megosztáskor rejtse el ezt az eseményt", - "The visibility of this event in shared calendars." : "Az esemény láthatósága megosztott naptárakban.", - "Location" : "Hely", + "Please ask your administrator to enable the Tasks App." : "Kérje meg a rendszergazdát, hogy engedélyezze a Feladatok alkalmazást.", + "W" : "H", + "%n more" : "%n további", + "No events to display" : "Nincs megjelenítendő esemény", + "_+%n more_::_+%n more_" : ["+%n további","+%n további"], + "No events" : "Nincs esemény", + "Create a new event or change the visible time-range" : "Hozzon létre egy új eseményt, vagy módosítsa a látható időtartományt", + "It might have been deleted, or there was a typo in a link" : "Lehet, hogy törölték, vagy elgépelés volt egy hivatkozásban", + "It might have been deleted, or there was a typo in the link" : "Lehet, hogy törölték, vagy elgépelés volt a hivatkozásban", + "Meeting room" : "Tárgyalóterem", + "Lecture hall" : "Előadóterem", + "Seminar room" : "Szemináriumterem", + "Other" : "Egyéb", + "When shared show" : "Megjelenítés megosztáskor", + "When shared show full event" : "A teljes esemény megjelenítése megosztáskor", + "When shared show only busy" : "Csak a foglaltság megjelenítése megosztáskor", + "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", - "Description" : "Leírás", "Add a description" : "Leírás hozzáadása", "Status" : "Állapot", "Confirmed" : "Elfogadva", - "Tentative" : "Valószínűleg", - "Canceled" : "Megszakítva", - "Show as" : "Mutasd mint", - "Free" : "Szabad", + "Canceled" : "Lemondva", + "Confirmation about the overall status of the event." : "Megerősítés az esemény általános állapotáról.", + "Show as" : "Megjelenítés mint", + "Take this event into account when calculating free-busy information." : "Ezen esemény figyelembe vétele a foglaltsági információk kiszámításakor.", "Categories" : "Kategóriák", + "Categories help you to structure and organize your events." : "A kategóriák segítenek az események strukturálásában és megszervezésében.", "Search or add categories" : "Kategóriák keresése vagy hozzáadása", "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írva a naptár színét.", - "Chat room for event" : "Csevegő szoba az eseményhez", - "Imported {filename}" : "Importált {filename}", + "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.", + "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", + "Chat room for event" : "Csevegőszoba az eseményhez", + "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", + "This is an event reminder." : "Ez egy eseményemlékeztető.", "Meditation" : "Meditáció", "Relaxing" : "Pihenés", - "Relax" : "Pihen", + "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ó", - "Present" : "Jelen", + "Talk" : "Előadás", + "Speech" : "Beszéd", + "Deadline" : "Határidő", + "Submission" : "Beküldés", + "Reporting" : "Jelentés", "Camping" : "Kemping", - "Camp" : "Tábor", + "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" : "Vizsga", + "Graduation" : "Ballagás", + "Brainstorm" : "Ötletelés", + "Review" : "Visszajelzés", + "Audit" : "Audit", + "Inspection" : "Vizsgálat", + "Proofreading" : "Átolvasás", "Baseball" : "Baseball", - "Meet" : "Találkozik", + "Meet" : "Találkozás", "Planning" : "Tervezés", + "Pointing" : "Mutatás", "Retrospective" : "Visszatekintő", - "Review" : "Visszajelzés", "Office" : "Munkahely", - "Party" : "Parti", - "Celebration" : "Ünnep", + "Contributor week" : "Közreműködői hét", "Mail" : "Levél", - "Soccer" : "Futbal", - "Football" : "Foci", + "Soccer" : "Foci", + "Football" : "Futball", "Gaming" : "Játék", - "Play" : "Lejátszás", - "Game" : "Játék", "Drive" : "Vezetés", + "Driving" : "Vezetés", "Bicycle" : "Kerékpár", - "Cycle" : "Ciklus", + "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", @@ -321,10 +567,12 @@ "Museum" : "Múzeum", "Pilates" : "Pilates", "Park" : "Park", + "Walk" : "Gyaloglás", "Studying" : "Tanulás", - "Doctor" : "Doktor", + "Doctor" : "Orvos", "Health" : "Egészség", "Dentist" : "Fogorvos", + "Hospital" : "Kórház", "Interview" : "Interjú", "Training" : "Képzés", "Practice" : "Gyakorlás", @@ -332,35 +580,52 @@ "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" : "Új Év", - "NYE" : "Új év", + "New Years Eve" : "Szilveszter", + "NYE" : "Újév", "Fireworks" : "Tüzijáték", - "Running" : "Futni", + "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", - "Journey" : "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", - "Global" : "Globális" + "Appointment not found" : "A találkozó nem található", + "User not found" : "A felhasználó nem található" },"pluralForm" :"nplurals=2; plural=(n != 1);" } \ No newline at end of file diff --git a/l10n/hy.js b/l10n/hy.js index 4dd3807272..fabd8b5ca6 100644 --- a/l10n/hy.js +++ b/l10n/hy.js @@ -3,36 +3,52 @@ OC.L10N.register( { "Cheers!" : "Չը՛խկ", "Calendar" : "Օրացույց", + "Personal" : "Անձնական", "Today" : "Այսօր", "Day" : "Օր", "Week" : "Շաբաթ", "Month" : "Ամիս", - "Download" : "Ներբեռնել", + "Copy link" : "Պատճենել հղումը", + "Edit" : "մշակել", "Delete" : "Ջնջել", + "Export" : "Արտահանում", + "Name" : "Անուն", + "Deleted" : "Ջնջված", + "Restore" : "Վերականգնել", + "Delete permanently" : "Ջնջել ընդմիշտ", "Share link" : "Կիսվել հղմամբ", - "Share with users or groups" : "Կիսվել օգտատերերի կամ խմբերի հետ", "can edit" : "կարող է խմբագրել", + "Share with users or groups" : "Կիսվել օգտատերերի կամ խմբերի հետ", + "Save" : "Պահպանել", "Cancel" : "Չեղարկել", + "Location" : "Տեղակայություն", + "Description" : "Նկարագրություն", + "Add" : "Ավելացնել", + "Monday" : "Երկուշաբթի", + "Tuesday" : "Երեքշաբթի", + "Wednesday" : "Չորեքշաբթի", + "Thursday" : "Հինգշաբթի", + "Friday" : "Ուրբաթ", + "Saturday" : "Շաբաթ", + "Sunday" : "Կիրակի", + "Update" : "Թարմացնել", + "Notification" : "Ծանուցում", "Email" : "Էլ․փոստ", "Unknown" : "Անհայտ", + "Send email" : "Ուղարկել փոստը", + "Repeat" : "Կրկնել", "never" : "երբեք", "after" : "հետո", - "Repeat" : "Կրկնել", - "Monday" : "Երկուշաբթի", "More" : "Ավելի", - "Save" : "Պահպանել", - "Update" : "Թարմացնել", - "Personal" : "Անձնական", + "Global" : "Ընդհանուր", "Details" : "Մանրամասներ", "Attendees" : "Մասնակիցներ", - "Reminders" : "Հիշեցումներ", "Close" : "Փակել", - "today" : "այսօր", - "Location" : "Տեղակայություն", - "Description" : "Նկարագրություն", + "Daily" : "Օրական", + "Weekly" : "Շաբաթական", + "Other" : "Այլ", "Confirmed" : "Հաստատված", "Mail" : "Փոստ", - "Play" : "Նվագարկել", - "Global" : "Ընդհանուր" + "Birthday" : "Ծննդյան օր" }, "nplurals=2; plural=(n != 1);"); diff --git a/l10n/hy.json b/l10n/hy.json index 0c38d49b0b..1ac22bb059 100644 --- a/l10n/hy.json +++ b/l10n/hy.json @@ -1,36 +1,52 @@ { "translations": { "Cheers!" : "Չը՛խկ", "Calendar" : "Օրացույց", + "Personal" : "Անձնական", "Today" : "Այսօր", "Day" : "Օր", "Week" : "Շաբաթ", "Month" : "Ամիս", - "Download" : "Ներբեռնել", + "Copy link" : "Պատճենել հղումը", + "Edit" : "մշակել", "Delete" : "Ջնջել", + "Export" : "Արտահանում", + "Name" : "Անուն", + "Deleted" : "Ջնջված", + "Restore" : "Վերականգնել", + "Delete permanently" : "Ջնջել ընդմիշտ", "Share link" : "Կիսվել հղմամբ", - "Share with users or groups" : "Կիսվել օգտատերերի կամ խմբերի հետ", "can edit" : "կարող է խմբագրել", + "Share with users or groups" : "Կիսվել օգտատերերի կամ խմբերի հետ", + "Save" : "Պահպանել", "Cancel" : "Չեղարկել", + "Location" : "Տեղակայություն", + "Description" : "Նկարագրություն", + "Add" : "Ավելացնել", + "Monday" : "Երկուշաբթի", + "Tuesday" : "Երեքշաբթի", + "Wednesday" : "Չորեքշաբթի", + "Thursday" : "Հինգշաբթի", + "Friday" : "Ուրբաթ", + "Saturday" : "Շաբաթ", + "Sunday" : "Կիրակի", + "Update" : "Թարմացնել", + "Notification" : "Ծանուցում", "Email" : "Էլ․փոստ", "Unknown" : "Անհայտ", + "Send email" : "Ուղարկել փոստը", + "Repeat" : "Կրկնել", "never" : "երբեք", "after" : "հետո", - "Repeat" : "Կրկնել", - "Monday" : "Երկուշաբթի", "More" : "Ավելի", - "Save" : "Պահպանել", - "Update" : "Թարմացնել", - "Personal" : "Անձնական", + "Global" : "Ընդհանուր", "Details" : "Մանրամասներ", "Attendees" : "Մասնակիցներ", - "Reminders" : "Հիշեցումներ", "Close" : "Փակել", - "today" : "այսօր", - "Location" : "Տեղակայություն", - "Description" : "Նկարագրություն", + "Daily" : "Օրական", + "Weekly" : "Շաբաթական", + "Other" : "Այլ", "Confirmed" : "Հաստատված", "Mail" : "Փոստ", - "Play" : "Նվագարկել", - "Global" : "Ընդհանուր" + "Birthday" : "Ծննդյան օր" },"pluralForm" :"nplurals=2; plural=(n != 1);" } \ No newline at end of file diff --git a/l10n/ia.js b/l10n/ia.js index d4363dcfe4..c0284f996a 100644 --- a/l10n/ia.js +++ b/l10n/ia.js @@ -4,50 +4,70 @@ OC.L10N.register( "Hello," : "Salute %s,", "Cheers!" : "Congratulationes!", "Calendar" : "Calendario", + "Confirm" : "Confirmar", + "Anniversary" : "Anniversario de evento", + "Personal" : "Personal", "Today" : "Hodie", "Day" : "Die", "Week" : "Septimana", "Month" : "Mense", - "Download" : "Discargar", + "Preview" : "Previsualisar", + "Copy link" : "Copiar ligamine", + "Edit" : "Modificar", "Delete" : "Deler", + "New calendar" : "Nove calendario", + "Export" : "Exportar", + "Name" : "Nomine", + "Deleted" : "Delite", + "Restore" : "Restaurar", + "Delete permanently" : "Deler permanentemente", "Share link" : "Compartir ligamine", - "Share with users or groups" : "Compartir con usatores o gruppos", "can edit" : "pote modificar", - "New calendar" : "Nove calendario", + "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", - "Settings & import" : "Configurationes e importation", + "Location" : "Loco", + "Description" : "Description", + "to" : "a", + "Add" : "Adder", + "Monday" : "Lunedi", + "Tuesday" : "Martedi", + "Wednesday" : "Mercuridi", + "Thursday" : "Jovedi", + "Friday" : "Venerdi", + "Saturday" : "Sabbato", + "Sunday" : "Dominica", + "Update" : "Actualisar", + "Your email address" : "Tu adresse de e-posta", "Email" : "E-posta", + "Choose a file to add as attachment" : "Selectiona un file pro adder como attachamento", "Unknown" : "Incognite", + "Accept" : "Acceptar", + "Decline" : "Refusar", + "Tentative" : "Tentative", + "Send email" : "Inviar message de e-posta", + "Repeat" : "Repeter", "never" : "nunquam", "after" : "post", - "Repeat" : "Repeter", - "Monday" : "Lunedi", - "Summary" : "Summario", "More" : "Plus", - "Save" : "Salveguardar", - "Update" : "Actualisar", - "Personal" : "Personal", + "Global" : "Global", + "Subscribe" : "Subscribe", "Details" : "Detalios", "Attendees" : "Participantes", - "Reminders" : "Memento", "Close" : "Clauder", - "Anniversary" : "Anniversario de evento", "Week {number} of {year}" : "Septimana {number} de {year}", "Daily" : "Cata die", "Weekly" : "Cata septimana", + "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", - "Location" : "Loco", - "Description" : "Description", "Confirmed" : "Confirmate", - "Tentative" : "Tentative", "Presentation" : "Presentation", "Mail" : "Posta", - "Play" : "Reproducer", - "Global" : "Global" + "Birthday" : "Anniversario de nativitate" }, "nplurals=2; plural=(n != 1);"); diff --git a/l10n/ia.json b/l10n/ia.json index 8f9ef3cd94..2991f64375 100644 --- a/l10n/ia.json +++ b/l10n/ia.json @@ -2,50 +2,70 @@ "Hello," : "Salute %s,", "Cheers!" : "Congratulationes!", "Calendar" : "Calendario", + "Confirm" : "Confirmar", + "Anniversary" : "Anniversario de evento", + "Personal" : "Personal", "Today" : "Hodie", "Day" : "Die", "Week" : "Septimana", "Month" : "Mense", - "Download" : "Discargar", + "Preview" : "Previsualisar", + "Copy link" : "Copiar ligamine", + "Edit" : "Modificar", "Delete" : "Deler", + "New calendar" : "Nove calendario", + "Export" : "Exportar", + "Name" : "Nomine", + "Deleted" : "Delite", + "Restore" : "Restaurar", + "Delete permanently" : "Deler permanentemente", "Share link" : "Compartir ligamine", - "Share with users or groups" : "Compartir con usatores o gruppos", "can edit" : "pote modificar", - "New calendar" : "Nove calendario", + "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", - "Settings & import" : "Configurationes e importation", + "Location" : "Loco", + "Description" : "Description", + "to" : "a", + "Add" : "Adder", + "Monday" : "Lunedi", + "Tuesday" : "Martedi", + "Wednesday" : "Mercuridi", + "Thursday" : "Jovedi", + "Friday" : "Venerdi", + "Saturday" : "Sabbato", + "Sunday" : "Dominica", + "Update" : "Actualisar", + "Your email address" : "Tu adresse de e-posta", "Email" : "E-posta", + "Choose a file to add as attachment" : "Selectiona un file pro adder como attachamento", "Unknown" : "Incognite", + "Accept" : "Acceptar", + "Decline" : "Refusar", + "Tentative" : "Tentative", + "Send email" : "Inviar message de e-posta", + "Repeat" : "Repeter", "never" : "nunquam", "after" : "post", - "Repeat" : "Repeter", - "Monday" : "Lunedi", - "Summary" : "Summario", "More" : "Plus", - "Save" : "Salveguardar", - "Update" : "Actualisar", - "Personal" : "Personal", + "Global" : "Global", + "Subscribe" : "Subscribe", "Details" : "Detalios", "Attendees" : "Participantes", - "Reminders" : "Memento", "Close" : "Clauder", - "Anniversary" : "Anniversario de evento", "Week {number} of {year}" : "Septimana {number} de {year}", "Daily" : "Cata die", "Weekly" : "Cata septimana", + "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", - "Location" : "Loco", - "Description" : "Description", "Confirmed" : "Confirmate", - "Tentative" : "Tentative", "Presentation" : "Presentation", "Mail" : "Posta", - "Play" : "Reproducer", - "Global" : "Global" + "Birthday" : "Anniversario de nativitate" },"pluralForm" :"nplurals=2; plural=(n != 1);" } \ No newline at end of file diff --git a/l10n/id.js b/l10n/id.js index 21e0bd2175..59194c6a4d 100644 --- a/l10n/id.js +++ b/l10n/id.js @@ -4,12 +4,27 @@ OC.L10N.register( "Provided email-address is not valid" : "Alamat surel 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.", - "Successfully sent email to " : "Berhasil mengirim surel ke", "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!", "Calendar" : "Kalender", + "Confirm" : "Konfirmasi", + "Anniversary" : "Hari jadi", + "Appointment" : "Janji", + "Business" : "Bisnis", + "Education" : "Edukasi", + "Holiday" : "Hari raya", + "Meeting" : "Rapat", + "Miscellaneous" : "Lain-lain", + "Non-working hours" : "Luar waktu kerja", + "Not in office" : "Tidak ada di kantor", + "Personal" : "Pribadi", + "Phone call" : "Panggilan telepon", + "Sick day" : "Hari sakit", + "Special occasion" : "Acara khusus", + "Travel" : "Perjalanan", + "Vacation" : "Liburan", "A Calendar app for Nextcloud" : "Aplikasi Kalender untuk Nextcloud", "Previous day" : "Hari sebelum", "Previous week" : "Minggu sebelum", @@ -17,37 +32,41 @@ OC.L10N.register( "Next day" : "Hari setelah", "Next week" : "Minggu setelah", "Next month" : "Bulan setelah", - "+ New event" : "+ Acara baru", "Today" : "Hari Ini", "Day" : "Hari", "Week" : "Minggu", "Month" : "Bulan", - "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", - "Download" : "Unduh", + "Preview" : "Pratinjau", + "Copy link" : "Salin tautan", + "Edit" : "Sunting", "Delete" : "Hapus", + "Untitled calendar" : "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.", "_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" : "Bagi 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 …", + "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://)", "Copy subscription link" : "Salin tautan berlangganan", "Copying link …" : "Menyalin tautan …", "Copied link" : "Tautan tersalin", "Could not copy link" : "Tidak dapat menyalin tautan", + "Export" : "Ekspor", + "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.", + "Name" : "Nama", + "Deleted" : "Dihapus", + "Restore" : "Pulihkan", + "Delete permanently" : "Hapus secara permanen", + "Empty trash bin" : "Kosongkan tempat sampah", + "Share link" : "Bagikan tautan", + "Copy public link" : "Salin tautan publik", + "Send link to calendar via email" : "Kirim tautan kalender via surel", + "Sending email …" : "Mengirim surel …", "Copy embedding code" : "Salin kode penyemat", "Copying code …" : "Menyalin kode …", "Copied code" : "Kode tersalin", @@ -59,27 +78,19 @@ OC.L10N.register( "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", "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://)", + "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", "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.", - "_Successfully imported %n event_::_Successfully imported %n events._" : ["Berhasil impor %n acara."], "Automatic" : "Otomatis", "Automatic ({detected})" : "Otomatis ({detected})", "New setting was not saved successfully." : "Setelan baru tidak berhasil tersimpan.", @@ -92,21 +103,33 @@ OC.L10N.register( "Day view" : "Tampilan hari", "Week view" : "Tampilan minggu", "Month view" : "Tampilan bulan", + "List view" : "Tampilan lis", "Actions" : "Tindakan", "Create event" : "Buat acara", "Show shortcuts" : "Tampilkan pintasan", "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", - "Settings & import" : "Setelan & impor", "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", + "Location" : "Lokasi", + "Description" : "Deskrisi", + "to" : "untuk", + "Add" : "Masukkan", + "Monday" : "Senin", + "Tuesday" : "Selasa", + "Wednesday" : "Rabu", + "Thursday" : "Kamis", + "Friday" : "Jumat", + "Saturday" : "Sabtu", + "Sunday" : "Minggu", + "Update" : "Perbarui", + "Your email address" : "Alamat surel Anda", "Notification" : "Notifikasi", "Email" : "Surel", "Audio notification" : "Notifikasi audio", @@ -124,37 +147,33 @@ OC.L10N.register( "_hour_::_hours_" : ["jam"], "_day_::_days_" : ["hari"], "_week_::_weeks_" : ["minggu"], - "No reminders yet" : "Belum ada pengingat", + "Delete file" : "Hapus berkas", + "Choose a file to add as attachment" : "Pilih berkas untuk ditambahkan sebagai lampiran", "Availability of attendees, resources and rooms" : "Ketersediaan peserta, sumber daya, dan ruangan", + "Free" : "Luang", "Busy (tentative)" : "Sibuk (tentatif)", "Busy" : "Sibuk", "Out of office" : "Keluar kantor", "Unknown" : "Tidak diketahui", - "{name} accepted your invitation." : "{name} menerima undangan Anda.", - "{name} accepted {organizerName}'s invitation." : "{name} menerima undangan {organizerName}.", - "{name} declined your invitation." : "{name} menolak undangan Anda.", - "{name} declined {organizerName}'s invitation." : "{name} menolak undangan {organizerName}.", - "{name} has delegated their invitation." : "{name} telah mendelegasikan undangannya.", - "{name} marked their participation as tentative." : "{name} menandai partisipasinya sebagai tentatif.", - "{name} did not respond to your invitation yet." : "{name} belum menanggapi undangan Anda.", - "{name} did not respond to {organizerName}'s invitation yet." : "{name} belum menanggapi undangan {organizerName}.", + "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 e-mail" : "Kirim surel", + "Send email" : "Kirim surel", "Required participant" : "Partisipan wajib", "Optional participant" : "Partisipan opsional", "Non-participant" : "Bukan partisipan", "Remove attendee" : "Hapus peserta", - "Search for e-mails, users, contacts, resources or rooms" : "Cari surel, pengguna, kontak, sumber lain atau ruangan", "No match found" : "Tidak ditemukan kecocokan", - "No attendees yet" : "Belum ada peserta", "(organizer)" : "(penyelenggara)", "Remove color" : "Hapus warna", "Event title" : "Judul acara", "All day" : "Sepanjang hari", - "Can not modify all-day setting for events that are part of a recurrence-set." : "Tidak dapat mengubah setelan sepanjang hari, dari rangkaian acara berulang.", + "Repeat" : "Ulang", "End repeat" : "Akhiri perulangan", "Select to end repeat" : "Pilih untuk mengakhiri perulangan", "never" : "tidak pernah", @@ -166,52 +185,28 @@ OC.L10N.register( "fifth" : "ke-5", "second to last" : "kedua terakhir", "last" : "terakhir", - "Repeat" : "Ulang", "Repeat every" : "Ulang setiap", "By day of the month" : "Berdasarkan hari pada bulan", "On the" : "Pada", "_month_::_months_" : ["bulang"], "_year_::_years_" : ["tahun"], - "Monday" : "Senin", "weekday" : "akhir pekan", "weekend day" : "akhir pekan", - "Summary" : "Kesimpulan", "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", - "Save" : "Simpan", - "Update" : "Perbarui", "Public calendar does not exist" : "Kalender publik tidak eksis", "Maybe the share was deleted or has expired?" : "Mungkin yang dibagikan terhapus atau kadaluwarsa?", - "Please select a timezone:" : "Pilih zona waktu:", "Pick a time" : "Pilih waktu", "Pick a date" : "Pilih tanggal", "Please enter a valid date" : "Silakan isi tanggal valid", "Please enter a valid date and time" : "Silakan isi tanggal dan waktu valid", - "Type to search timezone" : "Tulis dan cari zona waktu", - "Personal" : "Pribadi", - "The automatic timezone detection determined your timezone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your timezone manually in the calendar settings." : "Deteksi otomatis menunjukkan zona waktu Anda adalah UTC.\nHal ini dikarenakan hasil dari pengaturan pada peramban web Anda.\nSilakan setel zona waktu Anda pada setelan kalender.", - "Your configured timezone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your timezone in the settings and report this issue." : "Konfigurasi zona waktu ({timezoneId}) tidak ditemukan. Kembali menggunakan UTC.\nSilakan ubah zona waktu Anda pada pengaturan dan laporkan isu ini.", + "Subscribe" : "Berlangganan", + "[Today]" : "[Hari ini]", "Details" : "Detail", "Attendees" : "Peserta", - "Reminders" : "Pengingat", "Close" : "Tutup", "Show more details" : "Tampilkan detail lain", "Subscribe to {name}" : "Berlangganan ke {name}", - "Download {name}" : "Unduh {name}", - "Anniversary" : "Hari jadi", - "Appointment" : "Janji", - "Business" : "Bisnis", - "Education" : "Edukasi", - "Holiday" : "Hari raya", - "Meeting" : "Rapat", - "Miscellaneous" : "Lain-lain", - "Non-working hours" : "Luar waktu kerja", - "Not in office" : "Tidak ada di kantor", - "Phone call" : "Panggilan telepon", - "Sick day" : "Hari sakit", - "Special occasion" : "Acara khusus", - "Travel" : "Perjalanan", - "Vacation" : "Liburan", "Midnight on the day the event starts" : "Tengah malam pada hari acara dimulai", "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n hari sebelum acara {formattedHourMinute}"], "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n pekan sebelum acara {formattedHourMinute}"], @@ -240,25 +235,26 @@ OC.L10N.register( "Untitled event" : "Acara tanpa judul", "Untitled task" : "Tugas tanpa judul", "Please ask your administrator to enable the Tasks App." : "Silakan tanya administrator Anda untuk mengaktifkan aplikasi Tugas.", - "today" : "hari ini", "_+%n more_::_+%n more_" : ["+%n lagi"], - "Location" : "Lokasi", + "Other" : "Lainnya", "Add a location" : "Tambah lokasi", - "Description" : "Deskrisi", "Add a description" : "Tambah deskripsi", "Status" : "Status", "Confirmed" : "Terkonfirmasi", - "Tentative" : "Tentatif", "Confirmation about the overall status of the event." : "Konfirmasi tentang status keseluruhan acara.", "Show as" : "Tampilkan sebagai", "Take this event into account when calculating free-busy information." : "Pertimbangkan acara ini saat perhitungan waktu luang dan sibuk.", - "Free" : "Luang", "Categories" : "Kategori", "Categories help you to structure and organize your events." : "Kategori membantu Anda menyusun dan mengatur acara.", "Search or add categories" : "Cari atau tambah kategori", "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" + "Chat room for event" : "Ruang obrolan untuk acara", + "An error occurred, unable to delete the calendar." : "Terjadi galat, tidak dapat menghapus kalender.", + "Talk" : "Talk", + "Review" : "Tinjauan", + "Mail" : "Surel", + "Birthday" : "Tanggal lahir" }, "nplurals=1; plural=0;"); diff --git a/l10n/id.json b/l10n/id.json index f777b14be1..2abb8f8b5e 100644 --- a/l10n/id.json +++ b/l10n/id.json @@ -2,12 +2,27 @@ "Provided email-address is not valid" : "Alamat surel 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.", - "Successfully sent email to " : "Berhasil mengirim surel ke", "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!", "Calendar" : "Kalender", + "Confirm" : "Konfirmasi", + "Anniversary" : "Hari jadi", + "Appointment" : "Janji", + "Business" : "Bisnis", + "Education" : "Edukasi", + "Holiday" : "Hari raya", + "Meeting" : "Rapat", + "Miscellaneous" : "Lain-lain", + "Non-working hours" : "Luar waktu kerja", + "Not in office" : "Tidak ada di kantor", + "Personal" : "Pribadi", + "Phone call" : "Panggilan telepon", + "Sick day" : "Hari sakit", + "Special occasion" : "Acara khusus", + "Travel" : "Perjalanan", + "Vacation" : "Liburan", "A Calendar app for Nextcloud" : "Aplikasi Kalender untuk Nextcloud", "Previous day" : "Hari sebelum", "Previous week" : "Minggu sebelum", @@ -15,37 +30,41 @@ "Next day" : "Hari setelah", "Next week" : "Minggu setelah", "Next month" : "Bulan setelah", - "+ New event" : "+ Acara baru", "Today" : "Hari Ini", "Day" : "Hari", "Week" : "Minggu", "Month" : "Bulan", - "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", - "Download" : "Unduh", + "Preview" : "Pratinjau", + "Copy link" : "Salin tautan", + "Edit" : "Sunting", "Delete" : "Hapus", + "Untitled calendar" : "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.", "_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" : "Bagi 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 …", + "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://)", "Copy subscription link" : "Salin tautan berlangganan", "Copying link …" : "Menyalin tautan …", "Copied link" : "Tautan tersalin", "Could not copy link" : "Tidak dapat menyalin tautan", + "Export" : "Ekspor", + "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.", + "Name" : "Nama", + "Deleted" : "Dihapus", + "Restore" : "Pulihkan", + "Delete permanently" : "Hapus secara permanen", + "Empty trash bin" : "Kosongkan tempat sampah", + "Share link" : "Bagikan tautan", + "Copy public link" : "Salin tautan publik", + "Send link to calendar via email" : "Kirim tautan kalender via surel", + "Sending email …" : "Mengirim surel …", "Copy embedding code" : "Salin kode penyemat", "Copying code …" : "Menyalin kode …", "Copied code" : "Kode tersalin", @@ -57,27 +76,19 @@ "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", "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://)", + "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", "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.", - "_Successfully imported %n event_::_Successfully imported %n events._" : ["Berhasil impor %n acara."], "Automatic" : "Otomatis", "Automatic ({detected})" : "Otomatis ({detected})", "New setting was not saved successfully." : "Setelan baru tidak berhasil tersimpan.", @@ -90,21 +101,33 @@ "Day view" : "Tampilan hari", "Week view" : "Tampilan minggu", "Month view" : "Tampilan bulan", + "List view" : "Tampilan lis", "Actions" : "Tindakan", "Create event" : "Buat acara", "Show shortcuts" : "Tampilkan pintasan", "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", - "Settings & import" : "Setelan & impor", "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", + "Location" : "Lokasi", + "Description" : "Deskrisi", + "to" : "untuk", + "Add" : "Masukkan", + "Monday" : "Senin", + "Tuesday" : "Selasa", + "Wednesday" : "Rabu", + "Thursday" : "Kamis", + "Friday" : "Jumat", + "Saturday" : "Sabtu", + "Sunday" : "Minggu", + "Update" : "Perbarui", + "Your email address" : "Alamat surel Anda", "Notification" : "Notifikasi", "Email" : "Surel", "Audio notification" : "Notifikasi audio", @@ -122,37 +145,33 @@ "_hour_::_hours_" : ["jam"], "_day_::_days_" : ["hari"], "_week_::_weeks_" : ["minggu"], - "No reminders yet" : "Belum ada pengingat", + "Delete file" : "Hapus berkas", + "Choose a file to add as attachment" : "Pilih berkas untuk ditambahkan sebagai lampiran", "Availability of attendees, resources and rooms" : "Ketersediaan peserta, sumber daya, dan ruangan", + "Free" : "Luang", "Busy (tentative)" : "Sibuk (tentatif)", "Busy" : "Sibuk", "Out of office" : "Keluar kantor", "Unknown" : "Tidak diketahui", - "{name} accepted your invitation." : "{name} menerima undangan Anda.", - "{name} accepted {organizerName}'s invitation." : "{name} menerima undangan {organizerName}.", - "{name} declined your invitation." : "{name} menolak undangan Anda.", - "{name} declined {organizerName}'s invitation." : "{name} menolak undangan {organizerName}.", - "{name} has delegated their invitation." : "{name} telah mendelegasikan undangannya.", - "{name} marked their participation as tentative." : "{name} menandai partisipasinya sebagai tentatif.", - "{name} did not respond to your invitation yet." : "{name} belum menanggapi undangan Anda.", - "{name} did not respond to {organizerName}'s invitation yet." : "{name} belum menanggapi undangan {organizerName}.", + "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 e-mail" : "Kirim surel", + "Send email" : "Kirim surel", "Required participant" : "Partisipan wajib", "Optional participant" : "Partisipan opsional", "Non-participant" : "Bukan partisipan", "Remove attendee" : "Hapus peserta", - "Search for e-mails, users, contacts, resources or rooms" : "Cari surel, pengguna, kontak, sumber lain atau ruangan", "No match found" : "Tidak ditemukan kecocokan", - "No attendees yet" : "Belum ada peserta", "(organizer)" : "(penyelenggara)", "Remove color" : "Hapus warna", "Event title" : "Judul acara", "All day" : "Sepanjang hari", - "Can not modify all-day setting for events that are part of a recurrence-set." : "Tidak dapat mengubah setelan sepanjang hari, dari rangkaian acara berulang.", + "Repeat" : "Ulang", "End repeat" : "Akhiri perulangan", "Select to end repeat" : "Pilih untuk mengakhiri perulangan", "never" : "tidak pernah", @@ -164,52 +183,28 @@ "fifth" : "ke-5", "second to last" : "kedua terakhir", "last" : "terakhir", - "Repeat" : "Ulang", "Repeat every" : "Ulang setiap", "By day of the month" : "Berdasarkan hari pada bulan", "On the" : "Pada", "_month_::_months_" : ["bulang"], "_year_::_years_" : ["tahun"], - "Monday" : "Senin", "weekday" : "akhir pekan", "weekend day" : "akhir pekan", - "Summary" : "Kesimpulan", "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", - "Save" : "Simpan", - "Update" : "Perbarui", "Public calendar does not exist" : "Kalender publik tidak eksis", "Maybe the share was deleted or has expired?" : "Mungkin yang dibagikan terhapus atau kadaluwarsa?", - "Please select a timezone:" : "Pilih zona waktu:", "Pick a time" : "Pilih waktu", "Pick a date" : "Pilih tanggal", "Please enter a valid date" : "Silakan isi tanggal valid", "Please enter a valid date and time" : "Silakan isi tanggal dan waktu valid", - "Type to search timezone" : "Tulis dan cari zona waktu", - "Personal" : "Pribadi", - "The automatic timezone detection determined your timezone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your timezone manually in the calendar settings." : "Deteksi otomatis menunjukkan zona waktu Anda adalah UTC.\nHal ini dikarenakan hasil dari pengaturan pada peramban web Anda.\nSilakan setel zona waktu Anda pada setelan kalender.", - "Your configured timezone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your timezone in the settings and report this issue." : "Konfigurasi zona waktu ({timezoneId}) tidak ditemukan. Kembali menggunakan UTC.\nSilakan ubah zona waktu Anda pada pengaturan dan laporkan isu ini.", + "Subscribe" : "Berlangganan", + "[Today]" : "[Hari ini]", "Details" : "Detail", "Attendees" : "Peserta", - "Reminders" : "Pengingat", "Close" : "Tutup", "Show more details" : "Tampilkan detail lain", "Subscribe to {name}" : "Berlangganan ke {name}", - "Download {name}" : "Unduh {name}", - "Anniversary" : "Hari jadi", - "Appointment" : "Janji", - "Business" : "Bisnis", - "Education" : "Edukasi", - "Holiday" : "Hari raya", - "Meeting" : "Rapat", - "Miscellaneous" : "Lain-lain", - "Non-working hours" : "Luar waktu kerja", - "Not in office" : "Tidak ada di kantor", - "Phone call" : "Panggilan telepon", - "Sick day" : "Hari sakit", - "Special occasion" : "Acara khusus", - "Travel" : "Perjalanan", - "Vacation" : "Liburan", "Midnight on the day the event starts" : "Tengah malam pada hari acara dimulai", "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n hari sebelum acara {formattedHourMinute}"], "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n pekan sebelum acara {formattedHourMinute}"], @@ -238,25 +233,26 @@ "Untitled event" : "Acara tanpa judul", "Untitled task" : "Tugas tanpa judul", "Please ask your administrator to enable the Tasks App." : "Silakan tanya administrator Anda untuk mengaktifkan aplikasi Tugas.", - "today" : "hari ini", "_+%n more_::_+%n more_" : ["+%n lagi"], - "Location" : "Lokasi", + "Other" : "Lainnya", "Add a location" : "Tambah lokasi", - "Description" : "Deskrisi", "Add a description" : "Tambah deskripsi", "Status" : "Status", "Confirmed" : "Terkonfirmasi", - "Tentative" : "Tentatif", "Confirmation about the overall status of the event." : "Konfirmasi tentang status keseluruhan acara.", "Show as" : "Tampilkan sebagai", "Take this event into account when calculating free-busy information." : "Pertimbangkan acara ini saat perhitungan waktu luang dan sibuk.", - "Free" : "Luang", "Categories" : "Kategori", "Categories help you to structure and organize your events." : "Kategori membantu Anda menyusun dan mengatur acara.", "Search or add categories" : "Cari atau tambah kategori", "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" + "Chat room for event" : "Ruang obrolan untuk acara", + "An error occurred, unable to delete the calendar." : "Terjadi galat, tidak dapat menghapus kalender.", + "Talk" : "Talk", + "Review" : "Tinjauan", + "Mail" : "Surel", + "Birthday" : "Tanggal lahir" },"pluralForm" :"nplurals=1; plural=0;" } \ No newline at end of file diff --git a/l10n/is.js b/l10n/is.js index 91d0d4bd07..57fb3f6925 100644 --- a/l10n/is.js +++ b/l10n/is.js @@ -5,53 +5,104 @@ OC.L10N.register( "Provided email-address is not valid" : "Uppgefið tölvupóstfang er ekki gilt", "%s has published the calendar »%s«" : "%s gaf út dagatalið »%s«", "Unexpected error sending email. Please contact your administrator." : "Óvænt vandamál kom upp við að senda tölvupóst. Hafðu samband við kerfisstjóra.", - "Successfully sent email to " : "Tókst að senda tölvupóst til", + "Successfully sent email to %1$s" : "Tókst að senda tölvupóst til %1$s", "Hello," : "Halló,", "We wanted to inform you that %s has published the calendar »%s«." : "Við vildum láta þig vita að %s gaf út dagatalið »%s«.", "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", "Calendar" : "Dagatal", + "Appointments" : "Stefnumót", + "Schedule appointment \"%s\"" : "Setja stefnumótið \"%s\" á áætlun", + "Schedule an appointment" : "Setja stefnumót á áætlun", + "Prepare for %s" : "Undirbúa fyrir %s", + "Follow up for %s" : "Fylgja eftir %s", + "Dear %s, please confirm your booking" : "Kæri/Kæra %s, staðfestu bókunina þína", + "Confirm" : "Staðfesta", + "This confirmation link expires in %s hours." : "Þessi tengill til staðfestingar rennur út eftir %s klukkustundir.", + "Date:" : "Dagsetning:", + "Where:" : "Hvar:", + "Anniversary" : "Afmæli", + "Appointment" : "Stefnumót", + "Business" : "Viðskipti", + "Education" : "Menntun", + "Holiday" : "Frí", + "Meeting" : "Fundur", + "Miscellaneous" : "Ýmislegt", + "Non-working hours" : "Utan vinnutíma", + "Not in office" : "Ekki á skrifstofunni", + "Personal" : "Persónulegt", + "Phone call" : "Símtal", + "Sick day" : "Veikindadagur", + "Special occasion" : "Sérstakt tilefni", + "Travel" : "Ferðalög", + "Vacation" : "Í fríi", "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 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", "Today" : "Í dag", "Day" : "Dagur", "Week" : "Vika", "Month" : "Mánuður", + "Year" : "Ár", "List" : "Listi", - "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", - "Download" : "Sækja", - "Unshare from me" : "Hætta deilingu frá mér", + "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", + "Shared with you by" : "Shared with you by", + "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.", "_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"], + "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://)", + "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", + "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.", + "Trash bin" : "Ruslafata", + "Name" : "Heiti", + "Deleted" : "Eytt", + "Restore" : "Endurheimta", + "Delete permanently" : "Eyða varanlega", + "Empty trash bin" : "Tæma ruslið", + "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ð?", + "Could not update calendar order." : "Gat ekki uppfært röð dagatalanna.", + "Internal link" : "Innri tengill", + "Copy internal link" : "Afrita innri tengil", "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", @@ -63,30 +114,23 @@ OC.L10N.register( "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", "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", - "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://)", + "Share with users or groups" : "Deila með notendum eða hópum", + "No users or groups" : "Engir notendur eða hópar", + "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"], - "{filename} is an unsupported file-type" : "{filename} er óstudd skráartegund", "{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", - "_Successfully imported %n event_::_Successfully imported %n events._" : ["Innflutningur tókst á %n atburði","Innflutningur tókst á %n atburðum"], + "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"], "Automatic" : "Sjálfvirkt", "Automatic ({detected})" : "Sjálfvirkt ({detected})", "New setting was not saved successfully." : "Ekki tókst að vista nýju stillinguna.", @@ -99,60 +143,142 @@ OC.L10N.register( "Day view" : "Dagsyfirlit", "Week view" : "Vikuyfirlit", "Month view" : "Mánaðaryfirlit", + "List view" : "Listasýn", "Actions" : "Aðgerðir", "Create event" : "Búa til atburð", "Show shortcuts" : "Birta flýtileiðir", + "Editor" : "Ritill", + "Close editor" : "Loka ritli", + "Save edited event" : "Vista breyttan atburð", + "Delete edited event" : "Eyða breyttum atburði", + "Duplicate event" : "Tvítaka atburð", "Enable birthday calendar" : "Virkja fæðingardagatal", "Show tasks in calendar" : "Sýna verkefni í dagatali", "Enable simplified editor" : "Virkja einfaldaðan ritil", "Show weekends" : "Sýna helgar", "Show week numbers" : "Sýna vikunúmer", + "Time increments" : "Tímaþrep", + "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", - "Settings & import" : "Stillingar og innflutningur", + "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", + "_{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"], + "_{duration} day_::_{duration} days_" : ["{duration} dagur","{duration} dagar"], + "_{duration} week_::_{duration} weeks_" : ["{duration} vika","{duration} vikur"], + "_{duration} month_::_{duration} months_" : ["{duration} mánuður","{duration} mánuðir"], + "_{duration} year_::_{duration} years_" : ["{duration} ár","{duration} ár"], + "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", + "Location" : "Staðsetning", + "Description" : "Lýsing", + "Visibility" : "Sýnileiki", + "Duration" : "Duration", + "Increments" : "Þrep", + "Additional calendars to check for conflicts" : "Viðbótardagatöl sem á að athuga með árekstra", + "Pick time ranges where appointments are allowed" : "Veldu tímabil þar sem stefnumót eru leyfð", + "to" : "til", + "Delete slot" : "Eyða tímahólfi", + "No times set" : "Engar tímasetningar stilltar", + "Add" : "Bæta við", + "Monday" : "Mánudagur", + "Tuesday" : "Þriðjudagur", + "Wednesday" : "Miðvikudagur", + "Thursday" : "Fimmtudagur", + "Friday" : "Föstudagur", + "Saturday" : "Laugardagur", + "Sunday" : "Sunnudagur", + "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", + "Update" : "Uppfæra", + "Please confirm your reservation" : "Staðfestu pöntunina þína", + "Your name" : "Nafnið þitt", + "Your email address" : "Netfangið þitt", + "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", + "before at" : "á undan klukkan", "Notification" : "Tilkynning", "Email" : "Tölvupóstur", "Audio notification" : "Hljóðáminning", "Other notification" : "Önnur áminning", "Relative to event" : "Miðað við atburð", + "On date" : "Þann", "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"], - "No reminders yet" : "Engar áminningar ennþá", + "Add from Files" : "Bæta við úr skrám", + "Delete file" : "Eyða skrá", + "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", + "Invitation accepted" : "Boð samþykkt", + "Available" : "Tiltækt", + "Suggested" : "Stungið upp á", + "Participation marked as tentative" : "Þátttaka merkt með fyrirvara", + "Accepted {organizerName}'s invitation" : "Samþykkti boð frá {organizerName}", + "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ð", + "Checking availability" : "Athuga hvað sé á lausu", + "Invitation sent" : "Boð sent", + "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", + "{organizer} (organizer)" : "{organizer} (organizer)", + "Free" : "Laus", "Busy (tentative)" : "Upptekinn (með fyrirvara)", "Busy" : "Upptekinn", "Out of office" : "Ekki á staðnum", "Unknown" : "Óþekkt", - "{name} accepted your invitation." : "{name} hefur samþykkt boð þitt.", - "{name} accepted {organizerName}'s invitation." : "{name} hefur samþykkt boð frá {organizerName}.", - "{name} declined your invitation." : "{name} hafnaði boði þínu.", - "{name} declined {organizerName}'s invitation." : "{name} hefur hafnaði boði frá {organizerName}.", - "{name} marked their participation as tentative." : "{name} merktu við þáttöku sína með fyrirvara as tentative.", - "{name} did not respond to your invitation yet." : "{name} hefur ekki svarað boðinu þínu ennþá.", - "{name} did not respond to {organizerName}'s invitation yet." : "{name} hefur ekki svarað boðinu frá {organizerName} ennþá.", + "Accept" : "Samþykkja", + "Decline" : "Hafna", + "Tentative" : "Með fyrirvara", + "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", - "Send e-mail" : "Senda tölvupóst", + "No attendees yet" : "Engir þátttakendur ennþá", + "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", "Chairperson" : "Fundarstjóri", - "Required participant" : "Nauðsynlegur þáttakandi", - "Optional participant" : "Aukaþáttakandi", - "Non-participant" : "Ekki þáttakandi", - "Remove attendee" : "Fjarlægja þáttakanda", - "Search for e-mails, users, contacts, resources or rooms" : "Leita að tölvupósti, notendum, tengiliðum, aðföngum eða fundarsölum", + "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", "No match found" : "Fann engar samsvaranir", - "No attendees yet" : "Engir þáttakendur ennþá", "(organizer)" : "(skipuleggjandi)", + "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", @@ -160,6 +286,7 @@ OC.L10N.register( "from {startDate} at {startTime}" : "frá {startDate} klukkan {startTime}", "to {endDate}" : "til {endDate}", "to {endDate} at {endTime}" : "til {endDate} klukkan {endTime}", + "Repeat" : "Endurtaka", "End repeat" : "Hætta endurtekningu", "Select to end repeat" : "Veldu til að hætta endurtekningu", "never" : "aldrei", @@ -170,66 +297,103 @@ OC.L10N.register( "third" : "þriðja", "fourth" : "fjórða", "fifth" : "fimmta", + "second to last" : "næstsíðasta", "last" : "síðasta", - "Repeat" : "Endurtaka", "Repeat every" : "Endurtaka", "By day of the month" : "Eftir degi mánaðarins", "On the" : "Þann", "_month_::_months_" : ["mánuður","mánuðir"], "_year_::_years_" : ["ár","ár"], - "Monday" : "Mánudagur", "weekday" : "vinnudagur", "weekend day" : "helgardagur", - "Summary" : "Samantekt", + "No recurrence" : "Engin endurtekning", + "Suggestions" : "Tillögur", + "No rooms or resources yet" : "Ennþá kki neinir salir eða tilföng", + "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", + "Room type" : "Tegund salar", + "Any" : "Hvað sem er", + "Minimum seating capacity" : "Lágmarks-sætafjöldi", "More" : "Meira", - "Save" : "Vista", - "Update" : "Uppfæra", "Update this occurrence" : "Uppfæra þetta tilviki", "Update this and all future" : "Uppfæra þetta og öll síðari", "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 timezone:" : "Veldu tímabelti:", + "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}", + "from {formattedDate} at {formattedTime}" : "frá {formattedDate} kl. {formattedTime}", + "to {formattedDate} at {formattedTime}" : "til {formattedDate} kl. {formattedTime}", + "on {formattedDate} at {formattedTime}" : "þann {formattedDate} kl. {formattedTime}", + "{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", - "Type to search timezone" : "Skrifaðu hér til að leita að tímabelti", - "Personal" : "Persónulegt", + "Type to search time zone" : "Skrifaðu til að leita að tímabelti...", + "Global" : "Víðvært", + "Subscribed" : "Í áskrift", + "Subscribe" : "Gerast áskrifandi", + "Select 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", + "Appointment Details:" : "Nánar um stefnumót:", + "Time:" : "Tími:", + "Booked for:" : "Bókað fyrir:", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "Takk fyrir. Bókun þín frá {startDate} til {endDate} hefur verið staðfest.", + "Book another appointment:" : "Bóka annað stefnumót:", + "See all available slots" : "Sjá öll tiltæk tímahólf", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "Tímahólfið fyrir stefnumótið þtt frá {startDate} til {endDate} er ekki lengur tiltækt.", + "Please book a different slot:" : "Bókaðu eitthvað annað tímahólf:", + "Book an appointment with {name}" : "Bóka stefnumót með {name}", + "No public appointments found for {name}" : "Engin opinber stefnumót fundust fyrir {name}", + "Create a new event" : "Búa til nýjan atburð", "[Today]" : "[Í dag]", "[Tomorrow]" : "[Á morgun]", "[Yesterday]" : "[Í gær]", + "[Last] dddd" : "[Síðasta] dddd", + "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" : "Þáttakendur", - "Reminders" : "Áminningar", + "Attendees" : "Þátttakendur", + "Resources" : "Tilföng", "Close" : "Loka", "Show more details" : "Sýna frekari upplýsingar", "Subscribe to {name}" : "Panta áskrift að {name}", - "Download {name}" : "Sækja {name}", - "Anniversary" : "Afmæli", - "Appointment" : "Stefnumót", - "Business" : "Viðskipti", - "Education" : "Menntun", - "Holiday" : "Frí", - "Meeting" : "Fundur", - "Miscellaneous" : "Ýmislegt", - "Non-working hours" : "Utan vinnutíma", - "Not in office" : "Ekki á skrifstofunni", - "Phone call" : "Símtal", - "Sick day" : "Veikindadagur", - "Special occasion" : "Sérstakt tilefni", - "Travel" : "Ferðalög", - "Vacation" : "Í fríi", + "Export {name}" : "Flytja út {name}", + "Midnight on the day the event starts" : "Miðnætti dagsins sem atburður hefst", + "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", + "{time} before the event ends" : "{time} áður en atburður endar", + "{time} after the event starts" : "{time} eftir að atburður hefst", + "{time} after the event ends" : "{time} eftir að atburður endar", + "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", "Yearly" : "Árlega", + "_Every %n day_::_Every %n days_" : ["Á %n dags fresti","Á %n daga fresti"], + "_Every %n week_::_Every %n weeks_" : ["Á %n viku fresti","Á %n vikna fresti"], + "_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}", "in {monthNames} on the {ordinalNumber} {byDaySet}" : "í {monthNames} þann {ordinalNumber} {byDaySet}", "until {untilDate}" : "þangað til {untilDate}", @@ -237,64 +401,99 @@ OC.L10N.register( "Untitled event" : "Ónefndur atburður", "Untitled task" : "Ónefnt verkefni", "Please ask your administrator to enable the Tasks App." : "Biddu kerfisstjórann þinn um að virkja verkefnasorritið (Tasks).", - "next year" : "á næsta ári", - "today" : "í dag", + "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", + "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", + "Lecture hall" : "Fyrirlestrarsalur", + "Seminar room" : "Námskeiðssalur", + "Other" : "Annað", "When shared show" : "Þegar er deilt, birta ", "When shared show full event" : "Þegar er deilt, birta allan atburð", "When shared show only busy" : "Þegar er deilt, birta eingöngu upptekið", "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", - "Location" : "Staðsetning", "Add a location" : "Bæta við staðsetningu", - "Description" : "Lýsing", "Add a description" : "Settu inn lýsingu", "Status" : "Staða", "Confirmed" : "Staðfest", - "Tentative" : "Með fyrirvara", "Canceled" : "Hætt við", "Confirmation about the overall status of the event." : "Staðfesting á almennri stöðu atburðarins.", "Show as" : "Birta sem", "Take this event into account when calculating free-busy information." : "Taka þennan atburð með í reikninga á laus/upptekinn upplýsingum.", - "Free" : "Laus", "Categories" : "Flokkar", "Categories help you to structure and organize your events." : "Flokkar hjálpa þér við að greina og skipuleggja atburði.", "Search or add categories" : "Leita eða bæta við flokkum", "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.", + "Error while sharing file" : "Villa við deilingu skráar", "Chat room for event" : "Spjallsvæði vegna atburðar", + "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", - "Review" : "Yfirfara", "Office" : "Skrifstofa", "Contributor week" : "Vika með þátttakendum", - "Party" : "Partý", - "Celebration" : "Hátíðahöld", "Mail" : "Póstur", "Soccer" : "Fótbolti", "Football" : "Ruðningsbolti", "Gaming" : "Spilun", - "Play" : "Spila", - "Game" : "Leikur", "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", @@ -305,10 +504,12 @@ OC.L10N.register( "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", @@ -319,7 +520,10 @@ OC.L10N.register( "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", @@ -338,20 +542,27 @@ OC.L10N.register( "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", - "Global" : "Víðvært" + "Appointment not found" : "Stefnumót fannst ekki", + "User not found" : "Notandi fannst ekki" }, "nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);"); diff --git a/l10n/is.json b/l10n/is.json index 1e3d815339..d460e84597 100644 --- a/l10n/is.json +++ b/l10n/is.json @@ -3,53 +3,104 @@ "Provided email-address is not valid" : "Uppgefið tölvupóstfang er ekki gilt", "%s has published the calendar »%s«" : "%s gaf út dagatalið »%s«", "Unexpected error sending email. Please contact your administrator." : "Óvænt vandamál kom upp við að senda tölvupóst. Hafðu samband við kerfisstjóra.", - "Successfully sent email to " : "Tókst að senda tölvupóst til", + "Successfully sent email to %1$s" : "Tókst að senda tölvupóst til %1$s", "Hello," : "Halló,", "We wanted to inform you that %s has published the calendar »%s«." : "Við vildum láta þig vita að %s gaf út dagatalið »%s«.", "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", "Calendar" : "Dagatal", + "Appointments" : "Stefnumót", + "Schedule appointment \"%s\"" : "Setja stefnumótið \"%s\" á áætlun", + "Schedule an appointment" : "Setja stefnumót á áætlun", + "Prepare for %s" : "Undirbúa fyrir %s", + "Follow up for %s" : "Fylgja eftir %s", + "Dear %s, please confirm your booking" : "Kæri/Kæra %s, staðfestu bókunina þína", + "Confirm" : "Staðfesta", + "This confirmation link expires in %s hours." : "Þessi tengill til staðfestingar rennur út eftir %s klukkustundir.", + "Date:" : "Dagsetning:", + "Where:" : "Hvar:", + "Anniversary" : "Afmæli", + "Appointment" : "Stefnumót", + "Business" : "Viðskipti", + "Education" : "Menntun", + "Holiday" : "Frí", + "Meeting" : "Fundur", + "Miscellaneous" : "Ýmislegt", + "Non-working hours" : "Utan vinnutíma", + "Not in office" : "Ekki á skrifstofunni", + "Personal" : "Persónulegt", + "Phone call" : "Símtal", + "Sick day" : "Veikindadagur", + "Special occasion" : "Sérstakt tilefni", + "Travel" : "Ferðalög", + "Vacation" : "Í fríi", "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 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", "Today" : "Í dag", "Day" : "Dagur", "Week" : "Vika", "Month" : "Mánuður", + "Year" : "Ár", "List" : "Listi", - "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", - "Download" : "Sækja", - "Unshare from me" : "Hætta deilingu frá mér", + "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", + "Shared with you by" : "Shared with you by", + "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.", "_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"], + "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://)", + "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", + "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.", + "Trash bin" : "Ruslafata", + "Name" : "Heiti", + "Deleted" : "Eytt", + "Restore" : "Endurheimta", + "Delete permanently" : "Eyða varanlega", + "Empty trash bin" : "Tæma ruslið", + "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ð?", + "Could not update calendar order." : "Gat ekki uppfært röð dagatalanna.", + "Internal link" : "Innri tengill", + "Copy internal link" : "Afrita innri tengil", "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", @@ -61,30 +112,23 @@ "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", "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", - "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://)", + "Share with users or groups" : "Deila með notendum eða hópum", + "No users or groups" : "Engir notendur eða hópar", + "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"], - "{filename} is an unsupported file-type" : "{filename} er óstudd skráartegund", "{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", - "_Successfully imported %n event_::_Successfully imported %n events._" : ["Innflutningur tókst á %n atburði","Innflutningur tókst á %n atburðum"], + "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"], "Automatic" : "Sjálfvirkt", "Automatic ({detected})" : "Sjálfvirkt ({detected})", "New setting was not saved successfully." : "Ekki tókst að vista nýju stillinguna.", @@ -97,60 +141,142 @@ "Day view" : "Dagsyfirlit", "Week view" : "Vikuyfirlit", "Month view" : "Mánaðaryfirlit", + "List view" : "Listasýn", "Actions" : "Aðgerðir", "Create event" : "Búa til atburð", "Show shortcuts" : "Birta flýtileiðir", + "Editor" : "Ritill", + "Close editor" : "Loka ritli", + "Save edited event" : "Vista breyttan atburð", + "Delete edited event" : "Eyða breyttum atburði", + "Duplicate event" : "Tvítaka atburð", "Enable birthday calendar" : "Virkja fæðingardagatal", "Show tasks in calendar" : "Sýna verkefni í dagatali", "Enable simplified editor" : "Virkja einfaldaðan ritil", "Show weekends" : "Sýna helgar", "Show week numbers" : "Sýna vikunúmer", + "Time increments" : "Tímaþrep", + "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", - "Settings & import" : "Stillingar og innflutningur", + "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", + "_{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"], + "_{duration} day_::_{duration} days_" : ["{duration} dagur","{duration} dagar"], + "_{duration} week_::_{duration} weeks_" : ["{duration} vika","{duration} vikur"], + "_{duration} month_::_{duration} months_" : ["{duration} mánuður","{duration} mánuðir"], + "_{duration} year_::_{duration} years_" : ["{duration} ár","{duration} ár"], + "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", + "Location" : "Staðsetning", + "Description" : "Lýsing", + "Visibility" : "Sýnileiki", + "Duration" : "Duration", + "Increments" : "Þrep", + "Additional calendars to check for conflicts" : "Viðbótardagatöl sem á að athuga með árekstra", + "Pick time ranges where appointments are allowed" : "Veldu tímabil þar sem stefnumót eru leyfð", + "to" : "til", + "Delete slot" : "Eyða tímahólfi", + "No times set" : "Engar tímasetningar stilltar", + "Add" : "Bæta við", + "Monday" : "Mánudagur", + "Tuesday" : "Þriðjudagur", + "Wednesday" : "Miðvikudagur", + "Thursday" : "Fimmtudagur", + "Friday" : "Föstudagur", + "Saturday" : "Laugardagur", + "Sunday" : "Sunnudagur", + "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", + "Update" : "Uppfæra", + "Please confirm your reservation" : "Staðfestu pöntunina þína", + "Your name" : "Nafnið þitt", + "Your email address" : "Netfangið þitt", + "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", + "before at" : "á undan klukkan", "Notification" : "Tilkynning", "Email" : "Tölvupóstur", "Audio notification" : "Hljóðáminning", "Other notification" : "Önnur áminning", "Relative to event" : "Miðað við atburð", + "On date" : "Þann", "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"], - "No reminders yet" : "Engar áminningar ennþá", + "Add from Files" : "Bæta við úr skrám", + "Delete file" : "Eyða skrá", + "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", + "Invitation accepted" : "Boð samþykkt", + "Available" : "Tiltækt", + "Suggested" : "Stungið upp á", + "Participation marked as tentative" : "Þátttaka merkt með fyrirvara", + "Accepted {organizerName}'s invitation" : "Samþykkti boð frá {organizerName}", + "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ð", + "Checking availability" : "Athuga hvað sé á lausu", + "Invitation sent" : "Boð sent", + "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", + "{organizer} (organizer)" : "{organizer} (organizer)", + "Free" : "Laus", "Busy (tentative)" : "Upptekinn (með fyrirvara)", "Busy" : "Upptekinn", "Out of office" : "Ekki á staðnum", "Unknown" : "Óþekkt", - "{name} accepted your invitation." : "{name} hefur samþykkt boð þitt.", - "{name} accepted {organizerName}'s invitation." : "{name} hefur samþykkt boð frá {organizerName}.", - "{name} declined your invitation." : "{name} hafnaði boði þínu.", - "{name} declined {organizerName}'s invitation." : "{name} hefur hafnaði boði frá {organizerName}.", - "{name} marked their participation as tentative." : "{name} merktu við þáttöku sína með fyrirvara as tentative.", - "{name} did not respond to your invitation yet." : "{name} hefur ekki svarað boðinu þínu ennþá.", - "{name} did not respond to {organizerName}'s invitation yet." : "{name} hefur ekki svarað boðinu frá {organizerName} ennþá.", + "Accept" : "Samþykkja", + "Decline" : "Hafna", + "Tentative" : "Með fyrirvara", + "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", - "Send e-mail" : "Senda tölvupóst", + "No attendees yet" : "Engir þátttakendur ennþá", + "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", "Chairperson" : "Fundarstjóri", - "Required participant" : "Nauðsynlegur þáttakandi", - "Optional participant" : "Aukaþáttakandi", - "Non-participant" : "Ekki þáttakandi", - "Remove attendee" : "Fjarlægja þáttakanda", - "Search for e-mails, users, contacts, resources or rooms" : "Leita að tölvupósti, notendum, tengiliðum, aðföngum eða fundarsölum", + "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", "No match found" : "Fann engar samsvaranir", - "No attendees yet" : "Engir þáttakendur ennþá", "(organizer)" : "(skipuleggjandi)", + "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", @@ -158,6 +284,7 @@ "from {startDate} at {startTime}" : "frá {startDate} klukkan {startTime}", "to {endDate}" : "til {endDate}", "to {endDate} at {endTime}" : "til {endDate} klukkan {endTime}", + "Repeat" : "Endurtaka", "End repeat" : "Hætta endurtekningu", "Select to end repeat" : "Veldu til að hætta endurtekningu", "never" : "aldrei", @@ -168,66 +295,103 @@ "third" : "þriðja", "fourth" : "fjórða", "fifth" : "fimmta", + "second to last" : "næstsíðasta", "last" : "síðasta", - "Repeat" : "Endurtaka", "Repeat every" : "Endurtaka", "By day of the month" : "Eftir degi mánaðarins", "On the" : "Þann", "_month_::_months_" : ["mánuður","mánuðir"], "_year_::_years_" : ["ár","ár"], - "Monday" : "Mánudagur", "weekday" : "vinnudagur", "weekend day" : "helgardagur", - "Summary" : "Samantekt", + "No recurrence" : "Engin endurtekning", + "Suggestions" : "Tillögur", + "No rooms or resources yet" : "Ennþá kki neinir salir eða tilföng", + "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", + "Room type" : "Tegund salar", + "Any" : "Hvað sem er", + "Minimum seating capacity" : "Lágmarks-sætafjöldi", "More" : "Meira", - "Save" : "Vista", - "Update" : "Uppfæra", "Update this occurrence" : "Uppfæra þetta tilviki", "Update this and all future" : "Uppfæra þetta og öll síðari", "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 timezone:" : "Veldu tímabelti:", + "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}", + "from {formattedDate} at {formattedTime}" : "frá {formattedDate} kl. {formattedTime}", + "to {formattedDate} at {formattedTime}" : "til {formattedDate} kl. {formattedTime}", + "on {formattedDate} at {formattedTime}" : "þann {formattedDate} kl. {formattedTime}", + "{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", - "Type to search timezone" : "Skrifaðu hér til að leita að tímabelti", - "Personal" : "Persónulegt", + "Type to search time zone" : "Skrifaðu til að leita að tímabelti...", + "Global" : "Víðvært", + "Subscribed" : "Í áskrift", + "Subscribe" : "Gerast áskrifandi", + "Select 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", + "Appointment Details:" : "Nánar um stefnumót:", + "Time:" : "Tími:", + "Booked for:" : "Bókað fyrir:", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "Takk fyrir. Bókun þín frá {startDate} til {endDate} hefur verið staðfest.", + "Book another appointment:" : "Bóka annað stefnumót:", + "See all available slots" : "Sjá öll tiltæk tímahólf", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "Tímahólfið fyrir stefnumótið þtt frá {startDate} til {endDate} er ekki lengur tiltækt.", + "Please book a different slot:" : "Bókaðu eitthvað annað tímahólf:", + "Book an appointment with {name}" : "Bóka stefnumót með {name}", + "No public appointments found for {name}" : "Engin opinber stefnumót fundust fyrir {name}", + "Create a new event" : "Búa til nýjan atburð", "[Today]" : "[Í dag]", "[Tomorrow]" : "[Á morgun]", "[Yesterday]" : "[Í gær]", + "[Last] dddd" : "[Síðasta] dddd", + "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" : "Þáttakendur", - "Reminders" : "Áminningar", + "Attendees" : "Þátttakendur", + "Resources" : "Tilföng", "Close" : "Loka", "Show more details" : "Sýna frekari upplýsingar", "Subscribe to {name}" : "Panta áskrift að {name}", - "Download {name}" : "Sækja {name}", - "Anniversary" : "Afmæli", - "Appointment" : "Stefnumót", - "Business" : "Viðskipti", - "Education" : "Menntun", - "Holiday" : "Frí", - "Meeting" : "Fundur", - "Miscellaneous" : "Ýmislegt", - "Non-working hours" : "Utan vinnutíma", - "Not in office" : "Ekki á skrifstofunni", - "Phone call" : "Símtal", - "Sick day" : "Veikindadagur", - "Special occasion" : "Sérstakt tilefni", - "Travel" : "Ferðalög", - "Vacation" : "Í fríi", + "Export {name}" : "Flytja út {name}", + "Midnight on the day the event starts" : "Miðnætti dagsins sem atburður hefst", + "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", + "{time} before the event ends" : "{time} áður en atburður endar", + "{time} after the event starts" : "{time} eftir að atburður hefst", + "{time} after the event ends" : "{time} eftir að atburður endar", + "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", "Yearly" : "Árlega", + "_Every %n day_::_Every %n days_" : ["Á %n dags fresti","Á %n daga fresti"], + "_Every %n week_::_Every %n weeks_" : ["Á %n viku fresti","Á %n vikna fresti"], + "_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}", "in {monthNames} on the {ordinalNumber} {byDaySet}" : "í {monthNames} þann {ordinalNumber} {byDaySet}", "until {untilDate}" : "þangað til {untilDate}", @@ -235,64 +399,99 @@ "Untitled event" : "Ónefndur atburður", "Untitled task" : "Ónefnt verkefni", "Please ask your administrator to enable the Tasks App." : "Biddu kerfisstjórann þinn um að virkja verkefnasorritið (Tasks).", - "next year" : "á næsta ári", - "today" : "í dag", + "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", + "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", + "Lecture hall" : "Fyrirlestrarsalur", + "Seminar room" : "Námskeiðssalur", + "Other" : "Annað", "When shared show" : "Þegar er deilt, birta ", "When shared show full event" : "Þegar er deilt, birta allan atburð", "When shared show only busy" : "Þegar er deilt, birta eingöngu upptekið", "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", - "Location" : "Staðsetning", "Add a location" : "Bæta við staðsetningu", - "Description" : "Lýsing", "Add a description" : "Settu inn lýsingu", "Status" : "Staða", "Confirmed" : "Staðfest", - "Tentative" : "Með fyrirvara", "Canceled" : "Hætt við", "Confirmation about the overall status of the event." : "Staðfesting á almennri stöðu atburðarins.", "Show as" : "Birta sem", "Take this event into account when calculating free-busy information." : "Taka þennan atburð með í reikninga á laus/upptekinn upplýsingum.", - "Free" : "Laus", "Categories" : "Flokkar", "Categories help you to structure and organize your events." : "Flokkar hjálpa þér við að greina og skipuleggja atburði.", "Search or add categories" : "Leita eða bæta við flokkum", "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.", + "Error while sharing file" : "Villa við deilingu skráar", "Chat room for event" : "Spjallsvæði vegna atburðar", + "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", - "Review" : "Yfirfara", "Office" : "Skrifstofa", "Contributor week" : "Vika með þátttakendum", - "Party" : "Partý", - "Celebration" : "Hátíðahöld", "Mail" : "Póstur", "Soccer" : "Fótbolti", "Football" : "Ruðningsbolti", "Gaming" : "Spilun", - "Play" : "Spila", - "Game" : "Leikur", "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", @@ -303,10 +502,12 @@ "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", @@ -317,7 +518,10 @@ "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", @@ -336,20 +540,27 @@ "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", - "Global" : "Víðvært" + "Appointment not found" : "Stefnumót fannst ekki", + "User not found" : "Notandi fannst ekki" },"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 13b17c4535..1e3ebdb8f4 100644 --- a/l10n/it.js +++ b/l10n/it.js @@ -5,13 +5,47 @@ OC.L10N.register( "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 " : "Email inviata correttamente a", + "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». ", "Open »%s«" : "Apri «%s»", "Cheers!" : "Evviva!", "Upcoming events" : "Prossimi eventi", + "More events" : "Altri eventi", + "No more events today" : "Non ci sono altri eventi oggi", + "No upcoming events" : "Nessun prossimo evento", "Calendar" : "Calendario", + "New booking {booking}" : "Nuova prenotazione {booking}", + "Appointments" : "Appuntamenti", + "Schedule appointment \"%s\"" : "Fissa appuntamento \"%s\"", + "Schedule an appointment" : "Fissa un appuntamento", + "Prepare for %s" : "Prepara per %s", + "Follow up for %s" : "Azione supplementare per %s", + "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", + "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 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 %s, la tua prenotazione è stata accettata.", + "Appointment for:" : "Appuntamento per:", + "Date:" : "Data:", + "Where:" : "Luogo:", + "Anniversary" : "Anniversario", + "Appointment" : "Appuntamento", + "Business" : "Lavoro", + "Education" : "Formazione", + "Holiday" : "Vacanza", + "Meeting" : "Riunione", + "Miscellaneous" : "Varie", + "Non-working hours" : "Ore non lavorative", + "Not in office" : "Non in ufficio", + "Personal" : "Personale", + "Phone call" : "Telefonata", + "Sick day" : "Giorno di malattia", + "Special occasion" : "Occasione speciale", + "Travel" : "Viaggio", + "Vacation" : "Assenza", "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).", "Previous day" : "Giorno precedente", @@ -19,41 +53,68 @@ OC.L10N.register( "Previous month" : "Mese precedente", "Next day" : "Giorno successivo", "Next week" : "Settimana successiva", + "Next year" : "Anno succ.", "Next month" : "Mese successivo", - "+ New event" : "+ Nuovo evento", "Today" : "Oggi", "Day" : "Giorno", "Week" : "Settimana", "Month" : "Mese", + "Year" : "Anno", "List" : "Elenco", - "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", - "Download" : "Scarica", - "Unshare from me" : "Rimuovi condivisione da me", + "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", + "Shared with you by" : "Condiviso con te da", + "Edit and share calendar" : "Modifica e condividi il calendario", + "Edit calendar" : "Modifica il calendario", + "Disable calendar \"{calendar}\"" : "Disabilita il calendario \"{calendar}\"", + "Disable untitled calendar" : "Disabilita il calendario senza titolo", + "Enable calendar \"{calendar}\"" : "Abilita calendario \"{calendar}\"", + "Enable untitled calendar" : "Abilita 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.", + "_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"], + "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://)", + "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", "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.", - "_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"], - "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Eliminazione del calendario in {countdown} secondo","Eliminazione del calendario in {countdown} secondi"], + "Trash bin" : "Cestino", + "Loading deleted items." : "Caricamento elementi cancellati.", + "You do not have any deleted items." : "Non sono presenti elementi eliminati.", + "Name" : "Nome", + "Deleted" : "Eliminati", + "Restore" : "Ripristina", + "Delete permanently" : "Elimina definitivamente", + "Empty trash bin" : "Svuota cestino", + "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 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?", + "Could not update calendar order." : "Impossibile aggiornare l'ordine del calendario.", + "Internal link" : "Collegamento interno", + "Copy internal link" : "Copia collegamento interno", "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", @@ -65,32 +126,26 @@ OC.L10N.register( "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", "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", - "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://)", - "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", + "Calendar name …" : "Nome del calendario...", + "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...", "Filename" : "Nome file", "Calendar to import into" : "Calendario in cui importare", "Cancel" : "Annulla", - "_Import calendar_::_Import calendars_" : ["Importa calendario","Importa calendari"], - "{filename} is an unsupported file-type" : "{filename} è un tipo di file non supportato", + "_Import calendar_::_Import calendars_" : ["Importa calendario","Importa calendari","Importa calendari"], + "Invalid location selected" : "Percorso selezionato non valido", "{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._" : ["Importato correttamente %n evento","Importati correttamente %n eventi."], + "_Successfully imported %n event_::_Successfully imported %n events_" : ["%n evento importato con successo","%n evento importato con successo","%n evento importato con successo"], "Automatic" : "Automatico", "Automatic ({detected})" : "Automatico ({detected})", "New setting was not saved successfully." : "La nuova impostazione non è stata salvata correttamente.", @@ -103,21 +158,79 @@ OC.L10N.register( "Day view" : "Vista del giorno", "Week view" : "Vista della settimana", "Month view" : "Vista del mese", + "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", "Enable birthday calendar" : "Attiva calendario dei compleanni", "Show tasks in calendar" : "Mostra le attività in calendario", "Enable simplified editor" : "Attiva editor semplificato", - "Limit visible events per view" : "Limita gli eventi visibili per vista", "Show weekends" : "Mostra i fine settimana", "Show week numbers" : "Mostra i numeri delle settimane", + "Time increments" : "Incrementi di tempo", + "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", - "Settings & import" : "Impostazioni e importazione", + "Calendar settings" : "Impostazioni Calendario", + "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", + "_{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"], + "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 name" : "Nome appuntamento", + "Location" : "Luogo", + "Description" : "Descrizione", + "Visibility" : "Visibilità", + "Duration" : "Durata", + "Increments" : "Incrementi", + "Additional calendars to check for conflicts" : "Calendari aggiuntivi per controllare conflitti", + "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", + "Add" : "Aggiungi", + "Monday" : "Lunedì", + "Tuesday" : "Martedì", + "Wednesday" : "Mercoledì", + "Thursday" : "Giovedì", + "Friday" : "Venerdì", + "Saturday" : "Sabato", + "Sunday" : "Domenica", + "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", + "Planning restrictions" : "Restrizioni sulla pianificazione", + "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", + "Update" : "Aggiorna", + "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", "before at" : "prima di", "Notification" : "Notifica", "Email" : "Email", @@ -131,55 +244,75 @@ OC.L10N.register( "on" : "il", "at" : "alle", "+ Add reminder" : "+ Aggiungi promemoria", - "_second_::_seconds_" : ["secondo","secondi"], - "_minute_::_minutes_" : ["minuto","minuti"], - "_hour_::_hours_" : ["ora","ore"], - "_day_::_days_" : ["giorno","giorni"], - "_week_::_weeks_" : ["settimana","settimane"], - "No reminders yet" : "Ancora nessun 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"], + "Add from Files" : "Aggiungi da File", + "Delete file" : "Elimina file", + "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", + "Invitation accepted" : "Invito accettato", + "Available" : "Disponibile", + "Suggested" : "Suggerito", + "Participation marked as tentative" : "Partecipazione contrassegnata come provvisoria", + "Accepted {organizerName}'s invitation" : "Invito di {organizerName} accettato", + "Not available" : "Non disponibile", + "Invitation declined" : "Invito rifiutato", + "Declined {organizerName}'s invitation" : "Invito di {organizerName} rifiutato", + "Invitation is delegated" : "Invito delegato", + "Checking availability" : "Verifica disponibilità", + "Invitation sent" : "Invito spedito", + "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", + "{organizer} (organizer)" : "{organizer} (organizzatore)", + "Free" : "Libero", "Busy (tentative)" : "Occupato (provvisorio)", "Busy" : "Occupato", "Out of office" : "Fuori sede", "Unknown" : "Sconosciuto", - "{name} accepted your invitation." : "{name} ha accettato il tuo invito.", - "{name} accepted {organizerName}'s invitation." : "{name} ha accettato l'invito di {organizerName}.", - "{name} declined your invitation." : "{name} ha rifiutato il tuo invito.", - "{name} declined {organizerName}'s invitation." : "{name} ha rifiutato l'invito di {organizerName}.", - "{name} has delegated their invitation." : "{name} ha delegato il suo invito.", - "{name} marked their participation as tentative." : "{name} ha segnato la sua partecipazione come provvisoria.", - "{name} did not respond to your invitation yet." : "{name} non ha ancora risposto al tuo invito.", - "{name} did not respond to {organizerName}'s invitation yet." : "{name} non ha ancora risposto all'invito di {organizerName}.", + "Accept" : "Accetta", + "Decline" : "Rifiuta", + "Tentative" : "Provvisorio", + "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", + "No attendees yet" : "Ancora nessun partecipante", "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 e-mail" : "Invia email", + "Send email" : "Invia email", "Chairperson" : "Presidente", "Required participant" : "Partecipante necessario", "Optional participant" : "Partecipante facoltativo", "Non-participant" : "Non partecipante", "Remove attendee" : "Rimuovi partecipante", - "Search for e-mails, users, contacts, resources or rooms" : "Cerca email, utenti, contatti, risorse o stanze", + "Search for emails, users or contacts" : "Cerca email, utenti o contatti", "No match found" : "Nessuna corrispondenza trovata", - "No attendees yet" : "Ancora nessun partecipante", "(organizer)" : "(organizzatore)", "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", - "Can not 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.", + "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}", + "Repeat" : "Ripeti", "End repeat" : "Termina ripetizione", "Select to end repeat" : "Seleziona per terminare la ripetizione", "never" : "mai", "on date" : "in data", "after" : "dopo", - "_time_::_times_" : ["volta","volte"], - "This event is the recurrence-exception of a recurrence-set. You can not add a recurrence-rule to it." : "Questo evento è l'eccezione di un insieme di ricorrenze. Non puoi aggiungergli una regola di ricorrenza.", + "_time_::_times_" : ["volta","volte","volte"], + "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", @@ -187,25 +320,37 @@ OC.L10N.register( "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" : "Ripeti", "Repeat every" : "Ripeti ogni", "By day of the month" : "Per giorno del mese", "On the" : "Il", - "_month_::_months_" : ["mese","mesi"], - "_year_::_years_" : ["anno","anni"], - "Monday" : "Lunedì", + "_month_::_months_" : ["mese","mesi","mesi"], + "_year_::_years_" : ["anno","anni","anni"], "weekday" : "giorno feriale", "weekend day" : "giorno del fine settimana", - "Summary" : "Riepilogo", + "No recurrence" : "Nessuna ricorrenza", "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", + "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", + "Room type" : "Tipo stanza", + "Any" : "Qualsiasi", + "Minimum seating capacity" : "Numero minimo di sedie", "More" : "Altro", - "Save" : "Salva", - "Update" : "Aggiorna", "Update this occurrence" : "Aggiorna questa occorrenza", "Update this and all future" : "Aggiorna questa e tutte le future", "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 timezone:" : "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", "from {formattedDate}" : "dal {formattedDate}", @@ -217,44 +362,46 @@ 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", - "Type to search timezone" : "Digita per cercare il fuso orario", - "Personal" : "Personale", - "The automatic timezone detection determined your timezone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your timezone 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 timezone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your timezone 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", + "Type to search time zone" : "Digita per cercare il fuso orario", + "Global" : "Globale", + "Subscribed" : "Sottoscritta", + "Subscribe" : "Iscrizione", + "Select date" : "Seleziona 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", + "Appointment Details:" : "Dettagli appuntamento:", + "Time:" : "Ora:", + "Booked for:" : "Prenotato per:", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "Grazie. La tua prenotazione dal {startDate} al {endDate} è stata confermata.", + "Book another appointment:" : "Prenota un altro appuntamento:", + "See all available slots" : "Mostra tutti gli slot disponibili", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "Lo slot per il tuo appuntamento dal {startDate} al {endDate} non è più disponibile.", + "Please book a different slot:" : "Prenota uno slot diverso:", + "Book an appointment with {name}" : "Prenota un appuntamento con {name}", + "No public appointments found for {name}" : "Nessun appuntamento pubblico trovato per {name}", + "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.", "Create a new event" : "Crea un nuovo evento", "[Today]" : "[Oggi]", "[Tomorrow]" : "[Domani]", "[Yesterday]" : "[Ieri]", "[Last] dddd" : "[Ultimo] dddd", "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", + "Invite" : "Invita", "Attendees" : "Partecipanti", - "Reminders" : "Promemoria", + "Resources" : "Risorse", "Close" : "Chiudi", "Show more details" : "Mostra altri dettagli", "Subscribe to {name}" : "Sottoscrivi {name}", - "Download {name}" : "Scarica {name}", - "Anniversary" : "Anniversario", - "Appointment" : "Appuntamento", - "Business" : "Lavoro", - "Education" : "Formazione", - "Holiday" : "Vacanza", - "Meeting" : "Riunione", - "Miscellaneous" : "Varie", - "Non-working hours" : "Ore non lavorative", - "Not in office" : "Non in ufficio", - "Phone call" : "Telefonata", - "Sick day" : "Giorno di malattia", - "Special occasion" : "Occasione speciale", - "Travel" : "Viaggio", - "Vacation" : "Assenza", + "Export {name}" : "Esporta {name}", "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 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 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}"], "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", @@ -270,91 +417,114 @@ OC.L10N.register( "Weekly" : "Settimanalmente", "Monthly" : "Mensilmente", "Yearly" : "Annualmente", - "_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}"], + "_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}"], "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 time_::_%n times_" : ["%n volta","%n volte","%n volte"], "Untitled event" : "Evento senza titolo", "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" : "il prossimo anno", - "today" : "oggi", - "list" : "elenco", "W" : "S", - "all-day" : "Tutto il giorno", "%n more" : "%n altri", "No events to display" : "Nessun evento da visualizzare", - "_+%n more_::_+%n more_" : ["+%n altro","+%n altri"], + "_+%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", "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", + "Lecture hall" : "Sala conferenze", + "Seminar room" : "Sala seminari", + "Other" : "Altro", "When shared show" : "Se condiviso, mostra", "When shared show full event" : "Se condiviso, mostra evento completo", "When shared show only busy" : "Se condiviso, mostra solo occupato", "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.", - "Location" : "Luogo", "Add a location" : "Aggiungi un luogo", - "Description" : "Descrizione", "Add a description" : "Aggiungi una descrizione", "Status" : "Stato", "Confirmed" : "Confermato", - "Tentative" : "Provvisorio", "Canceled" : "Annullato", "Confirmation about the overall status of the event." : "Conferma sullo stato complessivo dell'evento.", "Show as" : "Mostra come", "Take this event into account when calculating free-busy information." : "Considera questo evento nel calcolo delle informazioni libero-occupato.", - "Free" : "Libero", "Categories" : "Categorie", "Categories help you to structure and organize your events." : "Le categorie ti aiutano a strutturare e organizzare i tuoi eventi.", "Search or add categories" : "Cerca o aggiungi categorie", "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.", + "Error while sharing file" : "Errore durante la condivisione del file", "Chat room for event" : "Stanza di chat per evento", + "An error occurred, unable to delete the calendar." : "Si è verificato un errore, impossibile eliminare il calendario.", "Imported {filename}" : "Importato {filename}", + "This is an event reminder." : "Questo è un promemoria dell'evento.", "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", - "Present" : "Presentare", + "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", - "Review" : "Recensione", "Office" : "Ufficio", "Contributor week" : "Settimana del collaboratore", - "Party" : "Festa", - "Celebration" : "Celebrazione", "Mail" : "Posta", "Soccer" : "Calcio", "Football" : "Football", "Gaming" : "Gioco", - "Play" : "Giocare", - "Game" : "Gioco", "Drive" : "Guidare", + "Driving" : "Guidare", "Bicycle" : "Bicicletta", "Cycle" : "Pedalare", + "Cycling" : "Andare in bicicletta", "Biking" : "Pedalata", + "Bike" : "Bicicletta", "Podcast" : "Podcast", "Basketball" : "Pallacanestro", "Fishing" : "Pesca", @@ -365,10 +535,12 @@ OC.L10N.register( "Museum" : "Museo", "Pilates" : "Pilates", "Park" : "Parco", + "Walk" : "Camminare", "Studying" : "Studiare", "Doctor" : "Medico", "Health" : "Salute", "Dentist" : "Dentista", + "Hospital" : "Ospedale", "Interview" : "Intervista", "Training" : "Allenamento", "Practice" : "Esercitazione", @@ -379,7 +551,10 @@ OC.L10N.register( "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", @@ -398,20 +573,27 @@ OC.L10N.register( "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", - "Global" : "Globale" + "Appointment not found" : "Appuntamento non trovato", + "User not found" : "Utente non trovato" }, -"nplurals=2; plural=(n != 1);"); +"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); diff --git a/l10n/it.json b/l10n/it.json index d0a97ccdaf..6f2ea5599a 100644 --- a/l10n/it.json +++ b/l10n/it.json @@ -3,13 +3,47 @@ "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 " : "Email inviata correttamente a", + "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». ", "Open »%s«" : "Apri «%s»", "Cheers!" : "Evviva!", "Upcoming events" : "Prossimi eventi", + "More events" : "Altri eventi", + "No more events today" : "Non ci sono altri eventi oggi", + "No upcoming events" : "Nessun prossimo evento", "Calendar" : "Calendario", + "New booking {booking}" : "Nuova prenotazione {booking}", + "Appointments" : "Appuntamenti", + "Schedule appointment \"%s\"" : "Fissa appuntamento \"%s\"", + "Schedule an appointment" : "Fissa un appuntamento", + "Prepare for %s" : "Prepara per %s", + "Follow up for %s" : "Azione supplementare per %s", + "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", + "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 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 %s, la tua prenotazione è stata accettata.", + "Appointment for:" : "Appuntamento per:", + "Date:" : "Data:", + "Where:" : "Luogo:", + "Anniversary" : "Anniversario", + "Appointment" : "Appuntamento", + "Business" : "Lavoro", + "Education" : "Formazione", + "Holiday" : "Vacanza", + "Meeting" : "Riunione", + "Miscellaneous" : "Varie", + "Non-working hours" : "Ore non lavorative", + "Not in office" : "Non in ufficio", + "Personal" : "Personale", + "Phone call" : "Telefonata", + "Sick day" : "Giorno di malattia", + "Special occasion" : "Occasione speciale", + "Travel" : "Viaggio", + "Vacation" : "Assenza", "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).", "Previous day" : "Giorno precedente", @@ -17,41 +51,68 @@ "Previous month" : "Mese precedente", "Next day" : "Giorno successivo", "Next week" : "Settimana successiva", + "Next year" : "Anno succ.", "Next month" : "Mese successivo", - "+ New event" : "+ Nuovo evento", "Today" : "Oggi", "Day" : "Giorno", "Week" : "Settimana", "Month" : "Mese", + "Year" : "Anno", "List" : "Elenco", - "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", - "Download" : "Scarica", - "Unshare from me" : "Rimuovi condivisione da me", + "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", + "Shared with you by" : "Condiviso con te da", + "Edit and share calendar" : "Modifica e condividi il calendario", + "Edit calendar" : "Modifica il calendario", + "Disable calendar \"{calendar}\"" : "Disabilita il calendario \"{calendar}\"", + "Disable untitled calendar" : "Disabilita il calendario senza titolo", + "Enable calendar \"{calendar}\"" : "Abilita calendario \"{calendar}\"", + "Enable untitled calendar" : "Abilita 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.", + "_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"], + "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://)", + "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", "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.", - "_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"], - "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Eliminazione del calendario in {countdown} secondo","Eliminazione del calendario in {countdown} secondi"], + "Trash bin" : "Cestino", + "Loading deleted items." : "Caricamento elementi cancellati.", + "You do not have any deleted items." : "Non sono presenti elementi eliminati.", + "Name" : "Nome", + "Deleted" : "Eliminati", + "Restore" : "Ripristina", + "Delete permanently" : "Elimina definitivamente", + "Empty trash bin" : "Svuota cestino", + "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 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?", + "Could not update calendar order." : "Impossibile aggiornare l'ordine del calendario.", + "Internal link" : "Collegamento interno", + "Copy internal link" : "Copia collegamento interno", "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", @@ -63,32 +124,26 @@ "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", "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", - "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://)", - "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", + "Calendar name …" : "Nome del calendario...", + "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...", "Filename" : "Nome file", "Calendar to import into" : "Calendario in cui importare", "Cancel" : "Annulla", - "_Import calendar_::_Import calendars_" : ["Importa calendario","Importa calendari"], - "{filename} is an unsupported file-type" : "{filename} è un tipo di file non supportato", + "_Import calendar_::_Import calendars_" : ["Importa calendario","Importa calendari","Importa calendari"], + "Invalid location selected" : "Percorso selezionato non valido", "{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._" : ["Importato correttamente %n evento","Importati correttamente %n eventi."], + "_Successfully imported %n event_::_Successfully imported %n events_" : ["%n evento importato con successo","%n evento importato con successo","%n evento importato con successo"], "Automatic" : "Automatico", "Automatic ({detected})" : "Automatico ({detected})", "New setting was not saved successfully." : "La nuova impostazione non è stata salvata correttamente.", @@ -101,21 +156,79 @@ "Day view" : "Vista del giorno", "Week view" : "Vista della settimana", "Month view" : "Vista del mese", + "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", "Enable birthday calendar" : "Attiva calendario dei compleanni", "Show tasks in calendar" : "Mostra le attività in calendario", "Enable simplified editor" : "Attiva editor semplificato", - "Limit visible events per view" : "Limita gli eventi visibili per vista", "Show weekends" : "Mostra i fine settimana", "Show week numbers" : "Mostra i numeri delle settimane", + "Time increments" : "Incrementi di tempo", + "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", - "Settings & import" : "Impostazioni e importazione", + "Calendar settings" : "Impostazioni Calendario", + "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", + "_{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"], + "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 name" : "Nome appuntamento", + "Location" : "Luogo", + "Description" : "Descrizione", + "Visibility" : "Visibilità", + "Duration" : "Durata", + "Increments" : "Incrementi", + "Additional calendars to check for conflicts" : "Calendari aggiuntivi per controllare conflitti", + "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", + "Add" : "Aggiungi", + "Monday" : "Lunedì", + "Tuesday" : "Martedì", + "Wednesday" : "Mercoledì", + "Thursday" : "Giovedì", + "Friday" : "Venerdì", + "Saturday" : "Sabato", + "Sunday" : "Domenica", + "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", + "Planning restrictions" : "Restrizioni sulla pianificazione", + "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", + "Update" : "Aggiorna", + "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", "before at" : "prima di", "Notification" : "Notifica", "Email" : "Email", @@ -129,55 +242,75 @@ "on" : "il", "at" : "alle", "+ Add reminder" : "+ Aggiungi promemoria", - "_second_::_seconds_" : ["secondo","secondi"], - "_minute_::_minutes_" : ["minuto","minuti"], - "_hour_::_hours_" : ["ora","ore"], - "_day_::_days_" : ["giorno","giorni"], - "_week_::_weeks_" : ["settimana","settimane"], - "No reminders yet" : "Ancora nessun 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"], + "Add from Files" : "Aggiungi da File", + "Delete file" : "Elimina file", + "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", + "Invitation accepted" : "Invito accettato", + "Available" : "Disponibile", + "Suggested" : "Suggerito", + "Participation marked as tentative" : "Partecipazione contrassegnata come provvisoria", + "Accepted {organizerName}'s invitation" : "Invito di {organizerName} accettato", + "Not available" : "Non disponibile", + "Invitation declined" : "Invito rifiutato", + "Declined {organizerName}'s invitation" : "Invito di {organizerName} rifiutato", + "Invitation is delegated" : "Invito delegato", + "Checking availability" : "Verifica disponibilità", + "Invitation sent" : "Invito spedito", + "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", + "{organizer} (organizer)" : "{organizer} (organizzatore)", + "Free" : "Libero", "Busy (tentative)" : "Occupato (provvisorio)", "Busy" : "Occupato", "Out of office" : "Fuori sede", "Unknown" : "Sconosciuto", - "{name} accepted your invitation." : "{name} ha accettato il tuo invito.", - "{name} accepted {organizerName}'s invitation." : "{name} ha accettato l'invito di {organizerName}.", - "{name} declined your invitation." : "{name} ha rifiutato il tuo invito.", - "{name} declined {organizerName}'s invitation." : "{name} ha rifiutato l'invito di {organizerName}.", - "{name} has delegated their invitation." : "{name} ha delegato il suo invito.", - "{name} marked their participation as tentative." : "{name} ha segnato la sua partecipazione come provvisoria.", - "{name} did not respond to your invitation yet." : "{name} non ha ancora risposto al tuo invito.", - "{name} did not respond to {organizerName}'s invitation yet." : "{name} non ha ancora risposto all'invito di {organizerName}.", + "Accept" : "Accetta", + "Decline" : "Rifiuta", + "Tentative" : "Provvisorio", + "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", + "No attendees yet" : "Ancora nessun partecipante", "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 e-mail" : "Invia email", + "Send email" : "Invia email", "Chairperson" : "Presidente", "Required participant" : "Partecipante necessario", "Optional participant" : "Partecipante facoltativo", "Non-participant" : "Non partecipante", "Remove attendee" : "Rimuovi partecipante", - "Search for e-mails, users, contacts, resources or rooms" : "Cerca email, utenti, contatti, risorse o stanze", + "Search for emails, users or contacts" : "Cerca email, utenti o contatti", "No match found" : "Nessuna corrispondenza trovata", - "No attendees yet" : "Ancora nessun partecipante", "(organizer)" : "(organizzatore)", "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", - "Can not 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.", + "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}", + "Repeat" : "Ripeti", "End repeat" : "Termina ripetizione", "Select to end repeat" : "Seleziona per terminare la ripetizione", "never" : "mai", "on date" : "in data", "after" : "dopo", - "_time_::_times_" : ["volta","volte"], - "This event is the recurrence-exception of a recurrence-set. You can not add a recurrence-rule to it." : "Questo evento è l'eccezione di un insieme di ricorrenze. Non puoi aggiungergli una regola di ricorrenza.", + "_time_::_times_" : ["volta","volte","volte"], + "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", @@ -185,25 +318,37 @@ "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" : "Ripeti", "Repeat every" : "Ripeti ogni", "By day of the month" : "Per giorno del mese", "On the" : "Il", - "_month_::_months_" : ["mese","mesi"], - "_year_::_years_" : ["anno","anni"], - "Monday" : "Lunedì", + "_month_::_months_" : ["mese","mesi","mesi"], + "_year_::_years_" : ["anno","anni","anni"], "weekday" : "giorno feriale", "weekend day" : "giorno del fine settimana", - "Summary" : "Riepilogo", + "No recurrence" : "Nessuna ricorrenza", "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", + "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", + "Room type" : "Tipo stanza", + "Any" : "Qualsiasi", + "Minimum seating capacity" : "Numero minimo di sedie", "More" : "Altro", - "Save" : "Salva", - "Update" : "Aggiorna", "Update this occurrence" : "Aggiorna questa occorrenza", "Update this and all future" : "Aggiorna questa e tutte le future", "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 timezone:" : "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", "from {formattedDate}" : "dal {formattedDate}", @@ -215,44 +360,46 @@ "{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", - "Type to search timezone" : "Digita per cercare il fuso orario", - "Personal" : "Personale", - "The automatic timezone detection determined your timezone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your timezone 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 timezone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your timezone 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", + "Type to search time zone" : "Digita per cercare il fuso orario", + "Global" : "Globale", + "Subscribed" : "Sottoscritta", + "Subscribe" : "Iscrizione", + "Select date" : "Seleziona 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", + "Appointment Details:" : "Dettagli appuntamento:", + "Time:" : "Ora:", + "Booked for:" : "Prenotato per:", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "Grazie. La tua prenotazione dal {startDate} al {endDate} è stata confermata.", + "Book another appointment:" : "Prenota un altro appuntamento:", + "See all available slots" : "Mostra tutti gli slot disponibili", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "Lo slot per il tuo appuntamento dal {startDate} al {endDate} non è più disponibile.", + "Please book a different slot:" : "Prenota uno slot diverso:", + "Book an appointment with {name}" : "Prenota un appuntamento con {name}", + "No public appointments found for {name}" : "Nessun appuntamento pubblico trovato per {name}", + "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.", "Create a new event" : "Crea un nuovo evento", "[Today]" : "[Oggi]", "[Tomorrow]" : "[Domani]", "[Yesterday]" : "[Ieri]", "[Last] dddd" : "[Ultimo] dddd", "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", + "Invite" : "Invita", "Attendees" : "Partecipanti", - "Reminders" : "Promemoria", + "Resources" : "Risorse", "Close" : "Chiudi", "Show more details" : "Mostra altri dettagli", "Subscribe to {name}" : "Sottoscrivi {name}", - "Download {name}" : "Scarica {name}", - "Anniversary" : "Anniversario", - "Appointment" : "Appuntamento", - "Business" : "Lavoro", - "Education" : "Formazione", - "Holiday" : "Vacanza", - "Meeting" : "Riunione", - "Miscellaneous" : "Varie", - "Non-working hours" : "Ore non lavorative", - "Not in office" : "Non in ufficio", - "Phone call" : "Telefonata", - "Sick day" : "Giorno di malattia", - "Special occasion" : "Occasione speciale", - "Travel" : "Viaggio", - "Vacation" : "Assenza", + "Export {name}" : "Esporta {name}", "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 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 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}"], "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", @@ -268,91 +415,114 @@ "Weekly" : "Settimanalmente", "Monthly" : "Mensilmente", "Yearly" : "Annualmente", - "_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}"], + "_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}"], "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 time_::_%n times_" : ["%n volta","%n volte","%n volte"], "Untitled event" : "Evento senza titolo", "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" : "il prossimo anno", - "today" : "oggi", - "list" : "elenco", "W" : "S", - "all-day" : "Tutto il giorno", "%n more" : "%n altri", "No events to display" : "Nessun evento da visualizzare", - "_+%n more_::_+%n more_" : ["+%n altro","+%n altri"], + "_+%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", "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", + "Lecture hall" : "Sala conferenze", + "Seminar room" : "Sala seminari", + "Other" : "Altro", "When shared show" : "Se condiviso, mostra", "When shared show full event" : "Se condiviso, mostra evento completo", "When shared show only busy" : "Se condiviso, mostra solo occupato", "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.", - "Location" : "Luogo", "Add a location" : "Aggiungi un luogo", - "Description" : "Descrizione", "Add a description" : "Aggiungi una descrizione", "Status" : "Stato", "Confirmed" : "Confermato", - "Tentative" : "Provvisorio", "Canceled" : "Annullato", "Confirmation about the overall status of the event." : "Conferma sullo stato complessivo dell'evento.", "Show as" : "Mostra come", "Take this event into account when calculating free-busy information." : "Considera questo evento nel calcolo delle informazioni libero-occupato.", - "Free" : "Libero", "Categories" : "Categorie", "Categories help you to structure and organize your events." : "Le categorie ti aiutano a strutturare e organizzare i tuoi eventi.", "Search or add categories" : "Cerca o aggiungi categorie", "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.", + "Error while sharing file" : "Errore durante la condivisione del file", "Chat room for event" : "Stanza di chat per evento", + "An error occurred, unable to delete the calendar." : "Si è verificato un errore, impossibile eliminare il calendario.", "Imported {filename}" : "Importato {filename}", + "This is an event reminder." : "Questo è un promemoria dell'evento.", "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", - "Present" : "Presentare", + "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", - "Review" : "Recensione", "Office" : "Ufficio", "Contributor week" : "Settimana del collaboratore", - "Party" : "Festa", - "Celebration" : "Celebrazione", "Mail" : "Posta", "Soccer" : "Calcio", "Football" : "Football", "Gaming" : "Gioco", - "Play" : "Giocare", - "Game" : "Gioco", "Drive" : "Guidare", + "Driving" : "Guidare", "Bicycle" : "Bicicletta", "Cycle" : "Pedalare", + "Cycling" : "Andare in bicicletta", "Biking" : "Pedalata", + "Bike" : "Bicicletta", "Podcast" : "Podcast", "Basketball" : "Pallacanestro", "Fishing" : "Pesca", @@ -363,10 +533,12 @@ "Museum" : "Museo", "Pilates" : "Pilates", "Park" : "Parco", + "Walk" : "Camminare", "Studying" : "Studiare", "Doctor" : "Medico", "Health" : "Salute", "Dentist" : "Dentista", + "Hospital" : "Ospedale", "Interview" : "Intervista", "Training" : "Allenamento", "Practice" : "Esercitazione", @@ -377,7 +549,10 @@ "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", @@ -396,20 +571,27 @@ "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", - "Global" : "Globale" -},"pluralForm" :"nplurals=2; plural=(n != 1);" + "Appointment not found" : "Appuntamento non trovato", + "User not found" : "Utente non trovato" +},"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 5264bb3fa3..36623cb0e8 100644 --- a/l10n/ja.js +++ b/l10n/ja.js @@ -5,54 +5,98 @@ OC.L10N.register( "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 " : "メールを次の宛先へ送信しました:", + "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" : "今後のイベントはありません", "Calendar" : "カレンダー", + "Appointments" : "予定", + "Schedule an appointment" : "予定を入れる", + "Dear %s, please confirm your booking" : "%s様、予定を承認してください。", + "Confirm" : "承認", + "This confirmation link expires in %s hours." : "承認用リンクの有効期限は1%s時間です。", + "Date:" : "日時:", + "Where:" : "場所:", + "Anniversary" : "記念日", + "Appointment" : "アポイントメント", + "Business" : "ビジネス", + "Education" : "学校", + "Holiday" : "休日", + "Meeting" : "会議", + "Miscellaneous" : "雑用", + "Non-working hours" : "休業時間", + "Not in office" : "欠勤", + "Personal" : "個人", + "Phone call" : "電話", + "Sick day" : "体調不良", + "Special occasion" : "特別な用事", + "Travel" : "旅行", + "Vacation" : "休暇", "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 month" : "前月", "Next day" : "翌日", "Next week" : "翌週", + "Next year" : "来年", "Next month" : "翌月", - "+ New event" : "+ 新しいイベント", "Today" : "今日", "Day" : "日", "Week" : "週", "Month" : "月", + "Year" : "年", "List" : "リスト", - "Untitled calendar" : "無題のカレンダー", - "Edit name" : "名前を編集", - "Saving name …" : "名前を保存しています …", - "Edit color" : "色を編集", - "Saving color …" : "色を保存しています …", - "Copy private link" : "プライベートリンクをコピー", - "Download" : "ダウンロード", - "Unshare from me" : "共有を自分から解除", + "Preview" : "プレビュー", + "Copy link" : "リンクをコピー", + "Edit" : "編集", "Delete" : "削除", + "Appointment link was copied to clipboard" : "予定リンクがクリップボードにコピーされました", + "Appointment link could not be copied to clipboard" : "予定リンクをクリップボードにコピーできませんでした", + "Add new" : "新規作成", + "Untitled calendar" : "無題のカレンダー", + "Shared with you by" : "と共有中", + "Edit and share calendar" : "カレンダー編集、共有", + "Edit 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." : "エラーが発生したため、カレンダーの色を変更できません。", "_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}秒後にカレンダーを削除します"], + "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:// のいずれかで始まる必要があります)", + "Copy subscription link" : "購読リンクをコピー", + "Copying link …" : "リンクをコピーしています …", + "Copied link" : "リンクをコピーしました", + "Could not copy link" : "リンクをコピーできませんでした", + "Export" : "エクスポート", + "Calendar link copied to clipboard." : "カレンダーリンクをクリップボードにコピー", + "Calendar link could not be copied to clipboard." : "カレンダーリンクをクリップボードにコピーできませんでした。", + "Trash bin" : "ごみ箱", + "Name" : "名前", + "Deleted" : "削除済み", + "Restore" : "復元", + "Delete permanently" : "完全に削除する", + "Empty trash bin" : "ゴミ箱を空にする", + "Unknown calendar" : "不明なカレンダー", + "Could not load deleted calendars and objects" : "削除されたカレンダーとオブジェクトを読み込めませんでした。", + "Could not restore calendar or event" : "カレンダーまたはイベントを復元できませんでした。", + "Do you really want to empty the trash bin?" : "本当にゴミ箱を空にしますか?", + "Could not update calendar order." : "カレンダーの順番を更新できません。", + "Copy internal link" : "内部リンクをコピー", "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" : "コードをコピーしました", @@ -64,32 +108,29 @@ OC.L10N.register( "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" : "ユーザーまたはグループはありません", "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:// のいずれかで始まる必要があります)", - "Could not update calendar order." : "カレンダーの順番を更新できません。", + "Share with users or groups" : "ユーザーまたはグループと共有する", + "No users or groups" : "ユーザーまたはグループはありません", + "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_" : ["カレンダーのインポート"], - "{filename} is an unsupported file-type" : "{filename} はサポートされていないファイルタイプです。", + "Default attachments location" : "添付ファイルのデフォルト位置", + "Select the default location for attachments" : "添付ファイルのデフォルト位置を選択", + "Invalid location selected" : "選択した場所が無効", + "Attachments folder successfully saved." : "添付ファイルフォルダーを保存しました", + "Error on saving attachments folder." : "添付ファイルフォルダーの保存でエラーが発生しました", "{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イベントを正常にインポートしました"], + "_Successfully imported %n event_::_Successfully imported %n events_" : ["%nイベントのインポートに成功しました"], "Automatic" : "自動", "Automatic ({detected})" : "自動 ({detected})", "New setting was not saved successfully." : "新しい設定は正常に保存されませんでした。", @@ -102,20 +143,78 @@ OC.L10N.register( "Day view" : "日表示", "Week view" : "週表示", "Month view" : "月表示", + "List view" : "リスト表示", "Actions" : "アクション", "Create event" : "イベントを作成", "Show shortcuts" : "概要の表示", + "Editor" : "エディタ", + "Close editor" : "エディタを閉じる", + "Save edited event" : "編集したイベントを保存", + "Delete edited event" : "編集したイベントを削除", + "Duplicate event" : "イベントを複製", "Enable birthday calendar" : "誕生日カレンダーを有効にする", "Show tasks in calendar" : "カレンダーにタスクを表示", "Enable simplified editor" : "簡易エディターを有効にする", - "Show weekends" : "週末を表示", + "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" : "個人の稼働率設定", "Show keyboard shortcuts" : "キーボード ショートカット", - "Settings & import" : "設定とインポート", + "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}分"], + "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 name" : "予定名", + "Location" : "場所", + "Create a Talk room" : "通話ルームを作成", + "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" : "火曜日", + "Wednesday" : "水曜日", + "Thursday" : "木曜日", + "Friday" : "金曜日", + "Saturday" : "土曜日", + "Sunday" : "日曜日", + "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" : "1日あたりの最大スロット数", + "Limit how far in the future appointments can be booked" : "予約可能な時間帯の制限", + "Create appointment" : "予定を作成", + "Edit appointment" : "予定を編集", + "Update" : "アップデート", + "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" : "リマインダー", "before at" : "次の時間分早めに通知", "Notification" : "通知", "Email" : "メール", @@ -127,45 +226,52 @@ OC.L10N.register( "Save time" : "時刻を保存", "Remove reminder" : "リマインダーを削除", "on" : "曜日", + "at" : "で", "+ Add reminder" : "+ リマインダーを追加", + "Add reminder" : "リマインダーを追加", "_second_::_seconds_" : ["秒"], "_minute_::_minutes_" : ["分"], "_hour_::_hours_" : ["時間"], "_day_::_days_" : ["日"], "_week_::_weeks_" : ["週"], - "No reminders yet" : "まだリマインダーはありません", + "No attachments" : "添付ファイル無し", + "Delete file" : "ファイルを削除", + "Choose a file to add as attachment" : "添付として追加するファイルを選択", + "Choose a file to share as a link" : "共有リンクにして送信するファイルを選択", + "_{count} attachment_::_{count} attachments_" : ["{count} 個の添付ファイル"], + "Available" : "利用可能", + "Not available" : "利用できません", + "Availability of attendees, resources and rooms" : "出席者、リソース、ルームの空き状況", + "Free" : "空き", "Busy (tentative)" : "ビジー (暫定)", "Busy" : "ビジー", "Out of office" : "オフィス外", "Unknown" : "不明", - "{name} accepted your invitation." : "{name}が招待を受け入れました。", - "{name} accepted {organizerName}'s invitation." : "{name}が{organizerName}の招待を受け入れました。", - "{name} declined your invitation." : "{name}が招待を辞退しました。", - "{name} declined {organizerName}'s invitation." : "{name}が{organizerName}の招待を辞退しました。", - "{name} has delegated their invitation." : "{name}が招待を委任されました。", - "{name} marked their participation as tentative." : "{name}が参加を暫定的とマークしました。", - "{name} did not respond to your invitation yet." : "{name}は招待にまだ返答していません。", - "{name} did not respond to {organizerName}'s invitation yet." : "{name}は{organizerName}の招待にまだ応答していません。", + "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 e-mail" : "メールを送信", + "Send email" : "メールを送信", "Chairperson" : "主宰者", "Required participant" : "参加必須", "Optional participant" : "任意参加", "Non-participant" : "非参加", "Remove attendee" : "出席者を削除", - "Search for e-mails, users, contacts, resources or rooms" : "メール、ユーザー、連絡先、リソース、またはルームを検索する", + "Search for emails, users or contacts" : "メール、ユーザー、連絡先を検索", "No match found" : "一致するものが見つかりません", - "No attendees yet" : "出席者はまだいません", "(organizer)" : "(主催者)", "Remove color" : "色を削除", "Event title" : "イベントタイトル", "All day" : "終日", - "Can not 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}まで", + "Repeat" : "繰り返し", "End repeat" : "繰り返し終了", "Select to end repeat" : "繰り返しの終了を選択", "never" : "なし", @@ -178,19 +284,26 @@ OC.L10N.register( "fifth" : "5日目", "second to last" : "2日目から最終日", "last" : "最後", - "Repeat" : "繰り返し", + "Repeat every" : "毎日繰り返す", "_month_::_months_" : ["月"], "_year_::_years_" : ["年"], - "Monday" : "月曜日", "weekday" : "平日", "weekend day" : "週末", - "Summary" : "要約", + "No recurrence" : "繰り返し無し", + "No rooms or resources yet" : "ルームやリソースがありません", + "Has a projector" : "プロジェクタ設置", + "Projector" : "プロジェクター", + "Whiteboard" : "ホワイトボード", + "Search for resources or rooms" : "リソース、ルームを検索", + "available" : "利用可能", + "unavailable" : "利用不可", + "Room type" : "ルーム種別", + "Minimum seating capacity" : "最低座席数", "More" : "もっと見る", - "Save" : "保存", - "Update" : "アップデート", "Update this and all future" : "これ以降を更新", "Public calendar does not exist" : "公開カレンダーは存在しません", - "Please select a timezone:" : "タイムゾーンを選択してください:", + "Maybe the share was deleted or has expired?" : "共有が削除されたか、期限切れの可能性があります", + "Please select a time zone:" : "タイムゾーンを選択してください:", "Pick a time" : "時間を指定", "Pick a date" : "日付を指定", "from {formattedDate}" : "{formattedDate}から", @@ -200,36 +313,34 @@ OC.L10N.register( "{formattedDate} at {formattedTime}" : "{formattedDate} {formattedTime}", "Please enter a valid date" : "有効な日付を入力してください", "Please enter a valid date and time" : "有効な日付と時刻を入力してください", - "Type to search timezone" : "入力してタイムゾーンを検索", - "Personal" : "個人", - "No more events today" : "今日はこれ以上イベントがありません", - "No upcoming events" : "今後のイベントはありません", + "Type to search time zone" : "入力して時間帯を検索", + "Global" : "グローバル", + "Subscribed" : "購読", + "Subscribe" : "購読", + "Select date" : "日付を選択", + "Select slot" : "時間枠を選択", + "No slots available" : "利用可能な時間枠がありません", + "The slot for your appointment has been confirmed" : "時間枠を予約しました", + "Appointment Details:" : "予定の詳細:", + "Time:" : "時刻:", + "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:" : "別の時間枠を予約してください\\:", "Create a new event" : "新しいイベントを作成", "[Today]" : "[今日]", "[Tomorrow]" : "[明日]", "[Yesterday]" : "[昨日]", + "[Last] dddd" : "[Last]dddd", "Event does not exist" : "イベントは存在しません", + "Duplicate" : "複製", "Delete this occurrence" : "この出来事を削除", "Details" : "詳細", + "Invite" : "招待状", "Attendees" : "参加者", - "Reminders" : "リマインダー", + "Resources" : "リソース", + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["添付ファイルには共有アクセスが必要です"], "Close" : "閉じる", "Show more details" : "詳細を見る", - "Download {name}" : "{name}をダウンロード", - "Anniversary" : "記念日", - "Appointment" : "アポイントメント", - "Business" : "ビジネス", - "Education" : "学校", - "Holiday" : "休日", - "Meeting" : "会議", - "Miscellaneous" : "雑用", - "Non-working hours" : "休業時間", - "Not in office" : "欠勤", - "Phone call" : "電話", - "Sick day" : "病欠", - "Special occasion" : "特別な用事", - "Travel" : "旅行", - "Vacation" : "休暇", "at the event's start" : "イベント開始時", "at the event's end" : "イベント終了時", "{time} before the event starts" : "イベント開始 {time} 前", @@ -249,61 +360,70 @@ OC.L10N.register( "_%n time_::_%n times_" : ["%n回"], "Untitled event" : "無題のイベント", "Untitled task" : "タイトルなしタスク", - "prev" : "前へ", - "next" : "次へ", - "prev year" : "前の年へ", - "next year" : "来年", - "today" : "今日", - "list" : "リスト", + "Please ask your administrator to enable the Tasks App." : "「タスク」アプリを有効化のために、管理者さんにお問い合わせください", "W" : "W", - "all-day" : "一日中", "No events to display" : "表示するイベントはありません", "No events" : "イベントはありません", + "Meeting room" : "会議室", + "Lecture hall" : "講堂", + "Seminar room" : "セミナー", + "Other" : "その他", "When shared show full event" : "共有時にすべてのイベントを表示", "When shared show only busy" : "共有時に実行中のみを表示", "When shared hide this event" : "共有時にこのイベントを隠す", - "Location" : "場所", "Add a location" : "住所を追加", - "Description" : "説明", "Add a description" : "説明を追加", "Status" : "ステータス", "Confirmed" : "確認済み", - "Tentative" : "暫定的", "Canceled" : "キャンセル済み", "Show as" : "として表示", - "Free" : "無料", "Categories" : "カテゴリ", "Search or add categories" : "カテゴリを検索または追加", "Add this as a new category" : "これを新しいカテゴリーとして追加", "Custom color" : "カスタム色", + "Error while sharing file" : "ファイルの共有中にエラーが発生しました", "Chat room for event" : "イベントのチャットルーム", + "An error occurred, unable to delete the calendar." : "エラーが発生したため、カレンダーを削除できません。", "Meditation" : "座禅", "Relaxing" : "休暇", "Relax" : "休み", + "Commuting" : "通勤中", + "Finance" : "金融", + "Bank" : "銀行", + "Money" : "お金", + "Wedding" : "結婚式", + "Dog" : "犬", + "Concert" : "演奏会", + "Festival" : "祭", "Presentation" : "プレゼンテーション", - "Present" : "プレゼン", + "Talk" : "トーク", + "Deadline" : "期限", "Camping" : "キャンプ場", "Camp" : "キャンプ", + "Election" : "選挙", + "Voting" : "投票", + "Vote" : "投票", + "Garden" : "花園", "Movie" : "ムービー", "Cinema" : "映画館", "Graduation" : "卒業式", "Brainstorm" : "会議", + "Review" : "レビュー", "Baseball" : "野球", "Meet" : "打ち合わせ", - "Review" : "レビュー", + "Planning" : "計画", "Office" : "オフィス", - "Party" : "パーティー", - "Celebration" : "祝", "Mail" : "メール", "Soccer" : "サッカー", "Football" : "フットボール", "Gaming" : "ゲーム", - "Play" : "再生", - "Game" : "ゲーム", "Drive" : "ドライブ", + "Driving" : "運転", "Bicycle" : "自転車", "Cycle" : "自転車", + "Cycling" : "サイクリング", "Biking" : "サイクリング", + "Bike" : "バイク", "Podcast" : "生放送", "Basketball" : "バスケットボール", "Fishing" : "釣り", @@ -314,10 +434,12 @@ OC.L10N.register( "Museum" : "美術館", "Pilates" : "ピラティス", "Park" : "公園", + "Walk" : "散歩", "Studying" : "勉強", "Doctor" : "病院", "Health" : "診断", "Dentist" : "歯医者", + "Hospital" : "病院", "Interview" : "インタビュー", "Training" : "トレーニング", "Sports" : "スポーツ", @@ -346,13 +468,18 @@ OC.L10N.register( "Conference" : "カンファレンス", "Pizza" : "ピザ", "Travelling" : "旅行", + "Trip" : "旅行", "Journey" : "旅", "Collaborate" : "一緒", "Pair" : "ペア", "Lecture" : "講義", "Seminar" : "ゼミ", + "Teaching" : "授業", "Photograph" : "写真", + "Party" : "パーティー", + "Celebration" : "祝", "Celebrate" : "お祝い", + "Birthday" : "誕生日", "Shopping" : "買い物", "Skate" : "スケート", "Skateboard" : "スケートボード", @@ -360,6 +487,7 @@ OC.L10N.register( "Golf" : "ゴルフ", "Dinner" : "ディナー", "Lunch" : "ランチ", - "Global" : "グローバル" + "Appointment not found" : "予定が見つかりません", + "User not found" : "ユーザーが見つかりません" }, "nplurals=1; plural=0;"); diff --git a/l10n/ja.json b/l10n/ja.json index 358260a1f5..97836f4cbe 100644 --- a/l10n/ja.json +++ b/l10n/ja.json @@ -3,54 +3,98 @@ "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 " : "メールを次の宛先へ送信しました:", + "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" : "今後のイベントはありません", "Calendar" : "カレンダー", + "Appointments" : "予定", + "Schedule an appointment" : "予定を入れる", + "Dear %s, please confirm your booking" : "%s様、予定を承認してください。", + "Confirm" : "承認", + "This confirmation link expires in %s hours." : "承認用リンクの有効期限は1%s時間です。", + "Date:" : "日時:", + "Where:" : "場所:", + "Anniversary" : "記念日", + "Appointment" : "アポイントメント", + "Business" : "ビジネス", + "Education" : "学校", + "Holiday" : "休日", + "Meeting" : "会議", + "Miscellaneous" : "雑用", + "Non-working hours" : "休業時間", + "Not in office" : "欠勤", + "Personal" : "個人", + "Phone call" : "電話", + "Sick day" : "体調不良", + "Special occasion" : "特別な用事", + "Travel" : "旅行", + "Vacation" : "休暇", "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 month" : "前月", "Next day" : "翌日", "Next week" : "翌週", + "Next year" : "来年", "Next month" : "翌月", - "+ New event" : "+ 新しいイベント", "Today" : "今日", "Day" : "日", "Week" : "週", "Month" : "月", + "Year" : "年", "List" : "リスト", - "Untitled calendar" : "無題のカレンダー", - "Edit name" : "名前を編集", - "Saving name …" : "名前を保存しています …", - "Edit color" : "色を編集", - "Saving color …" : "色を保存しています …", - "Copy private link" : "プライベートリンクをコピー", - "Download" : "ダウンロード", - "Unshare from me" : "共有を自分から解除", + "Preview" : "プレビュー", + "Copy link" : "リンクをコピー", + "Edit" : "編集", "Delete" : "削除", + "Appointment link was copied to clipboard" : "予定リンクがクリップボードにコピーされました", + "Appointment link could not be copied to clipboard" : "予定リンクをクリップボードにコピーできませんでした", + "Add new" : "新規作成", + "Untitled calendar" : "無題のカレンダー", + "Shared with you by" : "と共有中", + "Edit and share calendar" : "カレンダー編集、共有", + "Edit 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." : "エラーが発生したため、カレンダーの色を変更できません。", "_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}秒後にカレンダーを削除します"], + "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:// のいずれかで始まる必要があります)", + "Copy subscription link" : "購読リンクをコピー", + "Copying link …" : "リンクをコピーしています …", + "Copied link" : "リンクをコピーしました", + "Could not copy link" : "リンクをコピーできませんでした", + "Export" : "エクスポート", + "Calendar link copied to clipboard." : "カレンダーリンクをクリップボードにコピー", + "Calendar link could not be copied to clipboard." : "カレンダーリンクをクリップボードにコピーできませんでした。", + "Trash bin" : "ごみ箱", + "Name" : "名前", + "Deleted" : "削除済み", + "Restore" : "復元", + "Delete permanently" : "完全に削除する", + "Empty trash bin" : "ゴミ箱を空にする", + "Unknown calendar" : "不明なカレンダー", + "Could not load deleted calendars and objects" : "削除されたカレンダーとオブジェクトを読み込めませんでした。", + "Could not restore calendar or event" : "カレンダーまたはイベントを復元できませんでした。", + "Do you really want to empty the trash bin?" : "本当にゴミ箱を空にしますか?", + "Could not update calendar order." : "カレンダーの順番を更新できません。", + "Copy internal link" : "内部リンクをコピー", "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" : "コードをコピーしました", @@ -62,32 +106,29 @@ "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" : "ユーザーまたはグループはありません", "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:// のいずれかで始まる必要があります)", - "Could not update calendar order." : "カレンダーの順番を更新できません。", + "Share with users or groups" : "ユーザーまたはグループと共有する", + "No users or groups" : "ユーザーまたはグループはありません", + "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_" : ["カレンダーのインポート"], - "{filename} is an unsupported file-type" : "{filename} はサポートされていないファイルタイプです。", + "Default attachments location" : "添付ファイルのデフォルト位置", + "Select the default location for attachments" : "添付ファイルのデフォルト位置を選択", + "Invalid location selected" : "選択した場所が無効", + "Attachments folder successfully saved." : "添付ファイルフォルダーを保存しました", + "Error on saving attachments folder." : "添付ファイルフォルダーの保存でエラーが発生しました", "{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イベントを正常にインポートしました"], + "_Successfully imported %n event_::_Successfully imported %n events_" : ["%nイベントのインポートに成功しました"], "Automatic" : "自動", "Automatic ({detected})" : "自動 ({detected})", "New setting was not saved successfully." : "新しい設定は正常に保存されませんでした。", @@ -100,20 +141,78 @@ "Day view" : "日表示", "Week view" : "週表示", "Month view" : "月表示", + "List view" : "リスト表示", "Actions" : "アクション", "Create event" : "イベントを作成", "Show shortcuts" : "概要の表示", + "Editor" : "エディタ", + "Close editor" : "エディタを閉じる", + "Save edited event" : "編集したイベントを保存", + "Delete edited event" : "編集したイベントを削除", + "Duplicate event" : "イベントを複製", "Enable birthday calendar" : "誕生日カレンダーを有効にする", "Show tasks in calendar" : "カレンダーにタスクを表示", "Enable simplified editor" : "簡易エディターを有効にする", - "Show weekends" : "週末を表示", + "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" : "個人の稼働率設定", "Show keyboard shortcuts" : "キーボード ショートカット", - "Settings & import" : "設定とインポート", + "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}分"], + "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 name" : "予定名", + "Location" : "場所", + "Create a Talk room" : "通話ルームを作成", + "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" : "火曜日", + "Wednesday" : "水曜日", + "Thursday" : "木曜日", + "Friday" : "金曜日", + "Saturday" : "土曜日", + "Sunday" : "日曜日", + "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" : "1日あたりの最大スロット数", + "Limit how far in the future appointments can be booked" : "予約可能な時間帯の制限", + "Create appointment" : "予定を作成", + "Edit appointment" : "予定を編集", + "Update" : "アップデート", + "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" : "リマインダー", "before at" : "次の時間分早めに通知", "Notification" : "通知", "Email" : "メール", @@ -125,45 +224,52 @@ "Save time" : "時刻を保存", "Remove reminder" : "リマインダーを削除", "on" : "曜日", + "at" : "で", "+ Add reminder" : "+ リマインダーを追加", + "Add reminder" : "リマインダーを追加", "_second_::_seconds_" : ["秒"], "_minute_::_minutes_" : ["分"], "_hour_::_hours_" : ["時間"], "_day_::_days_" : ["日"], "_week_::_weeks_" : ["週"], - "No reminders yet" : "まだリマインダーはありません", + "No attachments" : "添付ファイル無し", + "Delete file" : "ファイルを削除", + "Choose a file to add as attachment" : "添付として追加するファイルを選択", + "Choose a file to share as a link" : "共有リンクにして送信するファイルを選択", + "_{count} attachment_::_{count} attachments_" : ["{count} 個の添付ファイル"], + "Available" : "利用可能", + "Not available" : "利用できません", + "Availability of attendees, resources and rooms" : "出席者、リソース、ルームの空き状況", + "Free" : "空き", "Busy (tentative)" : "ビジー (暫定)", "Busy" : "ビジー", "Out of office" : "オフィス外", "Unknown" : "不明", - "{name} accepted your invitation." : "{name}が招待を受け入れました。", - "{name} accepted {organizerName}'s invitation." : "{name}が{organizerName}の招待を受け入れました。", - "{name} declined your invitation." : "{name}が招待を辞退しました。", - "{name} declined {organizerName}'s invitation." : "{name}が{organizerName}の招待を辞退しました。", - "{name} has delegated their invitation." : "{name}が招待を委任されました。", - "{name} marked their participation as tentative." : "{name}が参加を暫定的とマークしました。", - "{name} did not respond to your invitation yet." : "{name}は招待にまだ返答していません。", - "{name} did not respond to {organizerName}'s invitation yet." : "{name}は{organizerName}の招待にまだ応答していません。", + "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 e-mail" : "メールを送信", + "Send email" : "メールを送信", "Chairperson" : "主宰者", "Required participant" : "参加必須", "Optional participant" : "任意参加", "Non-participant" : "非参加", "Remove attendee" : "出席者を削除", - "Search for e-mails, users, contacts, resources or rooms" : "メール、ユーザー、連絡先、リソース、またはルームを検索する", + "Search for emails, users or contacts" : "メール、ユーザー、連絡先を検索", "No match found" : "一致するものが見つかりません", - "No attendees yet" : "出席者はまだいません", "(organizer)" : "(主催者)", "Remove color" : "色を削除", "Event title" : "イベントタイトル", "All day" : "終日", - "Can not 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}まで", + "Repeat" : "繰り返し", "End repeat" : "繰り返し終了", "Select to end repeat" : "繰り返しの終了を選択", "never" : "なし", @@ -176,19 +282,26 @@ "fifth" : "5日目", "second to last" : "2日目から最終日", "last" : "最後", - "Repeat" : "繰り返し", + "Repeat every" : "毎日繰り返す", "_month_::_months_" : ["月"], "_year_::_years_" : ["年"], - "Monday" : "月曜日", "weekday" : "平日", "weekend day" : "週末", - "Summary" : "要約", + "No recurrence" : "繰り返し無し", + "No rooms or resources yet" : "ルームやリソースがありません", + "Has a projector" : "プロジェクタ設置", + "Projector" : "プロジェクター", + "Whiteboard" : "ホワイトボード", + "Search for resources or rooms" : "リソース、ルームを検索", + "available" : "利用可能", + "unavailable" : "利用不可", + "Room type" : "ルーム種別", + "Minimum seating capacity" : "最低座席数", "More" : "もっと見る", - "Save" : "保存", - "Update" : "アップデート", "Update this and all future" : "これ以降を更新", "Public calendar does not exist" : "公開カレンダーは存在しません", - "Please select a timezone:" : "タイムゾーンを選択してください:", + "Maybe the share was deleted or has expired?" : "共有が削除されたか、期限切れの可能性があります", + "Please select a time zone:" : "タイムゾーンを選択してください:", "Pick a time" : "時間を指定", "Pick a date" : "日付を指定", "from {formattedDate}" : "{formattedDate}から", @@ -198,36 +311,34 @@ "{formattedDate} at {formattedTime}" : "{formattedDate} {formattedTime}", "Please enter a valid date" : "有効な日付を入力してください", "Please enter a valid date and time" : "有効な日付と時刻を入力してください", - "Type to search timezone" : "入力してタイムゾーンを検索", - "Personal" : "個人", - "No more events today" : "今日はこれ以上イベントがありません", - "No upcoming events" : "今後のイベントはありません", + "Type to search time zone" : "入力して時間帯を検索", + "Global" : "グローバル", + "Subscribed" : "購読", + "Subscribe" : "購読", + "Select date" : "日付を選択", + "Select slot" : "時間枠を選択", + "No slots available" : "利用可能な時間枠がありません", + "The slot for your appointment has been confirmed" : "時間枠を予約しました", + "Appointment Details:" : "予定の詳細:", + "Time:" : "時刻:", + "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:" : "別の時間枠を予約してください\\:", "Create a new event" : "新しいイベントを作成", "[Today]" : "[今日]", "[Tomorrow]" : "[明日]", "[Yesterday]" : "[昨日]", + "[Last] dddd" : "[Last]dddd", "Event does not exist" : "イベントは存在しません", + "Duplicate" : "複製", "Delete this occurrence" : "この出来事を削除", "Details" : "詳細", + "Invite" : "招待状", "Attendees" : "参加者", - "Reminders" : "リマインダー", + "Resources" : "リソース", + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["添付ファイルには共有アクセスが必要です"], "Close" : "閉じる", "Show more details" : "詳細を見る", - "Download {name}" : "{name}をダウンロード", - "Anniversary" : "記念日", - "Appointment" : "アポイントメント", - "Business" : "ビジネス", - "Education" : "学校", - "Holiday" : "休日", - "Meeting" : "会議", - "Miscellaneous" : "雑用", - "Non-working hours" : "休業時間", - "Not in office" : "欠勤", - "Phone call" : "電話", - "Sick day" : "病欠", - "Special occasion" : "特別な用事", - "Travel" : "旅行", - "Vacation" : "休暇", "at the event's start" : "イベント開始時", "at the event's end" : "イベント終了時", "{time} before the event starts" : "イベント開始 {time} 前", @@ -247,61 +358,70 @@ "_%n time_::_%n times_" : ["%n回"], "Untitled event" : "無題のイベント", "Untitled task" : "タイトルなしタスク", - "prev" : "前へ", - "next" : "次へ", - "prev year" : "前の年へ", - "next year" : "来年", - "today" : "今日", - "list" : "リスト", + "Please ask your administrator to enable the Tasks App." : "「タスク」アプリを有効化のために、管理者さんにお問い合わせください", "W" : "W", - "all-day" : "一日中", "No events to display" : "表示するイベントはありません", "No events" : "イベントはありません", + "Meeting room" : "会議室", + "Lecture hall" : "講堂", + "Seminar room" : "セミナー", + "Other" : "その他", "When shared show full event" : "共有時にすべてのイベントを表示", "When shared show only busy" : "共有時に実行中のみを表示", "When shared hide this event" : "共有時にこのイベントを隠す", - "Location" : "場所", "Add a location" : "住所を追加", - "Description" : "説明", "Add a description" : "説明を追加", "Status" : "ステータス", "Confirmed" : "確認済み", - "Tentative" : "暫定的", "Canceled" : "キャンセル済み", "Show as" : "として表示", - "Free" : "無料", "Categories" : "カテゴリ", "Search or add categories" : "カテゴリを検索または追加", "Add this as a new category" : "これを新しいカテゴリーとして追加", "Custom color" : "カスタム色", + "Error while sharing file" : "ファイルの共有中にエラーが発生しました", "Chat room for event" : "イベントのチャットルーム", + "An error occurred, unable to delete the calendar." : "エラーが発生したため、カレンダーを削除できません。", "Meditation" : "座禅", "Relaxing" : "休暇", "Relax" : "休み", + "Commuting" : "通勤中", + "Finance" : "金融", + "Bank" : "銀行", + "Money" : "お金", + "Wedding" : "結婚式", + "Dog" : "犬", + "Concert" : "演奏会", + "Festival" : "祭", "Presentation" : "プレゼンテーション", - "Present" : "プレゼン", + "Talk" : "トーク", + "Deadline" : "期限", "Camping" : "キャンプ場", "Camp" : "キャンプ", + "Election" : "選挙", + "Voting" : "投票", + "Vote" : "投票", + "Garden" : "花園", "Movie" : "ムービー", "Cinema" : "映画館", "Graduation" : "卒業式", "Brainstorm" : "会議", + "Review" : "レビュー", "Baseball" : "野球", "Meet" : "打ち合わせ", - "Review" : "レビュー", + "Planning" : "計画", "Office" : "オフィス", - "Party" : "パーティー", - "Celebration" : "祝", "Mail" : "メール", "Soccer" : "サッカー", "Football" : "フットボール", "Gaming" : "ゲーム", - "Play" : "再生", - "Game" : "ゲーム", "Drive" : "ドライブ", + "Driving" : "運転", "Bicycle" : "自転車", "Cycle" : "自転車", + "Cycling" : "サイクリング", "Biking" : "サイクリング", + "Bike" : "バイク", "Podcast" : "生放送", "Basketball" : "バスケットボール", "Fishing" : "釣り", @@ -312,10 +432,12 @@ "Museum" : "美術館", "Pilates" : "ピラティス", "Park" : "公園", + "Walk" : "散歩", "Studying" : "勉強", "Doctor" : "病院", "Health" : "診断", "Dentist" : "歯医者", + "Hospital" : "病院", "Interview" : "インタビュー", "Training" : "トレーニング", "Sports" : "スポーツ", @@ -344,13 +466,18 @@ "Conference" : "カンファレンス", "Pizza" : "ピザ", "Travelling" : "旅行", + "Trip" : "旅行", "Journey" : "旅", "Collaborate" : "一緒", "Pair" : "ペア", "Lecture" : "講義", "Seminar" : "ゼミ", + "Teaching" : "授業", "Photograph" : "写真", + "Party" : "パーティー", + "Celebration" : "祝", "Celebrate" : "お祝い", + "Birthday" : "誕生日", "Shopping" : "買い物", "Skate" : "スケート", "Skateboard" : "スケートボード", @@ -358,6 +485,7 @@ "Golf" : "ゴルフ", "Dinner" : "ディナー", "Lunch" : "ランチ", - "Global" : "グローバル" + "Appointment not found" : "予定が見つかりません", + "User not found" : "ユーザーが見つかりません" },"pluralForm" :"nplurals=1; plural=0;" } \ No newline at end of file diff --git a/l10n/ka_GE.js b/l10n/ka_GE.js index df26558816..c553cf1830 100644 --- a/l10n/ka_GE.js +++ b/l10n/ka_GE.js @@ -7,58 +7,82 @@ OC.L10N.register( "Open »%s«" : "გახნსნა »%s«", "Cheers!" : "წარმატებები!", "Calendar" : "კალენდარი", + "Confirm" : "დადასტურება", + "Where:" : "სად:", + "Anniversary" : "დაბადების დღე", + "Personal" : "პირადი", "Today" : "დღეს", "Day" : "დღე", "Week" : "კვირა", "Month" : "თვე", "List" : "ჩამონათვალი", - "Download" : "ჩამოტვირთვა", + "Preview" : "წინასწარი ჩვენება", + "Copy link" : "ბმულის კოპირება", + "Edit" : "შეცვლა", "Delete" : "წაშლა", + "New calendar" : "ახალი კალენდარი", + "Export" : "ექსპორტი", + "Name" : "სახელი", + "Deleted" : "გაუქმდა", + "Restore" : "აღდგენა", + "Delete permanently" : "სამუდამოდ წაშლა", "Share link" : "ბმულის გაზიარება", - "Share with users or groups" : "გაზიარება მოხმარებლებთან ან ჯგუფებთან", "can edit" : "შეგიძლია შეცვლა", - "New calendar" : "ახალი კალენდარი", + "Share with users or groups" : "გაზიარება მოხმარებლებთან ან ჯგუფებთან", + "Save" : "შენახვა", "Filename" : "ფაილის სახელი", "Cancel" : "უარყოფა", "Automatic" : "ავტომატური", "or" : "ან", + "List view" : "ჩამონათვლისებური ხედი", "Actions" : "მოქმედებები", "Show week numbers" : "კვირის ნომრების ჩვენება", - "Settings & import" : "პარამეტრები და იმპორტი", + "Location" : "ადგილმდებარეობა", + "Description" : "აღწერილობა", + "to" : "ვის", + "Add" : "დამატება", + "Monday" : "ორშაბათი", + "Tuesday" : "სამშაბათი", + "Wednesday" : "ოთხშაბათი", + "Thursday" : "ხუთშაბათი", + "Friday" : "პარასკევი", + "Saturday" : "შაბათი", + "Sunday" : "კვირა", + "Update" : "განახლება", + "Your email address" : "თქვენი ელ-ფოსტის მისამართი", "Notification" : "შეტყობინება", "Email" : "ელ-ფოსტა", + "Delete file" : "გაუქმდეს ფაილი", + "Choose a file to add as attachment" : "დანართად დასამატებლად აირჩიეთ ფაილი", "Unknown" : "ამოუცნობი", + "Accept" : "მიღება", + "Decline" : "ურაყოფა", + "Tentative" : "საცდელი", + "Send email" : "ელ-წერილის გაგზავნა", "All day" : "მთელი დღე", + "Repeat" : "გამეორება", "never" : "არასდროს", "after" : "შემდეგ", - "Repeat" : "გამეორება", - "Monday" : "ორშაბათი", - "Summary" : "შეჯამება", + "available" : "ხელმისაწვდომი", "More" : "უფრო მეტი", - "Save" : "შენახვა", - "Update" : "განახლება", - "Personal" : "პირადი", + "Global" : "გლობალური", + "Subscribe" : "გამოწერა", "Details" : "დეტლაები", "Attendees" : "დამსწრეები", - "Reminders" : "შემახსენებლები", + "Resources" : "რესურსები", "Close" : "დახურვა", - "Anniversary" : "დაბადების დღე", "Week {number} of {year}" : "კვირა {number} {year}-დან", "Daily" : "ყოველდღიური", "Weekly" : "ყოველკვირეული", - "next year" : "შემდეგი წელი", - "today" : "დღეს", + "Other" : "სხვა", "When shared show full event" : "როდესაც გაზიარებულია გამოჩნდეს სრული მოვლენა", "When shared show only busy" : "როდესაც გაზიარებულია გამოჩნდეს მხოლოდ დაკავებული", "When shared hide this event" : "როდესაც გაზიარებულია არ გამოჩნდეს ეს მოვლენა", - "Location" : "ადგილმდებარეობა", - "Description" : "აღწერილობა", "Status" : "სტატუსი", "Confirmed" : "დადასტურებლია", - "Tentative" : "საცდელი", "Categories" : "კატეგორიები", + "Talk" : "საუბარი", "Mail" : "ფოსტა", - "Play" : "დაკვრა", - "Global" : "გლობალური" + "Birthday" : "დაბადების დრე" }, "nplurals=2; plural=(n!=1);"); diff --git a/l10n/ka_GE.json b/l10n/ka_GE.json index 9973c4d676..d73bf1115c 100644 --- a/l10n/ka_GE.json +++ b/l10n/ka_GE.json @@ -5,58 +5,82 @@ "Open »%s«" : "გახნსნა »%s«", "Cheers!" : "წარმატებები!", "Calendar" : "კალენდარი", + "Confirm" : "დადასტურება", + "Where:" : "სად:", + "Anniversary" : "დაბადების დღე", + "Personal" : "პირადი", "Today" : "დღეს", "Day" : "დღე", "Week" : "კვირა", "Month" : "თვე", "List" : "ჩამონათვალი", - "Download" : "ჩამოტვირთვა", + "Preview" : "წინასწარი ჩვენება", + "Copy link" : "ბმულის კოპირება", + "Edit" : "შეცვლა", "Delete" : "წაშლა", + "New calendar" : "ახალი კალენდარი", + "Export" : "ექსპორტი", + "Name" : "სახელი", + "Deleted" : "გაუქმდა", + "Restore" : "აღდგენა", + "Delete permanently" : "სამუდამოდ წაშლა", "Share link" : "ბმულის გაზიარება", - "Share with users or groups" : "გაზიარება მოხმარებლებთან ან ჯგუფებთან", "can edit" : "შეგიძლია შეცვლა", - "New calendar" : "ახალი კალენდარი", + "Share with users or groups" : "გაზიარება მოხმარებლებთან ან ჯგუფებთან", + "Save" : "შენახვა", "Filename" : "ფაილის სახელი", "Cancel" : "უარყოფა", "Automatic" : "ავტომატური", "or" : "ან", + "List view" : "ჩამონათვლისებური ხედი", "Actions" : "მოქმედებები", "Show week numbers" : "კვირის ნომრების ჩვენება", - "Settings & import" : "პარამეტრები და იმპორტი", + "Location" : "ადგილმდებარეობა", + "Description" : "აღწერილობა", + "to" : "ვის", + "Add" : "დამატება", + "Monday" : "ორშაბათი", + "Tuesday" : "სამშაბათი", + "Wednesday" : "ოთხშაბათი", + "Thursday" : "ხუთშაბათი", + "Friday" : "პარასკევი", + "Saturday" : "შაბათი", + "Sunday" : "კვირა", + "Update" : "განახლება", + "Your email address" : "თქვენი ელ-ფოსტის მისამართი", "Notification" : "შეტყობინება", "Email" : "ელ-ფოსტა", + "Delete file" : "გაუქმდეს ფაილი", + "Choose a file to add as attachment" : "დანართად დასამატებლად აირჩიეთ ფაილი", "Unknown" : "ამოუცნობი", + "Accept" : "მიღება", + "Decline" : "ურაყოფა", + "Tentative" : "საცდელი", + "Send email" : "ელ-წერილის გაგზავნა", "All day" : "მთელი დღე", + "Repeat" : "გამეორება", "never" : "არასდროს", "after" : "შემდეგ", - "Repeat" : "გამეორება", - "Monday" : "ორშაბათი", - "Summary" : "შეჯამება", + "available" : "ხელმისაწვდომი", "More" : "უფრო მეტი", - "Save" : "შენახვა", - "Update" : "განახლება", - "Personal" : "პირადი", + "Global" : "გლობალური", + "Subscribe" : "გამოწერა", "Details" : "დეტლაები", "Attendees" : "დამსწრეები", - "Reminders" : "შემახსენებლები", + "Resources" : "რესურსები", "Close" : "დახურვა", - "Anniversary" : "დაბადების დღე", "Week {number} of {year}" : "კვირა {number} {year}-დან", "Daily" : "ყოველდღიური", "Weekly" : "ყოველკვირეული", - "next year" : "შემდეგი წელი", - "today" : "დღეს", + "Other" : "სხვა", "When shared show full event" : "როდესაც გაზიარებულია გამოჩნდეს სრული მოვლენა", "When shared show only busy" : "როდესაც გაზიარებულია გამოჩნდეს მხოლოდ დაკავებული", "When shared hide this event" : "როდესაც გაზიარებულია არ გამოჩნდეს ეს მოვლენა", - "Location" : "ადგილმდებარეობა", - "Description" : "აღწერილობა", "Status" : "სტატუსი", "Confirmed" : "დადასტურებლია", - "Tentative" : "საცდელი", "Categories" : "კატეგორიები", + "Talk" : "საუბარი", "Mail" : "ფოსტა", - "Play" : "დაკვრა", - "Global" : "გლობალური" + "Birthday" : "დაბადების დრე" },"pluralForm" :"nplurals=2; plural=(n!=1);" } \ No newline at end of file diff --git a/l10n/km.js b/l10n/km.js index 05a78f04a2..3e85b153a5 100644 --- a/l10n/km.js +++ b/l10n/km.js @@ -2,33 +2,52 @@ OC.L10N.register( "calendar", { "Calendar" : "ប្រតិទិន", + "Personal" : "ផ្ទាល់​ខ្លួន", "Today" : "ថ្ងៃ​នេះ", "Day" : "ថ្ងៃ", "Week" : "សប្ដាហ៍", "Month" : "ខែ", - "Download" : "ទាញយក", + "Year" : "ឆ្នាំ", + "Copy link" : "ចម្លងតំណ", + "Edit" : "កែប្រែ", "Delete" : "លុប", + "New calendar" : "ប្រតិទិន​ថ្មី", + "Export" : "នាំចេញ", + "Name" : "ឈ្មោះ", + "Deleted" : "បាន​លុប", + "Restore" : "ស្ដារ​មក​វិញ", + "Delete permanently" : "លុប​ជា​អចិន្ត្រៃយ៍", "Share link" : "Share link", "can edit" : "អាច​កែប្រែ", - "New calendar" : "ប្រតិទិន​ថ្មី", + "Save" : "រក្សាទុក", "Cancel" : "បោះបង់", + "Location" : "ទីតាំង", + "Description" : "ការ​អធិប្បាយ", + "to" : "ទៅ", + "Add" : "បញ្ចូល", + "Monday" : "ថ្ងៃចន្ទ", + "Tuesday" : "ថ្ងៃអង្គារ", + "Wednesday" : "ថ្ងៃពុធ", + "Thursday" : "ថ្ងៃព្រហស្បតិ៍", + "Friday" : "ថ្ងៃសុក្រ", + "Saturday" : "ថ្ងៃសៅរ៍", + "Sunday" : "ថ្ងៃអាទិត្យ", + "Update" : "ធ្វើ​បច្ចុប្បន្នភាព", + "Your email address" : "អ៊ីម៉ែល​របស់​អ្នក", "Email" : "អ៊ីមែល", - "never" : "មិនដែរ", + "Send email" : "ផ្ញើ​អ៊ីមែល", "Repeat" : "ធ្វើម្ដងទៀត", - "Monday" : "ថ្ងៃចន្ទ", + "never" : "មិនដែរ", + "first" : "ទីមួយ", + "last" : "ចុងក្រោយ", "More" : "ច្រើន​ទៀត", - "Save" : "រក្សាទុក", - "Update" : "ធ្វើ​បច្ចុប្បន្នភាព", - "Personal" : "ផ្ទាល់​ខ្លួន", "Details" : "ព័ត៌មាន​លម្អិត", "Attendees" : "អ្នក​ចូលរួម", "Close" : "បិទ", "Daily" : "រាល់ថ្ងៃ", "Weekly" : "រាល់​សប្ដាហ៍", - "today" : "ថ្ងៃនេះ", - "Location" : "ទីតាំង", - "Description" : "ការ​អធិប្បាយ", + "Other" : "ផ្សេងៗ", "Mail" : "សំបុត្រ", - "Play" : "លេង" + "Birthday" : "ថ្ងៃ​កំណើត" }, "nplurals=1; plural=0;"); diff --git a/l10n/km.json b/l10n/km.json index 319de43d08..cfa839ea51 100644 --- a/l10n/km.json +++ b/l10n/km.json @@ -1,32 +1,51 @@ { "translations": { "Calendar" : "ប្រតិទិន", + "Personal" : "ផ្ទាល់​ខ្លួន", "Today" : "ថ្ងៃ​នេះ", "Day" : "ថ្ងៃ", "Week" : "សប្ដាហ៍", "Month" : "ខែ", - "Download" : "ទាញយក", + "Year" : "ឆ្នាំ", + "Copy link" : "ចម្លងតំណ", + "Edit" : "កែប្រែ", "Delete" : "លុប", + "New calendar" : "ប្រតិទិន​ថ្មី", + "Export" : "នាំចេញ", + "Name" : "ឈ្មោះ", + "Deleted" : "បាន​លុប", + "Restore" : "ស្ដារ​មក​វិញ", + "Delete permanently" : "លុប​ជា​អចិន្ត្រៃយ៍", "Share link" : "Share link", "can edit" : "អាច​កែប្រែ", - "New calendar" : "ប្រតិទិន​ថ្មី", + "Save" : "រក្សាទុក", "Cancel" : "បោះបង់", + "Location" : "ទីតាំង", + "Description" : "ការ​អធិប្បាយ", + "to" : "ទៅ", + "Add" : "បញ្ចូល", + "Monday" : "ថ្ងៃចន្ទ", + "Tuesday" : "ថ្ងៃអង្គារ", + "Wednesday" : "ថ្ងៃពុធ", + "Thursday" : "ថ្ងៃព្រហស្បតិ៍", + "Friday" : "ថ្ងៃសុក្រ", + "Saturday" : "ថ្ងៃសៅរ៍", + "Sunday" : "ថ្ងៃអាទិត្យ", + "Update" : "ធ្វើ​បច្ចុប្បន្នភាព", + "Your email address" : "អ៊ីម៉ែល​របស់​អ្នក", "Email" : "អ៊ីមែល", - "never" : "មិនដែរ", + "Send email" : "ផ្ញើ​អ៊ីមែល", "Repeat" : "ធ្វើម្ដងទៀត", - "Monday" : "ថ្ងៃចន្ទ", + "never" : "មិនដែរ", + "first" : "ទីមួយ", + "last" : "ចុងក្រោយ", "More" : "ច្រើន​ទៀត", - "Save" : "រក្សាទុក", - "Update" : "ធ្វើ​បច្ចុប្បន្នភាព", - "Personal" : "ផ្ទាល់​ខ្លួន", "Details" : "ព័ត៌មាន​លម្អិត", "Attendees" : "អ្នក​ចូលរួម", "Close" : "បិទ", "Daily" : "រាល់ថ្ងៃ", "Weekly" : "រាល់​សប្ដាហ៍", - "today" : "ថ្ងៃនេះ", - "Location" : "ទីតាំង", - "Description" : "ការ​អធិប្បាយ", + "Other" : "ផ្សេងៗ", "Mail" : "សំបុត្រ", - "Play" : "លេង" + "Birthday" : "ថ្ងៃ​កំណើត" },"pluralForm" :"nplurals=1; plural=0;" } \ No newline at end of file diff --git a/l10n/ko.js b/l10n/ko.js index 94fac96e68..2d2c741291 100644 --- a/l10n/ko.js +++ b/l10n/ko.js @@ -5,148 +5,423 @@ OC.L10N.register( "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 " : "성공적으로 이메일을 보냈습니다. ", + "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" : "다가오는 일정 없음", "Calendar" : "달력", + "Appointments" : "일정들", + "Confirm" : "확인", + "Date:" : "날짜:", + "Where:" : "장소:", + "Anniversary" : "기념일", + "Appointment" : "일정", + "Business" : "사업", + "Education" : "교육", + "Holiday" : "휴일", + "Meeting" : "회의", + "Non-working hours" : "비번인 시간", + "Not in office" : "자리에 없음", + "Personal" : "개인", + "Phone call" : "전화 연락", + "Sick day" : "병가", + "Travel" : "여행", + "Vacation" : "휴가", + "Collaborative Tags" : "공동 작업 태그", "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) 라이브러리를 기반으로 합니다.", + "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 month" : "이전달", "Next day" : "다음날", "Next week" : "다음주", + "Next year" : "다음 년도", "Next month" : "다음달", - "+ New event" : "+ 새 이벤트", "Today" : "오늘", "Day" : "일", "Week" : "주", "Month" : "달", + "Year" : "년", "List" : "목록", - "Untitled calendar" : "제목없는 일정", - "Edit name" : "이름 편집", - "Saving name …" : "이름 저장 중...", - "Edit color" : "색 편집", - "Saving color …" : "색깔 저장 중...", - "Copy private link" : "개인 링크 주소 복사", - "Download" : "다운로드", - "Unshare from me" : "나의 공유 해제", + "Preview" : "미리 보기", + "Copy link" : "링크 복사", + "Edit" : "수정", "Delete" : "삭제", - "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." : "오류가 발생하여 일정의 색깔을 변경할 수 없습니다.", - "_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}초 후 일정 삭제"], - "Share link" : "링크 공유", - "Publish calendar" : "달력 게시", - "Copy public link" : "공개 링크 복사", - "Sending email …" : "이메일로 보내는중 …", + "Add new" : "새로 추가", + "Untitled calendar" : "제목없는 달력", + "Shared with you by" : "다음을 이용해 나와 공유됨 : ", + "An error occurred, unable to change visibility of the 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}초 후 달력 삭제"], + "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:// 로 시작합니다.)", "Copy subscription link" : "구독 링크 복사", "Copying link …" : "링크 복사중 …", "Copied link" : "링크 복사됨", + "Could not copy link" : "링크를 복사할 수 없음", + "Export" : "내보내기", + "Calendar link copied to clipboard." : "달력의 링크를 클립보드에 복사되었습니다.", + "Calendar link could not be copied to clipboard." : "달력의 링크를 클립보드에 저장할 수 없습니다.", + "Trash bin" : "휴지통", + "Name" : "이름", + "Deleted" : "삭제됨", + "Restore" : "복원", + "Delete permanently" : "영구히 삭제", + "Empty trash bin" : "휴지통 비우기", + "Could not load deleted calendars and objects" : "삭제된 달력과 요소들을 불러올 수 없음", + "Could not restore calendar or event" : "달력과 일정을 복구할 수 없음", + "Do you really want to empty the trash bin?" : "휴지통을 정말 비웁니까?", + "Could not update calendar order." : "달력 순서를 갱신할 수 없습니다.", + "Copy internal 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 …" : "공유링크 삭제 …", + "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" : "달력 공개 중단 실패", + "can edit" : "편집 가능", + "Unshare with {displayName}" : "{displayName}과 공유 중단", + "An error occurred, unable to change the permission of the share." : "오류가 발생하여 공유 권한을 변경할 수 없습니다.", "Share with users or groups" : "사용자 및 그룹과 공유", "No users or groups" : "사용자나 그룹 없음", - "can edit" : "편집 가능", - "+ New calendar" : "+ 새 캘린더", - "New calendar" : "새 달력", - "Creating calendar …" : "캘린더 생성중 …", + "Unshare from me" : "나의 공유 해제", + "Save" : "저장", "Import calendars" : "달력 가져오기", + "Please select a calendar to import into …" : "다음으로 가져올 달력을 선택해 주십시오 ...", "Filename" : "파일 이름", + "Calendar to import into" : "다음으로 가져올 달력", "Cancel" : "취소", "_Import calendar_::_Import calendars_" : ["달력 가져오기"], - "_Successfully imported %n event_::_Successfully imported %n events._" : ["Successfully imported %n 이벤트를 성공적으로 가져왔습니다."], + "{filename} could not be parsed" : "{filename} 분석할 수 없음", + "No valid files found, aborting import" : "올바른 파일을 발견할 수 없음, 가져오기 취소", + "Import partially failed. Imported {accepted} out of {total}." : "가져오기가 부분적으로 실패했습니다. {total} 중 {accepted} 가져옴.", "Automatic" : "자동", "Automatic ({detected})" : "자동 ({detected})", + "New setting was not saved successfully." : "새로운 설정이 저장되지 않았습니다.", "or" : "또는", + "Previous period" : "이전 기간", + "Next period" : "다음 기간", "Views" : "보기", "Day view" : "일간", "Week view" : "주간", "Month view" : "월간", + "List view" : "목록 보기", "Actions" : "동작", - "Create event" : "이벤트 만들기", + "Create event" : "일정 만들기", + "Show shortcuts" : "단축키 표시", "Enable birthday calendar" : "생일 달력 활성화", + "Show tasks in calendar" : "달력에 작업 보이기", + "Enable simplified editor" : "간편한 편집기 활성화", "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" : "개인별 가용성 설정", "Show keyboard shortcuts" : "키보드 단축키 표시", - "Settings & import" : "설정 및 가져오기", + "No reminder" : "알림 없음", + "CalDAV link copied to clipboard." : "CalDAV 링크를 클립보드에 복사했습니다.", + "CalDAV link could not be copied to clipboard." : "CalDAV 링크를 클립보드에 복사할 수 없습니다.", + "Location" : "위치", + "Description" : "설명", + "Visibility" : "표시 여부", + "Duration" : "길이", + "to" : "받는 사람", + "Delete slot" : "시간대 삭제", + "Add" : "추가", + "Monday" : "월요일", + "Tuesday" : "화요일", + "Wednesday" : "수요일", + "Thursday" : "목요일", + "Friday" : "금요일", + "Saturday" : "토요일", + "Sunday" : "일요일", + "Update" : "업데이트", + "Your email address" : "내 이메일 주소", + "Reminder" : "알림", + "before at" : "다음 이전에: ", "Notification" : "알림", "Email" : "이메일", + "Audio notification" : "소리 알림", + "Other notification" : "다른 알림", + "Relative to event" : "일정과 관련된", "On date" : "날짜", - "_second_::_seconds_" : ["두번째"], + "Edit time" : "시간 편집", + "Save time" : "시간 저장", + "Remove reminder" : "알림 삭제", + "on" : "다음 시간/위치에: ", + "at" : "다음 시간/위치에: ", + "+ Add reminder" : "+ 알림 생성", + "Add reminder" : "알림 추가", + "_second_::_seconds_" : ["초"], + "_minute_::_minutes_" : ["분"], + "_hour_::_hours_" : ["시"], "_day_::_days_" : ["일"], + "_week_::_weeks_" : ["주"], + "Upload from device" : "이 장치에서 업로드하다", + "Delete file" : "파일 삭제", + "Choose a file to add as attachment" : "첨부할 파일을 선택하세요.", + "Choose a file to share as a link" : "공유할 링크 파일을 선택하세요.", + "Available" : "사용 가능", + "Not available" : "사용할 수 없음", + "Free" : "바쁘지 않음", + "Busy (tentative)" : "바쁨 (잠정적으로)", "Busy" : "바쁨", + "Out of office" : "자리에 없음", "Unknown" : "알 수 없음", - "Create Talk room for this event" : "이 이벤트에 대한 대화방 만들기", - "Search for e-mails, users, contacts, resources or rooms" : "이메일, 사용자, 주소록, 파일, 대화방 검색", - "No attendees yet" : "아직 참석자가 없습니다", - "Event title" : "이벤트 제목", + "Accept" : "수락", + "Decline" : "거절", + "Tentative" : "예정됨", + "Create Talk room for this event" : "이 일정에 대한 대화방 만들기", + "Show busy times" : "바쁜 시간 보이기", + "No attendees yet" : "아직 참석자가 없습니다.", + "Error creating Talk room" : "대화방 생성 오류", + "Send email" : "이메일 보내기", + "Chairperson" : "회장", + "Required participant" : "필수 참가자", + "Optional participant" : "선택적 참가자", + "Non-participant" : "미참가자", + "Remove attendee" : "참석자 삭제", + "Search for emails, users or contacts" : "이메일, 사용자 혹은 연락처 검색", + "No match found" : "일치하는 항목 없음", + "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} 까지", + "Repeat" : "반복", "End repeat" : "반복 종료", "never" : "없음", "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" : "마지막", - "Repeat" : "반복", + "Changes to the recurrence-rule will only apply to this and all future occurrences." : "반복 규칙은 이번 및 그 이후의 일정에만 적용됩니다.", "Repeat every" : "반복 주기", "_month_::_months_" : ["개월"], - "Monday" : "월요일", - "Summary" : "요약", + "_year_::_years_" : ["년"], + "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에서 이 일정의 반복 설정 방식을 완전히 지원하지 않습니다. 반복 설정을 편집할 경우, 현재의 반복 설정이 사라질 수 있습니다.", + "No rooms or resources yet" : "방 혹은 비품 없음", + "Has a projector" : "프로젝터 있음", + "Has a whiteboard" : "화이트보드 있음", + "Wheelchair accessible" : "휠체어 사용 가능", + "Remove resource" : "비품 삭제", + "Projector" : "프로젝터", + "Whiteboard" : "화이트보드", + "Search for resources or rooms" : "비품 혹은 방 검색", + "available" : "사용 가능", + "unavailable" : "사용 불가", + "Room type" : "방 종류", + "Minimum seating capacity" : "최소 좌석 수", "More" : "더 보기", - "Save" : "저장", - "Update" : "업데이트", - "Please select a timezone:" : "기준 시간대 선택:", - "Type to search timezone" : "시간대를 찾기 위해 입력하세요.", - "Personal" : "개인", + "Update this occurrence" : "이 일정 업데이트", + "Update this and all future" : "이후 모든 일정 업데이트", + "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" : "시간대를 찾기 위해 입력하세요.", + "Global" : "국제", + "Subscribed" : "구독함", + "Subscribe" : "구독", + "Time:" : "시간:", + "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설정에서 시간대를 변경하고 이 문제를 보고해 주십시오.", + "Create a new event" : "새 일정 만들기", + "[Today]" : "[오늘]", + "[Tomorrow]" : "[내일]", + "[Yesterday]" : "[어제]", + "Event does not exist" : "일정이 존재하지 않음", + "Delete this occurrence" : "이 일정 삭제", + "Delete this and all future" : "이후 모든 일정 삭제", "Details" : "자세한 정보", + "Invite" : "초대", "Attendees" : "참석자", - "Reminders" : "알림", + "Resources" : "자원", "Close" : "닫기", - "Anniversary" : "기념일", + "Show more details" : "더 자세히 보기", + "Subscribe to {name}" : "{name} 구독", + "Midnight on the day the event starts" : "자정에 일정이 시작됨", + "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["{formattedHourMinute}에 진행되는 일정의 %n일 전"], + "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : [" {formattedHourMinute}에 진행되는 일정의 %n주 전 "], + "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}" : "{year}년 제 {number}주", + "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 year_::_Every %n years_" : ["%n 년 마다"], "_on {weekday}_::_on {weekdays}_" : ["{weekdays}"], "until {untilDate}" : "{untilDate} 까지", - "prev" : "이전", - "next" : "다음", - "next year" : "내년", - "today" : "오늘", + "Untitled event" : "제목없는 일정", + "Untitled task" : "제목없는 작업", + "Please ask your administrator to enable the Tasks App." : "관리자에게 Tasks 앱 활성화를 요청하세요.", + "%n more" : "%n 더", + "No events to display" : "표시할 일정 없음", + "_+%n more_::_+%n more_" : ["+%n 더"], + "No events" : "일정 없음", + "Meeting room" : "회의실", + "Lecture hall" : "강의실", + "Seminar room" : "세미나실", + "Other" : "기타", "When shared show full event" : "전체 일정 공유", "When shared show only busy" : "바쁨/한가함만 공유", "When shared hide this event" : "일정 공유하지 않음", - "Location" : "위치", - "Description" : "설명", + "The visibility of this event in shared calendars." : "공유 달력에서 이 일정의 표시 여부", + "Add a location" : "위치 추가", + "Add a description" : "설명 추가", "Status" : "상태", "Confirmed" : "확인됨", - "Tentative" : "예정됨", "Canceled" : "취소됨", + "Confirmation about the overall status of the event." : "일정의 전반적 상태에 대해 자세히 확인", + "Show as" : "다음으로 표시: ", "Categories" : "분류", + "Categories help you to structure and organize your events." : "카테고리는 일정을 만들고 조직할 때 도움이 됩니다.", + "Search or add categories" : "카테고리를 찾거나 추가하기", + "Add this as a new category" : "새 카테고리로 추가", + "Special color of this event. Overrides the calendar-color." : "이 일정만의 색깔. 달력 색깔을 무시함.", + "Error while sharing file" : "파일 공유하는 도중 오류", + "Chat room for event" : "일정에 대한 채팅방", + "An error occurred, unable to delete the calendar." : "오류가 발생하여 달력을 삭제할 수 없습니다.", "Imported {filename}" : "{filename} 가져옴", + "Meditation" : "명상", + "Relaxing" : "휴식하기", + "Relax" : "휴식", + "Break" : "쉼", + "Commute" : "통근", + "Commuting" : "이동 중", + "Shuttle" : "왕복", "Presentation" : "프레젠테이션", + "Talk" : "토크", + "Camping" : "캠핑하기", + "Camp" : "캠핑", + "Vote" : "투표", "Movie" : "영화", - "Review" : "Review", + "Cinema" : "영화", + "Graduation" : "졸업", + "Review" : "리뷰", + "Baseball" : "야구", + "Meet" : "회의", + "Office" : "사무실", "Mail" : "메일", - "Play" : "재생", + "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" : "골프", - "Global" : "국제" + "Dinner" : "저녁", + "Lunch" : "점심", + "User not found" : "사용자를 찾을 수 없음" }, "nplurals=1; plural=0;"); diff --git a/l10n/ko.json b/l10n/ko.json index d46be8153e..7b592417b1 100644 --- a/l10n/ko.json +++ b/l10n/ko.json @@ -3,148 +3,423 @@ "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 " : "성공적으로 이메일을 보냈습니다. ", + "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" : "다가오는 일정 없음", "Calendar" : "달력", + "Appointments" : "일정들", + "Confirm" : "확인", + "Date:" : "날짜:", + "Where:" : "장소:", + "Anniversary" : "기념일", + "Appointment" : "일정", + "Business" : "사업", + "Education" : "교육", + "Holiday" : "휴일", + "Meeting" : "회의", + "Non-working hours" : "비번인 시간", + "Not in office" : "자리에 없음", + "Personal" : "개인", + "Phone call" : "전화 연락", + "Sick day" : "병가", + "Travel" : "여행", + "Vacation" : "휴가", + "Collaborative Tags" : "공동 작업 태그", "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) 라이브러리를 기반으로 합니다.", + "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 month" : "이전달", "Next day" : "다음날", "Next week" : "다음주", + "Next year" : "다음 년도", "Next month" : "다음달", - "+ New event" : "+ 새 이벤트", "Today" : "오늘", "Day" : "일", "Week" : "주", "Month" : "달", + "Year" : "년", "List" : "목록", - "Untitled calendar" : "제목없는 일정", - "Edit name" : "이름 편집", - "Saving name …" : "이름 저장 중...", - "Edit color" : "색 편집", - "Saving color …" : "색깔 저장 중...", - "Copy private link" : "개인 링크 주소 복사", - "Download" : "다운로드", - "Unshare from me" : "나의 공유 해제", + "Preview" : "미리 보기", + "Copy link" : "링크 복사", + "Edit" : "수정", "Delete" : "삭제", - "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." : "오류가 발생하여 일정의 색깔을 변경할 수 없습니다.", - "_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}초 후 일정 삭제"], - "Share link" : "링크 공유", - "Publish calendar" : "달력 게시", - "Copy public link" : "공개 링크 복사", - "Sending email …" : "이메일로 보내는중 …", + "Add new" : "새로 추가", + "Untitled calendar" : "제목없는 달력", + "Shared with you by" : "다음을 이용해 나와 공유됨 : ", + "An error occurred, unable to change visibility of the 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}초 후 달력 삭제"], + "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:// 로 시작합니다.)", "Copy subscription link" : "구독 링크 복사", "Copying link …" : "링크 복사중 …", "Copied link" : "링크 복사됨", + "Could not copy link" : "링크를 복사할 수 없음", + "Export" : "내보내기", + "Calendar link copied to clipboard." : "달력의 링크를 클립보드에 복사되었습니다.", + "Calendar link could not be copied to clipboard." : "달력의 링크를 클립보드에 저장할 수 없습니다.", + "Trash bin" : "휴지통", + "Name" : "이름", + "Deleted" : "삭제됨", + "Restore" : "복원", + "Delete permanently" : "영구히 삭제", + "Empty trash bin" : "휴지통 비우기", + "Could not load deleted calendars and objects" : "삭제된 달력과 요소들을 불러올 수 없음", + "Could not restore calendar or event" : "달력과 일정을 복구할 수 없음", + "Do you really want to empty the trash bin?" : "휴지통을 정말 비웁니까?", + "Could not update calendar order." : "달력 순서를 갱신할 수 없습니다.", + "Copy internal 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 …" : "공유링크 삭제 …", + "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" : "달력 공개 중단 실패", + "can edit" : "편집 가능", + "Unshare with {displayName}" : "{displayName}과 공유 중단", + "An error occurred, unable to change the permission of the share." : "오류가 발생하여 공유 권한을 변경할 수 없습니다.", "Share with users or groups" : "사용자 및 그룹과 공유", "No users or groups" : "사용자나 그룹 없음", - "can edit" : "편집 가능", - "+ New calendar" : "+ 새 캘린더", - "New calendar" : "새 달력", - "Creating calendar …" : "캘린더 생성중 …", + "Unshare from me" : "나의 공유 해제", + "Save" : "저장", "Import calendars" : "달력 가져오기", + "Please select a calendar to import into …" : "다음으로 가져올 달력을 선택해 주십시오 ...", "Filename" : "파일 이름", + "Calendar to import into" : "다음으로 가져올 달력", "Cancel" : "취소", "_Import calendar_::_Import calendars_" : ["달력 가져오기"], - "_Successfully imported %n event_::_Successfully imported %n events._" : ["Successfully imported %n 이벤트를 성공적으로 가져왔습니다."], + "{filename} could not be parsed" : "{filename} 분석할 수 없음", + "No valid files found, aborting import" : "올바른 파일을 발견할 수 없음, 가져오기 취소", + "Import partially failed. Imported {accepted} out of {total}." : "가져오기가 부분적으로 실패했습니다. {total} 중 {accepted} 가져옴.", "Automatic" : "자동", "Automatic ({detected})" : "자동 ({detected})", + "New setting was not saved successfully." : "새로운 설정이 저장되지 않았습니다.", "or" : "또는", + "Previous period" : "이전 기간", + "Next period" : "다음 기간", "Views" : "보기", "Day view" : "일간", "Week view" : "주간", "Month view" : "월간", + "List view" : "목록 보기", "Actions" : "동작", - "Create event" : "이벤트 만들기", + "Create event" : "일정 만들기", + "Show shortcuts" : "단축키 표시", "Enable birthday calendar" : "생일 달력 활성화", + "Show tasks in calendar" : "달력에 작업 보이기", + "Enable simplified editor" : "간편한 편집기 활성화", "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" : "개인별 가용성 설정", "Show keyboard shortcuts" : "키보드 단축키 표시", - "Settings & import" : "설정 및 가져오기", + "No reminder" : "알림 없음", + "CalDAV link copied to clipboard." : "CalDAV 링크를 클립보드에 복사했습니다.", + "CalDAV link could not be copied to clipboard." : "CalDAV 링크를 클립보드에 복사할 수 없습니다.", + "Location" : "위치", + "Description" : "설명", + "Visibility" : "표시 여부", + "Duration" : "길이", + "to" : "받는 사람", + "Delete slot" : "시간대 삭제", + "Add" : "추가", + "Monday" : "월요일", + "Tuesday" : "화요일", + "Wednesday" : "수요일", + "Thursday" : "목요일", + "Friday" : "금요일", + "Saturday" : "토요일", + "Sunday" : "일요일", + "Update" : "업데이트", + "Your email address" : "내 이메일 주소", + "Reminder" : "알림", + "before at" : "다음 이전에: ", "Notification" : "알림", "Email" : "이메일", + "Audio notification" : "소리 알림", + "Other notification" : "다른 알림", + "Relative to event" : "일정과 관련된", "On date" : "날짜", - "_second_::_seconds_" : ["두번째"], + "Edit time" : "시간 편집", + "Save time" : "시간 저장", + "Remove reminder" : "알림 삭제", + "on" : "다음 시간/위치에: ", + "at" : "다음 시간/위치에: ", + "+ Add reminder" : "+ 알림 생성", + "Add reminder" : "알림 추가", + "_second_::_seconds_" : ["초"], + "_minute_::_minutes_" : ["분"], + "_hour_::_hours_" : ["시"], "_day_::_days_" : ["일"], + "_week_::_weeks_" : ["주"], + "Upload from device" : "이 장치에서 업로드하다", + "Delete file" : "파일 삭제", + "Choose a file to add as attachment" : "첨부할 파일을 선택하세요.", + "Choose a file to share as a link" : "공유할 링크 파일을 선택하세요.", + "Available" : "사용 가능", + "Not available" : "사용할 수 없음", + "Free" : "바쁘지 않음", + "Busy (tentative)" : "바쁨 (잠정적으로)", "Busy" : "바쁨", + "Out of office" : "자리에 없음", "Unknown" : "알 수 없음", - "Create Talk room for this event" : "이 이벤트에 대한 대화방 만들기", - "Search for e-mails, users, contacts, resources or rooms" : "이메일, 사용자, 주소록, 파일, 대화방 검색", - "No attendees yet" : "아직 참석자가 없습니다", - "Event title" : "이벤트 제목", + "Accept" : "수락", + "Decline" : "거절", + "Tentative" : "예정됨", + "Create Talk room for this event" : "이 일정에 대한 대화방 만들기", + "Show busy times" : "바쁜 시간 보이기", + "No attendees yet" : "아직 참석자가 없습니다.", + "Error creating Talk room" : "대화방 생성 오류", + "Send email" : "이메일 보내기", + "Chairperson" : "회장", + "Required participant" : "필수 참가자", + "Optional participant" : "선택적 참가자", + "Non-participant" : "미참가자", + "Remove attendee" : "참석자 삭제", + "Search for emails, users or contacts" : "이메일, 사용자 혹은 연락처 검색", + "No match found" : "일치하는 항목 없음", + "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} 까지", + "Repeat" : "반복", "End repeat" : "반복 종료", "never" : "없음", "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" : "마지막", - "Repeat" : "반복", + "Changes to the recurrence-rule will only apply to this and all future occurrences." : "반복 규칙은 이번 및 그 이후의 일정에만 적용됩니다.", "Repeat every" : "반복 주기", "_month_::_months_" : ["개월"], - "Monday" : "월요일", - "Summary" : "요약", + "_year_::_years_" : ["년"], + "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에서 이 일정의 반복 설정 방식을 완전히 지원하지 않습니다. 반복 설정을 편집할 경우, 현재의 반복 설정이 사라질 수 있습니다.", + "No rooms or resources yet" : "방 혹은 비품 없음", + "Has a projector" : "프로젝터 있음", + "Has a whiteboard" : "화이트보드 있음", + "Wheelchair accessible" : "휠체어 사용 가능", + "Remove resource" : "비품 삭제", + "Projector" : "프로젝터", + "Whiteboard" : "화이트보드", + "Search for resources or rooms" : "비품 혹은 방 검색", + "available" : "사용 가능", + "unavailable" : "사용 불가", + "Room type" : "방 종류", + "Minimum seating capacity" : "최소 좌석 수", "More" : "더 보기", - "Save" : "저장", - "Update" : "업데이트", - "Please select a timezone:" : "기준 시간대 선택:", - "Type to search timezone" : "시간대를 찾기 위해 입력하세요.", - "Personal" : "개인", + "Update this occurrence" : "이 일정 업데이트", + "Update this and all future" : "이후 모든 일정 업데이트", + "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" : "시간대를 찾기 위해 입력하세요.", + "Global" : "국제", + "Subscribed" : "구독함", + "Subscribe" : "구독", + "Time:" : "시간:", + "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설정에서 시간대를 변경하고 이 문제를 보고해 주십시오.", + "Create a new event" : "새 일정 만들기", + "[Today]" : "[오늘]", + "[Tomorrow]" : "[내일]", + "[Yesterday]" : "[어제]", + "Event does not exist" : "일정이 존재하지 않음", + "Delete this occurrence" : "이 일정 삭제", + "Delete this and all future" : "이후 모든 일정 삭제", "Details" : "자세한 정보", + "Invite" : "초대", "Attendees" : "참석자", - "Reminders" : "알림", + "Resources" : "자원", "Close" : "닫기", - "Anniversary" : "기념일", + "Show more details" : "더 자세히 보기", + "Subscribe to {name}" : "{name} 구독", + "Midnight on the day the event starts" : "자정에 일정이 시작됨", + "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["{formattedHourMinute}에 진행되는 일정의 %n일 전"], + "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : [" {formattedHourMinute}에 진행되는 일정의 %n주 전 "], + "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}" : "{year}년 제 {number}주", + "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 year_::_Every %n years_" : ["%n 년 마다"], "_on {weekday}_::_on {weekdays}_" : ["{weekdays}"], "until {untilDate}" : "{untilDate} 까지", - "prev" : "이전", - "next" : "다음", - "next year" : "내년", - "today" : "오늘", + "Untitled event" : "제목없는 일정", + "Untitled task" : "제목없는 작업", + "Please ask your administrator to enable the Tasks App." : "관리자에게 Tasks 앱 활성화를 요청하세요.", + "%n more" : "%n 더", + "No events to display" : "표시할 일정 없음", + "_+%n more_::_+%n more_" : ["+%n 더"], + "No events" : "일정 없음", + "Meeting room" : "회의실", + "Lecture hall" : "강의실", + "Seminar room" : "세미나실", + "Other" : "기타", "When shared show full event" : "전체 일정 공유", "When shared show only busy" : "바쁨/한가함만 공유", "When shared hide this event" : "일정 공유하지 않음", - "Location" : "위치", - "Description" : "설명", + "The visibility of this event in shared calendars." : "공유 달력에서 이 일정의 표시 여부", + "Add a location" : "위치 추가", + "Add a description" : "설명 추가", "Status" : "상태", "Confirmed" : "확인됨", - "Tentative" : "예정됨", "Canceled" : "취소됨", + "Confirmation about the overall status of the event." : "일정의 전반적 상태에 대해 자세히 확인", + "Show as" : "다음으로 표시: ", "Categories" : "분류", + "Categories help you to structure and organize your events." : "카테고리는 일정을 만들고 조직할 때 도움이 됩니다.", + "Search or add categories" : "카테고리를 찾거나 추가하기", + "Add this as a new category" : "새 카테고리로 추가", + "Special color of this event. Overrides the calendar-color." : "이 일정만의 색깔. 달력 색깔을 무시함.", + "Error while sharing file" : "파일 공유하는 도중 오류", + "Chat room for event" : "일정에 대한 채팅방", + "An error occurred, unable to delete the calendar." : "오류가 발생하여 달력을 삭제할 수 없습니다.", "Imported {filename}" : "{filename} 가져옴", + "Meditation" : "명상", + "Relaxing" : "휴식하기", + "Relax" : "휴식", + "Break" : "쉼", + "Commute" : "통근", + "Commuting" : "이동 중", + "Shuttle" : "왕복", "Presentation" : "프레젠테이션", + "Talk" : "토크", + "Camping" : "캠핑하기", + "Camp" : "캠핑", + "Vote" : "투표", "Movie" : "영화", - "Review" : "Review", + "Cinema" : "영화", + "Graduation" : "졸업", + "Review" : "리뷰", + "Baseball" : "야구", + "Meet" : "회의", + "Office" : "사무실", "Mail" : "메일", - "Play" : "재생", + "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" : "골프", - "Global" : "국제" + "Dinner" : "저녁", + "Lunch" : "점심", + "User not found" : "사용자를 찾을 수 없음" },"pluralForm" :"nplurals=1; plural=0;" } \ No newline at end of file diff --git a/l10n/lb.js b/l10n/lb.js index da8b23b32a..9f8588febe 100644 --- a/l10n/lb.js +++ b/l10n/lb.js @@ -3,44 +3,59 @@ OC.L10N.register( { "Cheers!" : "Prost!", "Calendar" : "Kalenner", + "Personal" : "Perséinlech", "Today" : "Haut", "Day" : "Dag", "Week" : "Woch", "Month" : "Mount", - "Download" : "Eroflueden", + "Copy link" : "Link kopéieren", + "Edit" : "Änneren", "Delete" : "Läschen", + "New calendar" : "Neie Kalenner", + "Export" : "Exportéieren", + "Name" : "Numm", + "Deleted" : "Geläscht", + "Restore" : "Zrécksetzen", + "Delete permanently" : "Permanent läschen", "Share link" : "Link deelen", - "Share with users or groups" : "Mat Benotzer oder Gruppen deelen", "can edit" : "kann änneren", - "New calendar" : "Neie Kalenner", + "Share with users or groups" : "Mat Benotzer oder Gruppen deelen", + "Save" : "Späicheren", "Cancel" : "Ofbriechen", "Automatic" : "Automatesch", "Actions" : "Aktiounen", + "Location" : "Uert", + "Description" : "Beschreiwung", + "to" : "bis", + "Add" : "Derbäimaachen", + "Monday" : "Méindeg", + "Tuesday" : "Dënschdeg", + "Wednesday" : "Mëttwoch", + "Thursday" : "Donneschdeg", + "Friday" : "Freideg", + "Saturday" : "Samschdeg", + "Sunday" : "Sonndeg", + "Update" : "Update", + "Your email address" : "Deng Email Adress", "Email" : "Email", "Unknown" : "Onbekannt", + "Repeat" : "Widderhuelen", "never" : "Ni", "after" : "No", - "Repeat" : "Widderhuelen", - "Monday" : "Méindeg", "More" : "Méi", - "Save" : "Späicheren", - "Update" : "Update", - "Personal" : "Perséinlech", + "Global" : "Global", + "Subscribe" : "Umellen", "Details" : "Detailer", "Attendees" : "Participanten", - "Reminders" : "Erennërungen", "Close" : "Zoumaachen", "Week {number} of {year}" : "Woch {Nummer} vum {Joer}", "Daily" : "All Dag", "Weekly" : "All Woch", - "today" : "haut", + "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", - "Location" : "Uert", - "Description" : "Beschreiwung", "Mail" : "Mail", - "Play" : "Ofspillen", - "Global" : "Global" + "Birthday" : "Gebuertsdag" }, "nplurals=2; plural=(n != 1);"); diff --git a/l10n/lb.json b/l10n/lb.json index fac768e3de..973805a065 100644 --- a/l10n/lb.json +++ b/l10n/lb.json @@ -1,44 +1,59 @@ { "translations": { "Cheers!" : "Prost!", "Calendar" : "Kalenner", + "Personal" : "Perséinlech", "Today" : "Haut", "Day" : "Dag", "Week" : "Woch", "Month" : "Mount", - "Download" : "Eroflueden", + "Copy link" : "Link kopéieren", + "Edit" : "Änneren", "Delete" : "Läschen", + "New calendar" : "Neie Kalenner", + "Export" : "Exportéieren", + "Name" : "Numm", + "Deleted" : "Geläscht", + "Restore" : "Zrécksetzen", + "Delete permanently" : "Permanent läschen", "Share link" : "Link deelen", - "Share with users or groups" : "Mat Benotzer oder Gruppen deelen", "can edit" : "kann änneren", - "New calendar" : "Neie Kalenner", + "Share with users or groups" : "Mat Benotzer oder Gruppen deelen", + "Save" : "Späicheren", "Cancel" : "Ofbriechen", "Automatic" : "Automatesch", "Actions" : "Aktiounen", + "Location" : "Uert", + "Description" : "Beschreiwung", + "to" : "bis", + "Add" : "Derbäimaachen", + "Monday" : "Méindeg", + "Tuesday" : "Dënschdeg", + "Wednesday" : "Mëttwoch", + "Thursday" : "Donneschdeg", + "Friday" : "Freideg", + "Saturday" : "Samschdeg", + "Sunday" : "Sonndeg", + "Update" : "Update", + "Your email address" : "Deng Email Adress", "Email" : "Email", "Unknown" : "Onbekannt", + "Repeat" : "Widderhuelen", "never" : "Ni", "after" : "No", - "Repeat" : "Widderhuelen", - "Monday" : "Méindeg", "More" : "Méi", - "Save" : "Späicheren", - "Update" : "Update", - "Personal" : "Perséinlech", + "Global" : "Global", + "Subscribe" : "Umellen", "Details" : "Detailer", "Attendees" : "Participanten", - "Reminders" : "Erennërungen", "Close" : "Zoumaachen", "Week {number} of {year}" : "Woch {Nummer} vum {Joer}", "Daily" : "All Dag", "Weekly" : "All Woch", - "today" : "haut", + "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", - "Location" : "Uert", - "Description" : "Beschreiwung", "Mail" : "Mail", - "Play" : "Ofspillen", - "Global" : "Global" + "Birthday" : "Gebuertsdag" },"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 0000000000..bb01bbaa7d --- /dev/null +++ b/l10n/lo.js @@ -0,0 +1,40 @@ +OC.L10N.register( + "calendar", + { + "Calendar" : "ປະຕິທິນ", + "Confirm" : "ຢືນຢັນ", + "Personal" : "ສ່ວນບຸກຄົນ", + "Today" : "ມື້ນີ້", + "Copy link" : "ສຳເນົາລິງ", + "Edit" : "ແກ້ໄຂ", + "Delete" : "ລຶບ", + "Shared with you by" : "ແບ່ງປັນໂດຍທ່ານ", + "Name" : "ຊື່", + "Deleted" : "ລືບ", + "Restore" : "ການກຸ້ຄຶນ", + "Empty trash bin" : "ລ້າງຖັງຂີ້ເຫຍື່ອ", + "Share link" : "ແບ່ງປັນລິງ", + "Delete share link" : "ລົບລິງແບ່ງປັນ", + "Save" : "ບັນທຶກ", + "Filename" : "ຊື່ຟາຍ", + "Cancel" : "ຍົກເລີກ", + "List view" : "ລາຍການທີ່ຈະເບິ່ງ", + "Duration" : "ໄລຍະ", + "Add" : "ເພີ່ມ", + "Notification" : "ແຈ້ງການ", + "Email" : "ອິເມວ", + "Delete file" : "ລຶບຟາຍ", + "Available" : "ມີຢູ່", + "Not available" : "ບໍ່ມີ", + "Unknown" : "ບໍ່ຮູ້", + "Send email" : "ສົ່ງອີເມວ", + "never" : "ບໍ່ເຄີຍ", + "More" : "ເພີ່ມເຕີມ", + "Details" : "ລາຍລະອຽດ", + "Close" : "ປິດ", + "Daily" : "ລາຍວັນ", + "Weekly" : "ອາທິດ", + "Review" : "ເບິ່ງຄຶນ", + "Mail" : "ຈົດໝາຍ" +}, +"nplurals=1; plural=0;"); diff --git a/l10n/lo.json b/l10n/lo.json new file mode 100644 index 0000000000..8040cf9a3a --- /dev/null +++ b/l10n/lo.json @@ -0,0 +1,38 @@ +{ "translations": { + "Calendar" : "ປະຕິທິນ", + "Confirm" : "ຢືນຢັນ", + "Personal" : "ສ່ວນບຸກຄົນ", + "Today" : "ມື້ນີ້", + "Copy link" : "ສຳເນົາລິງ", + "Edit" : "ແກ້ໄຂ", + "Delete" : "ລຶບ", + "Shared with you by" : "ແບ່ງປັນໂດຍທ່ານ", + "Name" : "ຊື່", + "Deleted" : "ລືບ", + "Restore" : "ການກຸ້ຄຶນ", + "Empty trash bin" : "ລ້າງຖັງຂີ້ເຫຍື່ອ", + "Share link" : "ແບ່ງປັນລິງ", + "Delete share link" : "ລົບລິງແບ່ງປັນ", + "Save" : "ບັນທຶກ", + "Filename" : "ຊື່ຟາຍ", + "Cancel" : "ຍົກເລີກ", + "List view" : "ລາຍການທີ່ຈະເບິ່ງ", + "Duration" : "ໄລຍະ", + "Add" : "ເພີ່ມ", + "Notification" : "ແຈ້ງການ", + "Email" : "ອິເມວ", + "Delete file" : "ລຶບຟາຍ", + "Available" : "ມີຢູ່", + "Not available" : "ບໍ່ມີ", + "Unknown" : "ບໍ່ຮູ້", + "Send email" : "ສົ່ງອີເມວ", + "never" : "ບໍ່ເຄີຍ", + "More" : "ເພີ່ມເຕີມ", + "Details" : "ລາຍລະອຽດ", + "Close" : "ປິດ", + "Daily" : "ລາຍວັນ", + "Weekly" : "ອາທິດ", + "Review" : "ເບິ່ງຄຶນ", + "Mail" : "ຈົດໝາຍ" +},"pluralForm" :"nplurals=1; plural=0;" +} \ No newline at end of file diff --git a/l10n/lt_LT.js b/l10n/lt_LT.js index fe163ef8ef..85f68b26ed 100644 --- a/l10n/lt_LT.js +++ b/l10n/lt_LT.js @@ -5,13 +5,37 @@ OC.L10N.register( "Provided email-address is not valid" : "Pateiktas el. pašto adresas nėra teisingas", "%s has published the calendar »%s«" : "%s paskelbė kalendorių „%s“", "Unexpected error sending email. Please contact your administrator." : "Netikėta klaida siunčiant el. laišką. Susisiekite su savo administratoriumi.", - "Successfully sent email to " : "El. laiškas sėkmingai išsiųstas į ", + "Successfully sent email to %1$s" : "El. laiškas sėkmingai išsiųstas į %1$s", "Hello," : "Sveiki,", "We wanted to inform you that %s has published the calendar »%s«." : "Norėtume informuoti, kad %s paskelbė kalendorių „%s“.", "Open »%s«" : "Atverti „%s“", "Cheers!" : "Sveikinimai!", "Upcoming events" : "Artėjantys įvykiai", + "More events" : "Daugiau įvykių", + "No more events today" : "Šiandien daugiau įvykių nėra", + "No upcoming events" : "Artėjančių įvykių nėra", "Calendar" : "Kalendorius", + "Appointments" : "Susitikimai", + "Confirm" : "Patvirtinti", + "This confirmation link expires in %s hours." : "Ši patvirtinimo nuoroda baigia galioti po %s val.", + "Date:" : "Data:", + "Where:" : "Kur:", + "Comment:" : "Komentaras:", + "Anniversary" : "Metinės", + "Appointment" : "Paskyrimas", + "Business" : "Verslas", + "Education" : "Švietimas", + "Holiday" : "Šventinė diena", + "Meeting" : "Susitikimas", + "Miscellaneous" : "Įvairūs", + "Non-working hours" : "Ne darbo valandos", + "Not in office" : "Ne darbo vietoje", + "Personal" : "Asmeniniai", + "Phone call" : "Telefono skambutis", + "Sick day" : "Nedarbingumo dėl ligos diena", + "Special occasion" : "Ypatinga proga", + "Travel" : "Kelionės", + "Vacation" : "Atostogos", "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", @@ -19,41 +43,66 @@ OC.L10N.register( "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", "Today" : "Šiandiena", "Day" : "Diena", "Week" : "Savaitė", "Month" : "Mėnuo", + "Year" : "Metai", "List" : "Sąrašas", - "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ą", - "Download" : "Atsisiųsti", - "Unshare from me" : "Nustoti bendrinti su manimi", + "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", + "Shared with you by" : "Su jumis bendrina", + "Edit and share calendar" : "Taisyti ir bendrinti kalendorių", + "Edit calendar" : "Taisyti kalendorių", + "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.", "_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"], + "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://)", + "Copy subscription link" : "Kopijuoti prenumeratos nuorodą", + "Copying link …" : "Kopijuojama nuoroda…", + "Copied link" : "Nuoroda nukopijuota", + "Could not copy link" : "Nepavyko nukopijuoti nuorodos", + "Export" : "Eksportuoti", + "Calendar link copied to clipboard." : "Kalendoriaus nuoroda nukopijuota į iškarpinę.", + "Calendar link could not be copied to clipboard." : "Kalendoriaus nuorodos nepavyko nukopijuoti į iškarpinę.", + "Trash bin" : "Šiukšlinė", + "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ę", + "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ę?", + "Could not update calendar order." : "Nepavyko atnaujinti kalendoriaus tvarkos.", + "Copy internal link" : "Kopijuoti vidinę nuorodą", "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", @@ -65,32 +114,28 @@ OC.L10N.register( "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", - "New calendar" : "Naujas kalendorius", - "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://)", - "Could not update calendar order." : "Nepavyko atnaujinti kalendoriaus tvarkos.", + "Share with users or groups" : "Bendrinti su naudotojais ar grupėmis", + "No users or groups" : "Nėra jokių naudotojų ar grupių", + "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"], - "{filename} is an unsupported file-type" : "{filename} nėra palaikomas failo tipas", + "Default attachments location" : "Numatytoji priedų vieta", + "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ą.", "{filename} could not be parsed" : "Nepavyko išnagrinėti {filename}", "No valid files found, aborting import" : "Nerasta jokių tinkamų failų, importavimas nutraukiamas", "Import partially failed. Imported {accepted} out of {total}." : "Importavimas dalinai nepavyko. Importuota {accepted} iš {total}.", - "_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."], "Automatic" : "Automatinė", "Automatic ({detected})" : "Automatinė ({detected})", "New setting was not saved successfully." : "Naujas nustatymas nebuvo sėkmingai įrašytas.", @@ -103,21 +148,67 @@ OC.L10N.register( "Day view" : "Dienos rodinys", "Week view" : "Savaitės rodinys", "Month view" : "Mėnesio rodinys", + "List view" : "Sąrašo rodinys", "Actions" : "Veiksmai", "Create event" : "Sukurti įvykį", "Show shortcuts" : "Rodyti nuorodas", + "Editor" : "Redaktorius", + "Close editor" : "Užverti redaktorių", + "Save edited event" : "Įrašyti taisytą įvykį", + "Delete edited event" : "Ištrinti taisytą įvykį", + "Duplicate event" : "Dubliuoti įvykį", "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į", "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ą", - "Show keyboard shortcuts" : "Rodyti klaviatūros kombinacijas", - "Settings & import" : "Nustatymai ir importavimas", + "Personal availability settings" : "Asmeninio pasiekiamumo nustatymai", + "Show keyboard shortcuts" : "Rodyti sparčiuosius klavišus", + "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", + "_{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"], + "_{duration} day_::_{duration} days_" : ["{duration} diena","{duration} dienos","{duration} dienų","{duration} diena"], + "_{duration} week_::_{duration} weeks_" : ["{duration} savaitė","{duration} savaitės","{duration} savaičių","{duration} savaitė"], + "_{duration} month_::_{duration} months_" : ["{duration} mėnesis","{duration} mėnesiai","{duration} mėnesių","{duration} mėnesis"], + "_{duration} year_::_{duration} years_" : ["{duration} metai","{duration} metai","{duration} metų","{duration} metai"], + "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ą", + "Location" : "Vieta", + "Description" : "Aprašas", + "Visibility" : "Matomumas", + "Duration" : "Trukmė", + "Pick time ranges where appointments are allowed" : "Pasirinkite laiko rėžius, kuomet bus leidžiami susitikimai", + "to" : "iki", + "No times set" : "Nėra nustatytų laikų", + "Add" : "Pridėti", + "Monday" : "Pirmadienis", + "Tuesday" : "Antradienis", + "Wednesday" : "Trečiadienis", + "Thursday" : "Ketvirtadienis", + "Friday" : "Penktadienis", + "Saturday" : "Šeštadienis", + "Sunday" : "Sekmadienis", + "Add time before and after the event" : "Pridėti laiką prieš ir po įvykio", + "Before the event" : "Prieš įvykį", + "After the event" : "Po įvykio", + "Planning restrictions" : "Planavimo apribojimai", + "Create appointment" : "Sukurti susitikimą", + "Edit appointment" : "Taisyti susitikimą", + "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", "before at" : "prieš įvykį, ties", "Notification" : "Pranešimas", "Email" : "Elektroninis laiškas", @@ -131,50 +222,60 @@ OC.L10N.register( "on" : "šiomis dienomis", "at" : ",", "+ Add reminder" : "+ Pridėti priminimą", - "No reminders yet" : "Kol kas priminimų nėra", + "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ė"], + "Add from Files" : "Pridėti iš Failų", + "Delete file" : "Ištrinti failą", + "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ą", + "_{count} attachment_::_{count} attachments_" : ["{count} priedas","{count} priedai","{count} priedų","{count} priedas"], + "Available" : "Prieinamas", + "Checking availability" : "Tikrinamas prieinamumas", "Availability of attendees, resources and rooms" : "Kviestinių, išteklių ir kambarių prieinamumas", + "{organizer} (organizer)" : "{organizer} (organizatorius)", + "Free" : "Laisvas laikas", "Busy (tentative)" : "Užimtas laikas (preliminariai)", "Busy" : "Užimtas laikas", "Out of office" : "Ne darbo vietoje", "Unknown" : "Nežinoma", - "{name} accepted your invitation." : "{name} priėmė jūsų pakvietimą.", - "{name} accepted {organizerName}'s invitation." : "{name} priėmė pakvietimą iš {organizerName}.", - "{name} declined your invitation." : "{name} atmetė jūsų pakvietimą.", - "{name} declined {organizerName}'s invitation." : "{name} atmetė pakvietimą iš {organizerName}.", - "{name} has delegated their invitation." : "{name} delegavo savo pakvietimą.", - "{name} marked their participation as tentative." : "{name} pažymėjo savo dalyvavimą kaip preliminarų.", - "{name} did not respond to your invitation yet." : "{name} kol kas neatsakė į jūsų pakvietimą.", - "{name} did not respond to {organizerName}'s invitation yet." : "{name} kol kas neatsakė į pakvietimą iš {organizerName}.", + "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 e-mail" : "Siųsti el. laišką", + "Send email" : "Siųsti elektroninį laišką", "Chairperson" : "Pirmininkas", "Required participant" : "Būtinas dalyvis", "Optional participant" : "Nebūtinas dalyvis", "Non-participant" : "Ne dalyvis", "Remove attendee" : "Šalinti kviestinį", - "Search for e-mails, users, contacts, resources or rooms" : "Ieškokite el. paštų, naudotojų, adresatų, išteklių ar kambarių", + "Search for emails, users or contacts" : "Ieškoti el. pašto adresų, naudotojų ar adresatų", "No match found" : "Nerasta jokio atitikmens", - "No attendees yet" : "Kol kas kviestinių nėra", "(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ą", - "Can not modify all-day setting for events that are part of a recurrence-set." : "Negalima modifikuoti \"Visos dienos\" nustatymą įvykiams, kurie yra pasikartojimo rinkinyje.", + "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}", + "Repeat" : "Kartoti", "End repeat" : "Užbaigti kartojimą", "Select to end repeat" : "Pasirinkite norėdami užbaigti kartojimą", "never" : "niekada", "on date" : "tam tikrą datą", "after" : "po", "_time_::_times_" : ["karto","kartų","kartų","karto"], - "This event is the recurrence-exception of a recurrence-set. You can not add a recurrence-rule to it." : "Šis įvykis yra pasikartojimo rinkinio pasikartojimo išimtis. Negalite jam pridėti pasikartojimo taisyklės.", + "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", @@ -182,23 +283,36 @@ OC.L10N.register( "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" : "Kartoti", "Repeat every" : "Kartoti kas", "By day of the month" : "Pagal mėnesio dienas", "On the" : "Ties", - "Monday" : "Pirmadienis", + "_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", - "Summary" : "Santrauka", + "No recurrence" : "Be pasikartojimo", "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ų", + "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", + "Room type" : "Kambario tipas", + "Any" : "Bet koks", "More" : "Daugiau", - "Save" : "Įrašyti", - "Update" : "Atnaujinti", "Update this occurrence" : "Atnaujinti šį pasikartojimą", "Update this and all future" : "Atnaujinti šį ir visus būsimus", "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 timezone:" : "Pasirinkite laiko juostą:", + "Please select a time zone:" : "Pasirinkite laiko juostą:", "Pick a time" : "Pasirinkite laiką", "Pick a date" : "Pasirinkite datą", "from {formattedDate}" : "nuo {formattedDate}", @@ -210,40 +324,28 @@ 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ą", - "Type to search timezone" : "Įrašykite laiko juostą", - "Personal" : "Asmeniniai", - "The automatic timezone detection determined your timezone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your timezone 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 timezone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your timezone 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", + "Type to search time zone" : "Rašykite norėdami ieškoti laiko juostos", + "Global" : "Visuotinis", + "Subscribed" : "Prenumeruotas", + "Subscribe" : "Prenumeruoti", + "Time:" : "Laikas:", + "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ą.", "Create a new event" : "Sukurti naują įvykį", "[Today]" : "[Šiandien]", "[Tomorrow]" : "[Rytoj]", "[Yesterday]" : "[Vakar]", + "[Last] dddd" : "[Paskutinis] dddd", "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", - "Reminders" : "Priminimai", + "Resources" : "Ištekliai", "Close" : "Užverti", "Show more details" : "Rodyti išsamiau", "Subscribe to {name}" : "Prenumeruoti {name}", - "Download {name}" : "Atsisiųsti {name}", - "Anniversary" : "Metinės", - "Appointment" : "Paskyrimas", - "Business" : "Verslas", - "Education" : "Švietimas", - "Holiday" : "Šventinė diena", - "Meeting" : "Susitikimas", - "Miscellaneous" : "Įvairūs", - "Non-working hours" : "Ne darbo valandos", - "Not in office" : "Ne darbo vietoje", - "Phone call" : "Telefono skambutis", - "Sick day" : "Nedarbingumo dėl ligos diena", - "Special occasion" : "Ypatinga proga", - "Travel" : "Kelionės", - "Vacation" : "Atostogos", + "Export {name}" : "Eksportuoti {name}", "Midnight on the day the event starts" : "Vidurnaktį, įvykio pradžios dieną", "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n dieną prieš įvykį, ties {formattedHourMinute}","%n dienas prieš įvykį, ties {formattedHourMinute}","%n dienų prieš įvykį, ties {formattedHourMinute}","%n dieną prieš įvykį, ties {formattedHourMinute}"], "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n savaitę prieš įvykį, ties {formattedHourMinute}","%n savaites prieš įvykį, ties {formattedHourMinute}","%n savaičių prieš įvykį, ties {formattedHourMinute}","%n savaitę prieš įvykį, ties {formattedHourMinute}"], @@ -267,72 +369,95 @@ OC.L10N.register( "_Every %n month_::_Every %n months_" : ["Kas %n mėnesį","Kas %n mėnesius","Kas %n mėnesių","Kas %n mėnesį"], "_Every %n year_::_Every %n years_" : ["Kas %n metus","Kas %n metus","Kas %n metų","Kas %n metus"], "_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", "Untitled task" : "Užduotis be pavadinimo", "Please ask your administrator to enable the Tasks App." : "Paprašykite administratoriaus įjungti Užduočių programą.", - "today" : "šiandien", - "list" : "sąrašas", "W" : "Sav.", - "all-day" : "visą dieną", "%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ėžį", + "Meeting room" : "Susitikimų kambarys", + "Lecture hall" : "Paskaitų auditorija", + "Seminar room" : "Seminarų salė", + "Other" : "Kita", "When shared show" : "Bendrinant rodyti", "When shared show full event" : "Bendrinant, rodyti visą įvykio informaciją", "When shared show only busy" : "Bendrinant, rodyti tik kaip užimtą laiką", "When shared hide this event" : "Bendrinant, slėpti šį įvykį", "The visibility of this event in shared calendars." : "Šio įvykio matomumas bendrinamuose kalendoriuose.", - "Location" : "Vieta", "Add a location" : "Pridėti vietą", - "Description" : "Aprašas", "Add a description" : "Pridėti aprašą", "Status" : "Būsena", "Confirmed" : "Patvirtintas", - "Tentative" : "Preliminarus", - "Canceled" : "Atsisakyta", + "Canceled" : "Atsisakytas", "Confirmation about the overall status of the event." : "Patvirtinimas apie bendrą įvykio būseną.", "Show as" : "Rodyti kaip", "Take this event into account when calculating free-busy information." : "Atsižvelgti į šį įvykį apskaičiuojant laisvo ir užimto laiko informaciją.", - "Free" : "Laisvas laikas", "Categories" : "Kategorijos", "Categories help you to structure and organize your events." : "Kategorijos padeda jums struktūrizuoti ir valdyti savo įvykius.", "Search or add categories" : "Ieškoti ar pridėti kategorijas", "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ą.", + "Error while sharing file" : "Klaida bendrinant failą", + "Attachment {fileName} already exists!" : "Priedas „{fileName}“ jau yra!", "Chat room for event" : "Įvykio pokalbių kambarys", + "An error occurred, unable to delete the calendar." : "Įvyko klaida, nepavyko ištrinti kalendorių.", "Imported {filename}" : "Importuotas {filename}", + "This is an event reminder." : "Tai priminimas apie įvykį.", "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", - "Present" : "Pristatymas", + "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", - "Review" : "Peržiūra", "Office" : "Biuras", "Contributor week" : "Bendradarbių savaitė", - "Party" : "Vakarėlis", - "Celebration" : "Šventė", "Mail" : "Paštas", "Soccer" : "Futbolas", "Football" : "Futbolo", "Gaming" : "Žaidimas", - "Play" : "Žaisti", - "Game" : "Žaidimas", "Drive" : "Vairavimas", + "Driving" : "Vairavimas", "Bicycle" : "Dviračiu", "Cycle" : "Dviračiais", "Biking" : "Dviratis", @@ -350,6 +475,7 @@ OC.L10N.register( "Doctor" : "Daktaras", "Health" : "Sveikata", "Dentist" : "Stomatologas", + "Hospital" : "Ligoninė", "Interview" : "Interviu", "Training" : "Treniruotė", "Practice" : "Pratimai", @@ -360,7 +486,10 @@ OC.L10N.register( "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ų", @@ -379,13 +508,18 @@ OC.L10N.register( "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ė", @@ -393,6 +527,7 @@ OC.L10N.register( "Golf" : "Golfas", "Dinner" : "Pietūs", "Lunch" : "Priešpiečiai", - "Global" : "Visuotinis" + "Appointment not found" : "Susitikimas nerastas", + "User not found" : "Naudotojas nerastas" }, "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 452a44f8c5..13ed42b24a 100644 --- a/l10n/lt_LT.json +++ b/l10n/lt_LT.json @@ -3,13 +3,37 @@ "Provided email-address is not valid" : "Pateiktas el. pašto adresas nėra teisingas", "%s has published the calendar »%s«" : "%s paskelbė kalendorių „%s“", "Unexpected error sending email. Please contact your administrator." : "Netikėta klaida siunčiant el. laišką. Susisiekite su savo administratoriumi.", - "Successfully sent email to " : "El. laiškas sėkmingai išsiųstas į ", + "Successfully sent email to %1$s" : "El. laiškas sėkmingai išsiųstas į %1$s", "Hello," : "Sveiki,", "We wanted to inform you that %s has published the calendar »%s«." : "Norėtume informuoti, kad %s paskelbė kalendorių „%s“.", "Open »%s«" : "Atverti „%s“", "Cheers!" : "Sveikinimai!", "Upcoming events" : "Artėjantys įvykiai", + "More events" : "Daugiau įvykių", + "No more events today" : "Šiandien daugiau įvykių nėra", + "No upcoming events" : "Artėjančių įvykių nėra", "Calendar" : "Kalendorius", + "Appointments" : "Susitikimai", + "Confirm" : "Patvirtinti", + "This confirmation link expires in %s hours." : "Ši patvirtinimo nuoroda baigia galioti po %s val.", + "Date:" : "Data:", + "Where:" : "Kur:", + "Comment:" : "Komentaras:", + "Anniversary" : "Metinės", + "Appointment" : "Paskyrimas", + "Business" : "Verslas", + "Education" : "Švietimas", + "Holiday" : "Šventinė diena", + "Meeting" : "Susitikimas", + "Miscellaneous" : "Įvairūs", + "Non-working hours" : "Ne darbo valandos", + "Not in office" : "Ne darbo vietoje", + "Personal" : "Asmeniniai", + "Phone call" : "Telefono skambutis", + "Sick day" : "Nedarbingumo dėl ligos diena", + "Special occasion" : "Ypatinga proga", + "Travel" : "Kelionės", + "Vacation" : "Atostogos", "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", @@ -17,41 +41,66 @@ "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", "Today" : "Šiandiena", "Day" : "Diena", "Week" : "Savaitė", "Month" : "Mėnuo", + "Year" : "Metai", "List" : "Sąrašas", - "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ą", - "Download" : "Atsisiųsti", - "Unshare from me" : "Nustoti bendrinti su manimi", + "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", + "Shared with you by" : "Su jumis bendrina", + "Edit and share calendar" : "Taisyti ir bendrinti kalendorių", + "Edit calendar" : "Taisyti kalendorių", + "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.", "_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"], + "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://)", + "Copy subscription link" : "Kopijuoti prenumeratos nuorodą", + "Copying link …" : "Kopijuojama nuoroda…", + "Copied link" : "Nuoroda nukopijuota", + "Could not copy link" : "Nepavyko nukopijuoti nuorodos", + "Export" : "Eksportuoti", + "Calendar link copied to clipboard." : "Kalendoriaus nuoroda nukopijuota į iškarpinę.", + "Calendar link could not be copied to clipboard." : "Kalendoriaus nuorodos nepavyko nukopijuoti į iškarpinę.", + "Trash bin" : "Šiukšlinė", + "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ę", + "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ę?", + "Could not update calendar order." : "Nepavyko atnaujinti kalendoriaus tvarkos.", + "Copy internal link" : "Kopijuoti vidinę nuorodą", "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", @@ -63,32 +112,28 @@ "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", - "New calendar" : "Naujas kalendorius", - "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://)", - "Could not update calendar order." : "Nepavyko atnaujinti kalendoriaus tvarkos.", + "Share with users or groups" : "Bendrinti su naudotojais ar grupėmis", + "No users or groups" : "Nėra jokių naudotojų ar grupių", + "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"], - "{filename} is an unsupported file-type" : "{filename} nėra palaikomas failo tipas", + "Default attachments location" : "Numatytoji priedų vieta", + "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ą.", "{filename} could not be parsed" : "Nepavyko išnagrinėti {filename}", "No valid files found, aborting import" : "Nerasta jokių tinkamų failų, importavimas nutraukiamas", "Import partially failed. Imported {accepted} out of {total}." : "Importavimas dalinai nepavyko. Importuota {accepted} iš {total}.", - "_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."], "Automatic" : "Automatinė", "Automatic ({detected})" : "Automatinė ({detected})", "New setting was not saved successfully." : "Naujas nustatymas nebuvo sėkmingai įrašytas.", @@ -101,21 +146,67 @@ "Day view" : "Dienos rodinys", "Week view" : "Savaitės rodinys", "Month view" : "Mėnesio rodinys", + "List view" : "Sąrašo rodinys", "Actions" : "Veiksmai", "Create event" : "Sukurti įvykį", "Show shortcuts" : "Rodyti nuorodas", + "Editor" : "Redaktorius", + "Close editor" : "Užverti redaktorių", + "Save edited event" : "Įrašyti taisytą įvykį", + "Delete edited event" : "Ištrinti taisytą įvykį", + "Duplicate event" : "Dubliuoti įvykį", "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į", "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ą", - "Show keyboard shortcuts" : "Rodyti klaviatūros kombinacijas", - "Settings & import" : "Nustatymai ir importavimas", + "Personal availability settings" : "Asmeninio pasiekiamumo nustatymai", + "Show keyboard shortcuts" : "Rodyti sparčiuosius klavišus", + "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", + "_{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"], + "_{duration} day_::_{duration} days_" : ["{duration} diena","{duration} dienos","{duration} dienų","{duration} diena"], + "_{duration} week_::_{duration} weeks_" : ["{duration} savaitė","{duration} savaitės","{duration} savaičių","{duration} savaitė"], + "_{duration} month_::_{duration} months_" : ["{duration} mėnesis","{duration} mėnesiai","{duration} mėnesių","{duration} mėnesis"], + "_{duration} year_::_{duration} years_" : ["{duration} metai","{duration} metai","{duration} metų","{duration} metai"], + "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ą", + "Location" : "Vieta", + "Description" : "Aprašas", + "Visibility" : "Matomumas", + "Duration" : "Trukmė", + "Pick time ranges where appointments are allowed" : "Pasirinkite laiko rėžius, kuomet bus leidžiami susitikimai", + "to" : "iki", + "No times set" : "Nėra nustatytų laikų", + "Add" : "Pridėti", + "Monday" : "Pirmadienis", + "Tuesday" : "Antradienis", + "Wednesday" : "Trečiadienis", + "Thursday" : "Ketvirtadienis", + "Friday" : "Penktadienis", + "Saturday" : "Šeštadienis", + "Sunday" : "Sekmadienis", + "Add time before and after the event" : "Pridėti laiką prieš ir po įvykio", + "Before the event" : "Prieš įvykį", + "After the event" : "Po įvykio", + "Planning restrictions" : "Planavimo apribojimai", + "Create appointment" : "Sukurti susitikimą", + "Edit appointment" : "Taisyti susitikimą", + "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", "before at" : "prieš įvykį, ties", "Notification" : "Pranešimas", "Email" : "Elektroninis laiškas", @@ -129,50 +220,60 @@ "on" : "šiomis dienomis", "at" : ",", "+ Add reminder" : "+ Pridėti priminimą", - "No reminders yet" : "Kol kas priminimų nėra", + "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ė"], + "Add from Files" : "Pridėti iš Failų", + "Delete file" : "Ištrinti failą", + "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ą", + "_{count} attachment_::_{count} attachments_" : ["{count} priedas","{count} priedai","{count} priedų","{count} priedas"], + "Available" : "Prieinamas", + "Checking availability" : "Tikrinamas prieinamumas", "Availability of attendees, resources and rooms" : "Kviestinių, išteklių ir kambarių prieinamumas", + "{organizer} (organizer)" : "{organizer} (organizatorius)", + "Free" : "Laisvas laikas", "Busy (tentative)" : "Užimtas laikas (preliminariai)", "Busy" : "Užimtas laikas", "Out of office" : "Ne darbo vietoje", "Unknown" : "Nežinoma", - "{name} accepted your invitation." : "{name} priėmė jūsų pakvietimą.", - "{name} accepted {organizerName}'s invitation." : "{name} priėmė pakvietimą iš {organizerName}.", - "{name} declined your invitation." : "{name} atmetė jūsų pakvietimą.", - "{name} declined {organizerName}'s invitation." : "{name} atmetė pakvietimą iš {organizerName}.", - "{name} has delegated their invitation." : "{name} delegavo savo pakvietimą.", - "{name} marked their participation as tentative." : "{name} pažymėjo savo dalyvavimą kaip preliminarų.", - "{name} did not respond to your invitation yet." : "{name} kol kas neatsakė į jūsų pakvietimą.", - "{name} did not respond to {organizerName}'s invitation yet." : "{name} kol kas neatsakė į pakvietimą iš {organizerName}.", + "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 e-mail" : "Siųsti el. laišką", + "Send email" : "Siųsti elektroninį laišką", "Chairperson" : "Pirmininkas", "Required participant" : "Būtinas dalyvis", "Optional participant" : "Nebūtinas dalyvis", "Non-participant" : "Ne dalyvis", "Remove attendee" : "Šalinti kviestinį", - "Search for e-mails, users, contacts, resources or rooms" : "Ieškokite el. paštų, naudotojų, adresatų, išteklių ar kambarių", + "Search for emails, users or contacts" : "Ieškoti el. pašto adresų, naudotojų ar adresatų", "No match found" : "Nerasta jokio atitikmens", - "No attendees yet" : "Kol kas kviestinių nėra", "(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ą", - "Can not modify all-day setting for events that are part of a recurrence-set." : "Negalima modifikuoti \"Visos dienos\" nustatymą įvykiams, kurie yra pasikartojimo rinkinyje.", + "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}", + "Repeat" : "Kartoti", "End repeat" : "Užbaigti kartojimą", "Select to end repeat" : "Pasirinkite norėdami užbaigti kartojimą", "never" : "niekada", "on date" : "tam tikrą datą", "after" : "po", "_time_::_times_" : ["karto","kartų","kartų","karto"], - "This event is the recurrence-exception of a recurrence-set. You can not add a recurrence-rule to it." : "Šis įvykis yra pasikartojimo rinkinio pasikartojimo išimtis. Negalite jam pridėti pasikartojimo taisyklės.", + "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", @@ -180,23 +281,36 @@ "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" : "Kartoti", "Repeat every" : "Kartoti kas", "By day of the month" : "Pagal mėnesio dienas", "On the" : "Ties", - "Monday" : "Pirmadienis", + "_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", - "Summary" : "Santrauka", + "No recurrence" : "Be pasikartojimo", "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ų", + "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", + "Room type" : "Kambario tipas", + "Any" : "Bet koks", "More" : "Daugiau", - "Save" : "Įrašyti", - "Update" : "Atnaujinti", "Update this occurrence" : "Atnaujinti šį pasikartojimą", "Update this and all future" : "Atnaujinti šį ir visus būsimus", "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 timezone:" : "Pasirinkite laiko juostą:", + "Please select a time zone:" : "Pasirinkite laiko juostą:", "Pick a time" : "Pasirinkite laiką", "Pick a date" : "Pasirinkite datą", "from {formattedDate}" : "nuo {formattedDate}", @@ -208,40 +322,28 @@ "{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ą", - "Type to search timezone" : "Įrašykite laiko juostą", - "Personal" : "Asmeniniai", - "The automatic timezone detection determined your timezone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your timezone 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 timezone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your timezone 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", + "Type to search time zone" : "Rašykite norėdami ieškoti laiko juostos", + "Global" : "Visuotinis", + "Subscribed" : "Prenumeruotas", + "Subscribe" : "Prenumeruoti", + "Time:" : "Laikas:", + "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ą.", "Create a new event" : "Sukurti naują įvykį", "[Today]" : "[Šiandien]", "[Tomorrow]" : "[Rytoj]", "[Yesterday]" : "[Vakar]", + "[Last] dddd" : "[Paskutinis] dddd", "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", - "Reminders" : "Priminimai", + "Resources" : "Ištekliai", "Close" : "Užverti", "Show more details" : "Rodyti išsamiau", "Subscribe to {name}" : "Prenumeruoti {name}", - "Download {name}" : "Atsisiųsti {name}", - "Anniversary" : "Metinės", - "Appointment" : "Paskyrimas", - "Business" : "Verslas", - "Education" : "Švietimas", - "Holiday" : "Šventinė diena", - "Meeting" : "Susitikimas", - "Miscellaneous" : "Įvairūs", - "Non-working hours" : "Ne darbo valandos", - "Not in office" : "Ne darbo vietoje", - "Phone call" : "Telefono skambutis", - "Sick day" : "Nedarbingumo dėl ligos diena", - "Special occasion" : "Ypatinga proga", - "Travel" : "Kelionės", - "Vacation" : "Atostogos", + "Export {name}" : "Eksportuoti {name}", "Midnight on the day the event starts" : "Vidurnaktį, įvykio pradžios dieną", "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n dieną prieš įvykį, ties {formattedHourMinute}","%n dienas prieš įvykį, ties {formattedHourMinute}","%n dienų prieš įvykį, ties {formattedHourMinute}","%n dieną prieš įvykį, ties {formattedHourMinute}"], "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n savaitę prieš įvykį, ties {formattedHourMinute}","%n savaites prieš įvykį, ties {formattedHourMinute}","%n savaičių prieš įvykį, ties {formattedHourMinute}","%n savaitę prieš įvykį, ties {formattedHourMinute}"], @@ -265,72 +367,95 @@ "_Every %n month_::_Every %n months_" : ["Kas %n mėnesį","Kas %n mėnesius","Kas %n mėnesių","Kas %n mėnesį"], "_Every %n year_::_Every %n years_" : ["Kas %n metus","Kas %n metus","Kas %n metų","Kas %n metus"], "_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", "Untitled task" : "Užduotis be pavadinimo", "Please ask your administrator to enable the Tasks App." : "Paprašykite administratoriaus įjungti Užduočių programą.", - "today" : "šiandien", - "list" : "sąrašas", "W" : "Sav.", - "all-day" : "visą dieną", "%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ėžį", + "Meeting room" : "Susitikimų kambarys", + "Lecture hall" : "Paskaitų auditorija", + "Seminar room" : "Seminarų salė", + "Other" : "Kita", "When shared show" : "Bendrinant rodyti", "When shared show full event" : "Bendrinant, rodyti visą įvykio informaciją", "When shared show only busy" : "Bendrinant, rodyti tik kaip užimtą laiką", "When shared hide this event" : "Bendrinant, slėpti šį įvykį", "The visibility of this event in shared calendars." : "Šio įvykio matomumas bendrinamuose kalendoriuose.", - "Location" : "Vieta", "Add a location" : "Pridėti vietą", - "Description" : "Aprašas", "Add a description" : "Pridėti aprašą", "Status" : "Būsena", "Confirmed" : "Patvirtintas", - "Tentative" : "Preliminarus", - "Canceled" : "Atsisakyta", + "Canceled" : "Atsisakytas", "Confirmation about the overall status of the event." : "Patvirtinimas apie bendrą įvykio būseną.", "Show as" : "Rodyti kaip", "Take this event into account when calculating free-busy information." : "Atsižvelgti į šį įvykį apskaičiuojant laisvo ir užimto laiko informaciją.", - "Free" : "Laisvas laikas", "Categories" : "Kategorijos", "Categories help you to structure and organize your events." : "Kategorijos padeda jums struktūrizuoti ir valdyti savo įvykius.", "Search or add categories" : "Ieškoti ar pridėti kategorijas", "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ą.", + "Error while sharing file" : "Klaida bendrinant failą", + "Attachment {fileName} already exists!" : "Priedas „{fileName}“ jau yra!", "Chat room for event" : "Įvykio pokalbių kambarys", + "An error occurred, unable to delete the calendar." : "Įvyko klaida, nepavyko ištrinti kalendorių.", "Imported {filename}" : "Importuotas {filename}", + "This is an event reminder." : "Tai priminimas apie įvykį.", "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", - "Present" : "Pristatymas", + "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", - "Review" : "Peržiūra", "Office" : "Biuras", "Contributor week" : "Bendradarbių savaitė", - "Party" : "Vakarėlis", - "Celebration" : "Šventė", "Mail" : "Paštas", "Soccer" : "Futbolas", "Football" : "Futbolo", "Gaming" : "Žaidimas", - "Play" : "Žaisti", - "Game" : "Žaidimas", "Drive" : "Vairavimas", + "Driving" : "Vairavimas", "Bicycle" : "Dviračiu", "Cycle" : "Dviračiais", "Biking" : "Dviratis", @@ -348,6 +473,7 @@ "Doctor" : "Daktaras", "Health" : "Sveikata", "Dentist" : "Stomatologas", + "Hospital" : "Ligoninė", "Interview" : "Interviu", "Training" : "Treniruotė", "Practice" : "Pratimai", @@ -358,7 +484,10 @@ "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ų", @@ -377,13 +506,18 @@ "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ė", @@ -391,6 +525,7 @@ "Golf" : "Golfas", "Dinner" : "Pietūs", "Lunch" : "Priešpiečiai", - "Global" : "Visuotinis" + "Appointment not found" : "Susitikimas nerastas", + "User not found" : "Naudotojas nerastas" },"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 aeabf883a5..5e11360c1c 100644 --- a/l10n/lv.js +++ b/l10n/lv.js @@ -7,60 +7,92 @@ OC.L10N.register( "Open »%s«" : "Atvērt »%s«", "Cheers!" : "Priekā!", "Calendar" : "Kalendārs", + "Confirm" : "Apstiprināt", + "Anniversary" : "Gadadiena", + "Personal" : "Personīgs", "A Calendar app for Nextcloud" : "Kalendāra lietotne priekš Nextcloud", "Today" : "Šodien", "Day" : "Diena", "Week" : "Nedēļa", "Month" : "Mēnesis", "List" : "Saraksts", - "Download" : "Lejupielādēt", + "Preview" : "Priekšskatīt", + "Copy link" : "Kopēt saiti", + "Edit" : "Rediģēt", "Delete" : "Dzēst", + "New calendar" : "Jauns kalendārs", + "New calendar with task list" : "Jauns kalendārs ar uzdevumu sarakstu", + "Export" : "Eksportēt", + "Name" : "Vārds", + "Deleted" : "Dzēstie", + "Restore" : "Atjaunot", + "Delete permanently" : "Dzēst pavisam", "Share link" : "Koplietot saiti", + "Copy public link" : "Kopējiet publisko saiti", + "can edit" : "var rediģēt", "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", + "Save" : "Saglabāt", "Filename" : "Datnes nosaukums", "Cancel" : "Atcelt", "Automatic" : "Automātisks", + "List view" : "Saraksta izkārtojums", "Actions" : "Darbības", + "Enable birthday calendar" : "Iespējot dzimšanas dienas kalendāru", "Show week numbers" : "Rādīt nedēļu numurus", - "Settings & import" : "Iestatījumi un imports", + "Personal availability settings" : "Personiskās pieejamības iestatījumi", + "Appointment name" : "Tikšanās nosaukums", + "Location" : "Vieta", + "Description" : "Apraksts", + "to" : "kam", + "Add" : "Pievienot", + "Monday" : "Pirmdiena", + "Tuesday" : "Otrdiena", + "Wednesday" : "Trešdiena", + "Thursday" : "Ceturtdiena", + "Friday" : "Piektdiena", + "Saturday" : "Sestdiena", + "Sunday" : "Svētdiena", + "Update" : "Atjaunināt", + "Your email address" : "Jūsu e-pasta adrese", "Notification" : "Paziņojums", "Email" : "E-pasts", + "Delete file" : "Dzēst datni", + "Choose a file to add as attachment" : "Izvēlēties datni ko pievienot kā pielikumu", + "Available" : "Pieejams", "Busy" : "Aizņemts", "Unknown" : "Nezināms", + "Accept" : "Pieņemt", + "Decline" : "Noraidīt", + "Tentative" : "Mēģinājums", + "Send email" : "Sūtīt e-pastu", "All day" : "Visas dienas", + "Repeat" : "Atkārtot", "never" : "nekad", "after" : "pēc", - "Repeat" : "Atkārtot", - "Monday" : "Pirmdiena", - "Summary" : "Kopsavilkums", + "available" : "pieejams", "More" : "Vairāk", - "Save" : "Saglabāt", - "Update" : "Atjaunināt", - "Personal" : "Personīgs", + "Global" : "Globāls", + "Subscribe" : "Abonēt", + "Create a new event" : "Izveidot jaunu notikumu", "Details" : "Detaļas", "Attendees" : "Apmeklētāji", - "Reminders" : "Atgādinājumi", + "Resources" : "Resursi", "Close" : "Aizvērt", - "Anniversary" : "Gadadiena", "Week {number} of {year}" : "{number} nedēļa no {year}", "Daily" : "Katru dienu", "Weekly" : "Katru nedēļu", - "today" : "šodien", + "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", - "Location" : "Vieta", - "Description" : "Apraksts", "Status" : "Status", "Confirmed" : "Apstiprināts", - "Tentative" : "Mēģinājums", "Categories" : "Kategorijas", "Presentation" : "Prezentācija", + "Talk" : "Runāt", "Mail" : "E-pasts", - "Play" : "Atskaņot", - "Global" : "Globāls" + "Birthday" : "Dzimšanas diena", + "User not found" : "Lietotājs nav atrasts" }, "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 63835fb1da..eeee5904ab 100644 --- a/l10n/lv.json +++ b/l10n/lv.json @@ -5,60 +5,92 @@ "Open »%s«" : "Atvērt »%s«", "Cheers!" : "Priekā!", "Calendar" : "Kalendārs", + "Confirm" : "Apstiprināt", + "Anniversary" : "Gadadiena", + "Personal" : "Personīgs", "A Calendar app for Nextcloud" : "Kalendāra lietotne priekš Nextcloud", "Today" : "Šodien", "Day" : "Diena", "Week" : "Nedēļa", "Month" : "Mēnesis", "List" : "Saraksts", - "Download" : "Lejupielādēt", + "Preview" : "Priekšskatīt", + "Copy link" : "Kopēt saiti", + "Edit" : "Rediģēt", "Delete" : "Dzēst", + "New calendar" : "Jauns kalendārs", + "New calendar with task list" : "Jauns kalendārs ar uzdevumu sarakstu", + "Export" : "Eksportēt", + "Name" : "Vārds", + "Deleted" : "Dzēstie", + "Restore" : "Atjaunot", + "Delete permanently" : "Dzēst pavisam", "Share link" : "Koplietot saiti", + "Copy public link" : "Kopējiet publisko saiti", + "can edit" : "var rediģēt", "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", + "Save" : "Saglabāt", "Filename" : "Datnes nosaukums", "Cancel" : "Atcelt", "Automatic" : "Automātisks", + "List view" : "Saraksta izkārtojums", "Actions" : "Darbības", + "Enable birthday calendar" : "Iespējot dzimšanas dienas kalendāru", "Show week numbers" : "Rādīt nedēļu numurus", - "Settings & import" : "Iestatījumi un imports", + "Personal availability settings" : "Personiskās pieejamības iestatījumi", + "Appointment name" : "Tikšanās nosaukums", + "Location" : "Vieta", + "Description" : "Apraksts", + "to" : "kam", + "Add" : "Pievienot", + "Monday" : "Pirmdiena", + "Tuesday" : "Otrdiena", + "Wednesday" : "Trešdiena", + "Thursday" : "Ceturtdiena", + "Friday" : "Piektdiena", + "Saturday" : "Sestdiena", + "Sunday" : "Svētdiena", + "Update" : "Atjaunināt", + "Your email address" : "Jūsu e-pasta adrese", "Notification" : "Paziņojums", "Email" : "E-pasts", + "Delete file" : "Dzēst datni", + "Choose a file to add as attachment" : "Izvēlēties datni ko pievienot kā pielikumu", + "Available" : "Pieejams", "Busy" : "Aizņemts", "Unknown" : "Nezināms", + "Accept" : "Pieņemt", + "Decline" : "Noraidīt", + "Tentative" : "Mēģinājums", + "Send email" : "Sūtīt e-pastu", "All day" : "Visas dienas", + "Repeat" : "Atkārtot", "never" : "nekad", "after" : "pēc", - "Repeat" : "Atkārtot", - "Monday" : "Pirmdiena", - "Summary" : "Kopsavilkums", + "available" : "pieejams", "More" : "Vairāk", - "Save" : "Saglabāt", - "Update" : "Atjaunināt", - "Personal" : "Personīgs", + "Global" : "Globāls", + "Subscribe" : "Abonēt", + "Create a new event" : "Izveidot jaunu notikumu", "Details" : "Detaļas", "Attendees" : "Apmeklētāji", - "Reminders" : "Atgādinājumi", + "Resources" : "Resursi", "Close" : "Aizvērt", - "Anniversary" : "Gadadiena", "Week {number} of {year}" : "{number} nedēļa no {year}", "Daily" : "Katru dienu", "Weekly" : "Katru nedēļu", - "today" : "šodien", + "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", - "Location" : "Vieta", - "Description" : "Apraksts", "Status" : "Status", "Confirmed" : "Apstiprināts", - "Tentative" : "Mēģinājums", "Categories" : "Kategorijas", "Presentation" : "Prezentācija", + "Talk" : "Runāt", "Mail" : "E-pasts", - "Play" : "Atskaņot", - "Global" : "Globāls" + "Birthday" : "Dzimšanas diena", + "User not found" : "Lietotājs nav atrasts" },"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 9a03a524ae..490ffbccc4 100644 --- a/l10n/mk.js +++ b/l10n/mk.js @@ -1,58 +1,137 @@ 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 " : "Успешно испратена е-пошта до", + "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" : "Престојни настани", + "More events" : "Повеќе настани", + "No more events today" : "Нема настани за денес", + "No upcoming 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" : "Потврди", + "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) закажа состанок со вас.", + "Anniversary" : "Годишнина", + "Appointment" : "Состанок", + "Business" : "Бизнис", + "Education" : "Образование", + "Holiday" : "Празник", + "Meeting" : "Средба", + "Miscellaneous" : "Разно", + "Non-working hours" : "Неработни часови", + "Not in office" : "Не во канцеларија", + "Personal" : "Лично", + "Phone call" : "Телефонски повик", + "Sick day" : "Боледување", + "Special occasion" : "Посебна пригода", + "Travel" : "Патување", + "Vacation" : "Одмор", + "Custom Categories" : "Прилагорени категории", + "Collaborative Tags" : "Колаборативни ознаки", + "Standard Categories" : "Стандардни категории", "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" : "+ Нов настан", + "Event" : "Настан", + "Create new event" : "Креирај нов настан", "Today" : "Денес", "Day" : "Ден", "Week" : "Недела", "Month" : "Месец", + "Year" : "Година", "List" : "Лист", - "Untitled calendar" : "Неименуван календар", - "Edit name" : "Уреди име", - "Saving name …" : "Зачувување име …", - "Edit color" : "Уреди бои", - "Saving color …" : "Зачувување боја …", - "Copy private link" : "Копирај приватен линк", - "Download" : "Преземи", - "Unshare from me" : "Не споделувај со мене", + "Preview" : "Преглед", + "Copy link" : "Копирај линк", + "Edit" : "Уреди", "Delete" : "Избриши", + "Appointment link was copied to clipboard" : "Линкот за состанокот е копиран во клипборд", + "Appointment link could not be copied to clipboard" : "Линкот за состанокот неможе за се копира во клипборд", + "Add new" : "Додади нов", + "Untitled calendar" : "Неименуван календар", + "Shared with you by" : "Споделено со вас од", + "Edit and share calendar" : "Уреди и сподели календар", + "Edit calendar" : "Уреди календар", + "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." : "Настана грешка, неможе да се променат боите на календарот.", "_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} секунди"], + "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" : "Додади календар со државни празници", + "An error occurred, unable to create the calendar." : "Настана грешка, неможе да се креира календар.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Внесете валиден линк (започнувајчи со http://, https://, webcal://, или webcals://)", + "Copy subscription link" : "Копирај линк за претплата", + "Copying link …" : "Копирање линк …", + "Copied link" : "Линкот е копиран", + "Could not copy link" : "Неможе да се копира линкот", + "Export" : "Извези", + "Calendar link copied to clipboard." : "Линк до календарот е копиран во клипборд.", + "Calendar link could not be copied to clipboard." : "Линк до календарот неможе да се копира во клипборд.", + "Trash bin" : "Корпа за отпадоци", + "Loading deleted items." : "Вчитување на избришаните работи.", + "You do not have any deleted items." : "Немате избришани работи.", + "Name" : "Име", + "Deleted" : "Избришани", + "Restore" : "Врати", + "Delete permanently" : "Избриши", + "Empty trash bin" : "Испразни ја корпата со отпадоци", + "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?" : "Дали навистина сакате да ја испразните kорпаta за отпадоци?", + "_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." : "Неможе да се ажурира редоследот на календарите.", + "Internal link" : "Внатрешен линк", + "A private link that can be used with external clients" : "Приватен линк што може да се користи со надворешни клиенти", + "Copy internal link" : "Копирај внатрешен линк", "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" : "Кодот е копиран", @@ -64,32 +143,32 @@ OC.L10N.register( "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" : "Нема корисници или групи", "can edit" : "може да се измени", "Unshare with {displayName}" : "Не споделувај со {displayName}", - "An error occurred, unable to change the unshare the calendar." : "Настана грешка, неможе да се промени споделувањето на календарот.", + "An error occurred while unsharing 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://)", - "Could not update calendar order." : "Неможе да се ажурира редоследот на календарите.", + "Share with users or groups" : "Сподели со корисници или групи", + "No users or groups" : "Нема корисници или групи", + "Calendar name …" : "Име на календар ...", + "Share calendar" : "Сподели календар", + "Unshare from me" : "Не споделувај со мене", + "Save" : "Зачувај", + "Failed to save calendar name and color" : "Неуспешно зачувување на име на календар и боја", "Import calendars" : "Увези календари", "Please select a calendar to import into …" : "Изберете календар за да направите увоз во него …", "Filename" : "Име на датотека", "Calendar to import into" : "Календар за да направите увоз во него", "Cancel" : "Откажи", "_Import calendar_::_Import calendars_" : ["Увези календар","Увези календари"], - "{filename} is an unsupported file-type" : "Видот на датотеката {filename} не е поддржана", + "Default attachments location" : "Стандардна локација за прилози", + "Select the default location for attachments" : "Избери стандардна локација за прилози", + "Invalid location selected" : "Избрана невалидна локација", + "Attachments folder successfully saved." : "Папката за прилози е успешно зачувана.", + "Error on saving attachments folder." : "Грешка при зачувување на папка за прилози.", "{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 настани."], + "_Successfully imported %n event_::_Successfully imported %n events_" : ["Успешно увезен 1 настан","Успешно увезени %n настани"], "Automatic" : "Автоматски", "Automatic ({detected})" : "Автоматски ({detected})", "New setting was not saved successfully." : "Неуспешно зачувување на промените.", @@ -102,21 +181,83 @@ 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" : "Дуплицирај настај", "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 reminder" : "Стандарден потсетник", "Copy primary CalDAV address" : "Копирај примарна CalDAV адреса", "Copy iOS/macOS CalDAV address" : "Копирај iOS/macOS CalDAV адреса", + "Personal availability settings" : "Параметри за лична достапност", "Show keyboard shortcuts" : "Прикажи кратенки преку тастатура", - "Settings & import" : "Параметри & импорт", + "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} 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" : "Приватен - пристап само со безбедносен линк", + "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" : "Вторник", + "Wednesday" : "Среда", + "Thursday" : "Четврток", + "Friday" : "Петок", + "Saturday" : "Сабота", + "Sunday" : "Недела", + "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" : "Уреди термин", + "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" : "Потсетник", "before at" : "пред", "Notification" : "Известување", "Email" : "Е-пошта", @@ -130,77 +271,118 @@ OC.L10N.register( "on" : "во", "at" : "во", "+ Add reminder" : "+ Додади потсетник", + "Add reminder" : "Додади потсетник", "_second_::_seconds_" : ["секунда","секунди"], "_minute_::_minutes_" : ["минута","минути"], "_hour_::_hours_" : ["час","часа"], "_day_::_days_" : ["ден","дена"], "_week_::_weeks_" : ["недела","недели"], - "No reminders yet" : "Сеуште нема потсетници", + "No attachments" : "Нема прилози", + "Add from Files" : "Додади од датотеките", + "Upload from device" : "Прикачи од уред", + "Delete file" : "Избриши датотека", + "Choose a file to add as attachment" : "Избери датотека за да додадете прилог", + "Choose a file to share as a link" : "Избери датотека за да се сподели како линк", + "Attachment {name} already exist!" : "Прилогот {name} веќе постои!", + "_{count} attachment_::_{count} attachments_" : ["{count} прилог","{count} прилози"], + "Invitation accepted" : "Поканата е прифатена", + "Available" : "Достапно", + "Suggested" : "Предложено", + "Participation marked as tentative" : "Учеството е означено како пробно", + "Accepted {organizerName}'s invitation" : "Прифатена е покана од {organizerName}", + "Not available" : "Недостапно", + "Invitation declined" : "Поканата е одбиена", + "Declined {organizerName}'s invitation" : "Одбиена е покана од {organizerName}", + "Invitation is delegated" : "Поканата е делегирана", + "Checking availability" : "Проверување на достапност", + "Invitation sent" : "Испратена е покана", + "Has not responded to {organizerName}'s invitation yet" : "Сè уште не одговорил на поканата на {organizerName}", "Availability of attendees, resources and rooms" : "Достапност на присутните, ресурси и соби", + "{organizer} (organizer)" : "{organizer} (organizer)", + "Free" : "Слободен", "Busy (tentative)" : "Зафатен (привремено)", "Busy" : "Зафатен", "Out of office" : "Надвор од канцеларија", "Unknown" : "Непознат", - "{name} accepted your invitation." : "{name} ја прифати вашата покана.", - "{name} accepted {organizerName}'s invitation." : "{name} ја прифати поканата од {organizerName}.", - "{name} declined your invitation." : "{name} ја одби вашата покана.", - "{name} declined {organizerName}'s invitation." : "{name} ја одби поканата од {organizerName}.", - "{name} has delegated their invitation." : "{name} одговори на неговата покана.", - "{name} marked their participation as tentative." : "{name} го означи неговото учество како пробно.", - "{name} did not respond to your invitation yet." : "{name} сеуште нема одговорено на поканата.", - "{name} did not respond to {organizerName}'s invitation yet." : "{name} сеуште нема одговорено на поканата од {organizerName}.", + "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" : "Прикажи ги зафатените термини", + "No attendees yet" : "Сè уште нема присутни", + "Successfully appended link to talk room to location." : "Успешно е додадена врска од собата за разговор во локација.", "Successfully appended link to talk room to description." : "Успешно додаден линк од собата за разговор во описот.", "Error creating Talk room" : "Грешка при креирање на соба за разговор", - "Send e-mail" : "Испрати пошта", + "Send email" : "Испрати е-пошта", "Chairperson" : "Претседавач", "Required participant" : "Задолжителен учесник", "Optional participant" : "Незадолжителен учесник", "Non-participant" : "Не-учесник", "Remove attendee" : "Откажи присутност", - "Search for e-mails, users, contacts, resources or rooms" : "Пребарувај за е-пошти, корисници, контакти, ресурси или соби", + "Search for emails, users or contacts" : "Пребарување на е-пошта адреси, корисници или контакти", "No match found" : "Нема совпаѓања", - "No attendees yet" : "Сè уште нема присутни", "(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}", + "Repeat" : "Повтори", "End repeat" : "Крај на повторувањето", "Select to end repeat" : "Избери крај на повторувањето", "never" : "никогаш", "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" : "последен", - "Repeat" : "Повтори", + "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Промените на правилото за повторување ќе важат само за оваа и за сите идни појави.", "Repeat every" : "Повтори секој", "By day of the month" : "По ден во месецот", "On the" : "На", "_month_::_months_" : ["месец","месеци"], "_year_::_years_" : ["година","години"], - "Monday" : "Понеделник", "weekday" : "недели", "weekend day" : "ден од викенд", - "Summary" : "Резиме", + "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" : "Предлози", + "No rooms or resources yet" : "Сè уште нема простории или ресурси", + "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" : "недостапно", + "Room type" : "Вид на соба", + "Any" : "Било кој", + "Minimum seating capacity" : "Минимален капацитет за седење", "More" : "Повеќе", - "Save" : "Зачувај", - "Update" : "Ажурирај", "Update this occurrence" : "Ажурирајте ја оваа можност", "Update this and all future" : "Ажурирајте го овој и сите во иднина", "Public calendar does not exist" : "Јавниот календар не постои", "Maybe the share was deleted or has expired?" : "Можеби споделувањето е избришано ики рокот му е поминат?", - "Please select a timezone:" : "Изберете временска зона:", + "Please select a time zone:" : "Изберете временска зона:", "Pick a time" : "Избери време", "Pick a date" : "Избери датум", "from {formattedDate}" : "од {formattedDate}", @@ -212,41 +394,52 @@ OC.L10N.register( "{formattedDate} at {formattedTime}" : "{formattedDate} во {formattedTime}", "Please enter a valid date" : "Внесете валиден датум", "Please enter a valid date and time" : "Внесете валиден датум и време", - "Type to search timezone" : "Пребарај временски зони", - "Personal" : "Лично", - "The automatic timezone detection determined your timezone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your timezone manually in the calendar settings." : "Автоматското откривање на временската зона утврди дека вашата временска зона е UTC.\nОва е најверојатно резултат на безбедносните мерки на вашиот веб прелистувач\nПоставете ја вашата временска зона во подесувањата за календарот.", - "Your configured timezone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your timezone in the settings and report this issue." : "Вашата временска зона ({timezoneId}) не е пронајдена. Поставена е (Координирано универзално време) UTC.\nПоставете ја вашата временска зона во подесувањата за календарот или пријавете го овој проблем.", - "No more events today" : "Нема настани за денес", - "No upcoming events" : "Нема престојни настани", + "Type to search time zone" : "Пребарај временски зони", + "Global" : "Глобално", + "Public holiday calendars" : "Календар со државни празници", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Календарите за државни празници се обезбедени од Thunderbird. Податоците од календарот ќе се преземат од {website}", + "By {authors}" : "Од {authors}", + "Subscribed" : "Претплатени", + "Subscribe" : "Претплата", + "Holidays in {region}" : "Празници во {region}", + "An error occurred, unable to create the public holiday calendar." : "Настана грешка, неможе да се креира календар за државни празници.", + "Select 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}", + "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Поставете ја вашата временска зона во подесувањата за календарот или пријавете го овој проблем.", "Create a new event" : "Креирајте нов настан", "[Today]" : "[Денес]", "[Tomorrow]" : "[Утре]", "[Yesterday]" : "[Вчера]", "[Last] dddd" : "[Последна] dddd", "Event does not exist" : "Настанот не постои", + "Duplicate" : "Дуплирај", "Delete this occurrence" : "Избришете ја оваа можност", "Delete this and all future" : "Избришете го овој и сите во иднина", "Details" : "Детали", + "Managing shared access" : "Управување со споделен пристап", + "Deny access" : "Забрани пристап", + "Invite" : "Покани", "Attendees" : "Присутни", - "Reminders" : "Потсетници", + "Resources" : "Ресурси", + "_User requires access to your file_::_Users require access to your file_" : ["Корисник бара пристап до вашата датотека","Корисници бараат пристап до вашата датотека"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Прилог за кој е потребен пристап","Прилози за кои е потребен пристап"], "Close" : "Затвори", "Show more details" : "Прикажи повеќе детали", "Subscribe to {name}" : "Претплатете се на {name}", - "Download {name}" : "Преземи {name}", - "Anniversary" : "Годишнина", - "Appointment" : "Назначување", - "Business" : "Бизнис", - "Education" : "Образование", - "Holiday" : "Празник", - "Meeting" : "Средба", - "Miscellaneous" : "Разно", - "Non-working hours" : "Неработни часови", - "Not in office" : "Не во канцеларија", - "Phone call" : "Телефонски повик", - "Sick day" : "Боледување", - "Special occasion" : "Посебна пригода", - "Travel" : "Патување", - "Vacation" : "Одмор", + "Export {name}" : "Извези {name}", "Midnight on the day the event starts" : "На полноќ на денот кога започнува настанот", "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["Еден ден пред настанот во {formattedHourMinute}","%n дена пред настанот во {formattedHourMinute}"], "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["Една недела пред настанот во {formattedHourMinute}","%n недели пред настанот во {formattedHourMinute}"], @@ -279,14 +472,7 @@ OC.L10N.register( "Untitled event" : "Неименуван настан", "Untitled task" : "Неименувана задача", "Please ask your administrator to enable the Tasks App." : "Замолете го сервер администраторот да ја овозможи апликацијата задачи.", - "prev" : "предходна", - "next" : "следна", - "prev year" : "предходна година", - "next year" : "следниот месец", - "today" : "денес", - "list" : "лист", "W" : "Н", - "all-day" : "Цели денови", "%n more" : "%n други", "No events to display" : "Нема настани за приказ", "_+%n more_::_+%n more_" : ["+%n друг","+%n други"], @@ -294,59 +480,95 @@ OC.L10N.register( "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" : "Семинарска сала", + "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." : "Видливост на овој настан во споделен календар.", - "Location" : "Локација", "Add a location" : "Додади локација", - "Description" : "Опис", "Add a description" : "Додади опис", "Status" : "Статус", "Confirmed" : "Потврдено", - "Tentative" : "Пробно", "Canceled" : "Откажано", "Confirmation about the overall status of the event." : "Потврда за целокупниот статус на настанот.", "Show as" : "Прикажи како", "Take this event into account when calculating free-busy information." : "Го има во предвид овој настан при пресметување на информации за слободен-зафатен.", - "Free" : "Слободен", "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" : "Настана грешка при преземање на информации од датотека", "Chat room for event" : "Соба за разговор за настанот", + "An error occurred, unable to delete the calendar." : "Настана грешка, неможе да се избрише календарот.", "Imported {filename}" : "Импортирано {filename}", + "This is an event reminder." : "Ова е потсетник за настан.", "Meditation" : "Медитација", "Relaxing" : "Релаксирање", "Relax" : "Опуштање", + "Break" : "Пауза", + "Commute" : "Патување", + "Commuting" : "На пат", + "Shuttle" : "Шатл", + "Invoice" : "Фактура", + "Finance" : "Финансии", + "Bank" : "Банка", + "Money" : "Пари", + "Wedding" : "Свадба", + "Dog" : "Куче", + "Concert" : "Концерт", + "Festival" : "Фестивал", + "Theater" : "Наставник", + "Theatre" : "Театар", "Presentation" : "Презентација", - "Present" : "Тековно", + "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" : "Ретроспектива", - "Review" : "Преглед", "Office" : "Канцеларија", - "Party" : "Забава", - "Celebration" : "Прослава", + "Contributor week" : "Недела на соработници", "Mail" : "Електронска пошта", "Soccer" : "Фудбал", "Football" : "Фудбал", "Gaming" : "Играње", - "Play" : "Слајдшоу", - "Game" : "Игра", "Drive" : "Возење", + "Driving" : "Возење", "Bicycle" : "Велосипед", "Cycle" : "Циклус", + "Cycling" : "Возење велосипед", "Biking" : "Велосипедизам", + "Bike" : "Велосипед", "Podcast" : "Подкаст", "Basketball" : "Кошарка", "Fishing" : "Риболов", @@ -357,10 +579,12 @@ OC.L10N.register( "Museum" : "Музеј", "Pilates" : "Пилатес", "Park" : "Парк", + "Walk" : "Пешачење", "Studying" : "Учење", "Doctor" : "Доктор", "Health" : "Здравје", "Dentist" : "Заболекар", + "Hospital" : "Болница", "Interview" : "Интервју", "Training" : "Тренинг", "Practice" : "Пракса", @@ -371,7 +595,10 @@ OC.L10N.register( "Gym" : "Теретана", "Barber" : "Бербер", "Haircut" : "Пострижување", + "Hairdresser" : "Фризер", "Exam" : "Испит", + "Written test" : "Писмен тест", + "Oral test" : "Усно тестирање", "Working" : "Работа", "New Years Eve" : "Новогодишна ноќ", "NYE" : "Нова година", @@ -390,19 +617,27 @@ OC.L10N.register( "Conference" : "Конференција", "Pizza" : "Пица", "Travelling" : "Патување", + "Trip" : "Патување", "Journey" : "Патување", "Collaborate" : "Соработка", + "Pair" : "Спари", "Lecture" : "Читање", "Seminar" : "Семинар", + "Teaching" : "Настава", "Photograph" : "Фотографија", + "Party" : "Забава", + "Celebration" : "Прослава", "Celebrate" : "Прослава", + "Birthday" : "Роденден", "Shopping" : "Купување", + "Groceries" : "Намирници", "Skate" : "Скејтбординг", "Skateboard" : "Скејтбординг", "Wine tasting" : "Дегустација на вино", "Golf" : "Голф", "Dinner" : "Вечера", "Lunch" : "Ручек", - "Global" : "Глобално" + "Appointment not found" : "Терминот не е пронајден", + "User not found" : "Корисникот не е пронајден" }, "nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;"); diff --git a/l10n/mk.json b/l10n/mk.json index 687fd3638d..6142faca74 100644 --- a/l10n/mk.json +++ b/l10n/mk.json @@ -1,56 +1,135 @@ { "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 " : "Успешно испратена е-пошта до", + "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" : "Престојни настани", + "More events" : "Повеќе настани", + "No more events today" : "Нема настани за денес", + "No upcoming 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" : "Потврди", + "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) закажа состанок со вас.", + "Anniversary" : "Годишнина", + "Appointment" : "Состанок", + "Business" : "Бизнис", + "Education" : "Образование", + "Holiday" : "Празник", + "Meeting" : "Средба", + "Miscellaneous" : "Разно", + "Non-working hours" : "Неработни часови", + "Not in office" : "Не во канцеларија", + "Personal" : "Лично", + "Phone call" : "Телефонски повик", + "Sick day" : "Боледување", + "Special occasion" : "Посебна пригода", + "Travel" : "Патување", + "Vacation" : "Одмор", + "Custom Categories" : "Прилагорени категории", + "Collaborative Tags" : "Колаборативни ознаки", + "Standard Categories" : "Стандардни категории", "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" : "+ Нов настан", + "Event" : "Настан", + "Create new event" : "Креирај нов настан", "Today" : "Денес", "Day" : "Ден", "Week" : "Недела", "Month" : "Месец", + "Year" : "Година", "List" : "Лист", - "Untitled calendar" : "Неименуван календар", - "Edit name" : "Уреди име", - "Saving name …" : "Зачувување име …", - "Edit color" : "Уреди бои", - "Saving color …" : "Зачувување боја …", - "Copy private link" : "Копирај приватен линк", - "Download" : "Преземи", - "Unshare from me" : "Не споделувај со мене", + "Preview" : "Преглед", + "Copy link" : "Копирај линк", + "Edit" : "Уреди", "Delete" : "Избриши", + "Appointment link was copied to clipboard" : "Линкот за состанокот е копиран во клипборд", + "Appointment link could not be copied to clipboard" : "Линкот за состанокот неможе за се копира во клипборд", + "Add new" : "Додади нов", + "Untitled calendar" : "Неименуван календар", + "Shared with you by" : "Споделено со вас од", + "Edit and share calendar" : "Уреди и сподели календар", + "Edit calendar" : "Уреди календар", + "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." : "Настана грешка, неможе да се променат боите на календарот.", "_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} секунди"], + "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" : "Додади календар со државни празници", + "An error occurred, unable to create the calendar." : "Настана грешка, неможе да се креира календар.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Внесете валиден линк (започнувајчи со http://, https://, webcal://, или webcals://)", + "Copy subscription link" : "Копирај линк за претплата", + "Copying link …" : "Копирање линк …", + "Copied link" : "Линкот е копиран", + "Could not copy link" : "Неможе да се копира линкот", + "Export" : "Извези", + "Calendar link copied to clipboard." : "Линк до календарот е копиран во клипборд.", + "Calendar link could not be copied to clipboard." : "Линк до календарот неможе да се копира во клипборд.", + "Trash bin" : "Корпа за отпадоци", + "Loading deleted items." : "Вчитување на избришаните работи.", + "You do not have any deleted items." : "Немате избришани работи.", + "Name" : "Име", + "Deleted" : "Избришани", + "Restore" : "Врати", + "Delete permanently" : "Избриши", + "Empty trash bin" : "Испразни ја корпата со отпадоци", + "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?" : "Дали навистина сакате да ја испразните kорпаta за отпадоци?", + "_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." : "Неможе да се ажурира редоследот на календарите.", + "Internal link" : "Внатрешен линк", + "A private link that can be used with external clients" : "Приватен линк што може да се користи со надворешни клиенти", + "Copy internal link" : "Копирај внатрешен линк", "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" : "Кодот е копиран", @@ -62,32 +141,32 @@ "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" : "Нема корисници или групи", "can edit" : "може да се измени", "Unshare with {displayName}" : "Не споделувај со {displayName}", - "An error occurred, unable to change the unshare the calendar." : "Настана грешка, неможе да се промени споделувањето на календарот.", + "An error occurred while unsharing 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://)", - "Could not update calendar order." : "Неможе да се ажурира редоследот на календарите.", + "Share with users or groups" : "Сподели со корисници или групи", + "No users or groups" : "Нема корисници или групи", + "Calendar name …" : "Име на календар ...", + "Share calendar" : "Сподели календар", + "Unshare from me" : "Не споделувај со мене", + "Save" : "Зачувај", + "Failed to save calendar name and color" : "Неуспешно зачувување на име на календар и боја", "Import calendars" : "Увези календари", "Please select a calendar to import into …" : "Изберете календар за да направите увоз во него …", "Filename" : "Име на датотека", "Calendar to import into" : "Календар за да направите увоз во него", "Cancel" : "Откажи", "_Import calendar_::_Import calendars_" : ["Увези календар","Увези календари"], - "{filename} is an unsupported file-type" : "Видот на датотеката {filename} не е поддржана", + "Default attachments location" : "Стандардна локација за прилози", + "Select the default location for attachments" : "Избери стандардна локација за прилози", + "Invalid location selected" : "Избрана невалидна локација", + "Attachments folder successfully saved." : "Папката за прилози е успешно зачувана.", + "Error on saving attachments folder." : "Грешка при зачувување на папка за прилози.", "{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 настани."], + "_Successfully imported %n event_::_Successfully imported %n events_" : ["Успешно увезен 1 настан","Успешно увезени %n настани"], "Automatic" : "Автоматски", "Automatic ({detected})" : "Автоматски ({detected})", "New setting was not saved successfully." : "Неуспешно зачувување на промените.", @@ -100,21 +179,83 @@ "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" : "Дуплицирај настај", "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 reminder" : "Стандарден потсетник", "Copy primary CalDAV address" : "Копирај примарна CalDAV адреса", "Copy iOS/macOS CalDAV address" : "Копирај iOS/macOS CalDAV адреса", + "Personal availability settings" : "Параметри за лична достапност", "Show keyboard shortcuts" : "Прикажи кратенки преку тастатура", - "Settings & import" : "Параметри & импорт", + "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} 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" : "Приватен - пристап само со безбедносен линк", + "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" : "Вторник", + "Wednesday" : "Среда", + "Thursday" : "Четврток", + "Friday" : "Петок", + "Saturday" : "Сабота", + "Sunday" : "Недела", + "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" : "Уреди термин", + "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" : "Потсетник", "before at" : "пред", "Notification" : "Известување", "Email" : "Е-пошта", @@ -128,77 +269,118 @@ "on" : "во", "at" : "во", "+ Add reminder" : "+ Додади потсетник", + "Add reminder" : "Додади потсетник", "_second_::_seconds_" : ["секунда","секунди"], "_minute_::_minutes_" : ["минута","минути"], "_hour_::_hours_" : ["час","часа"], "_day_::_days_" : ["ден","дена"], "_week_::_weeks_" : ["недела","недели"], - "No reminders yet" : "Сеуште нема потсетници", + "No attachments" : "Нема прилози", + "Add from Files" : "Додади од датотеките", + "Upload from device" : "Прикачи од уред", + "Delete file" : "Избриши датотека", + "Choose a file to add as attachment" : "Избери датотека за да додадете прилог", + "Choose a file to share as a link" : "Избери датотека за да се сподели како линк", + "Attachment {name} already exist!" : "Прилогот {name} веќе постои!", + "_{count} attachment_::_{count} attachments_" : ["{count} прилог","{count} прилози"], + "Invitation accepted" : "Поканата е прифатена", + "Available" : "Достапно", + "Suggested" : "Предложено", + "Participation marked as tentative" : "Учеството е означено како пробно", + "Accepted {organizerName}'s invitation" : "Прифатена е покана од {organizerName}", + "Not available" : "Недостапно", + "Invitation declined" : "Поканата е одбиена", + "Declined {organizerName}'s invitation" : "Одбиена е покана од {organizerName}", + "Invitation is delegated" : "Поканата е делегирана", + "Checking availability" : "Проверување на достапност", + "Invitation sent" : "Испратена е покана", + "Has not responded to {organizerName}'s invitation yet" : "Сè уште не одговорил на поканата на {organizerName}", "Availability of attendees, resources and rooms" : "Достапност на присутните, ресурси и соби", + "{organizer} (organizer)" : "{organizer} (organizer)", + "Free" : "Слободен", "Busy (tentative)" : "Зафатен (привремено)", "Busy" : "Зафатен", "Out of office" : "Надвор од канцеларија", "Unknown" : "Непознат", - "{name} accepted your invitation." : "{name} ја прифати вашата покана.", - "{name} accepted {organizerName}'s invitation." : "{name} ја прифати поканата од {organizerName}.", - "{name} declined your invitation." : "{name} ја одби вашата покана.", - "{name} declined {organizerName}'s invitation." : "{name} ја одби поканата од {organizerName}.", - "{name} has delegated their invitation." : "{name} одговори на неговата покана.", - "{name} marked their participation as tentative." : "{name} го означи неговото учество како пробно.", - "{name} did not respond to your invitation yet." : "{name} сеуште нема одговорено на поканата.", - "{name} did not respond to {organizerName}'s invitation yet." : "{name} сеуште нема одговорено на поканата од {organizerName}.", + "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" : "Прикажи ги зафатените термини", + "No attendees yet" : "Сè уште нема присутни", + "Successfully appended link to talk room to location." : "Успешно е додадена врска од собата за разговор во локација.", "Successfully appended link to talk room to description." : "Успешно додаден линк од собата за разговор во описот.", "Error creating Talk room" : "Грешка при креирање на соба за разговор", - "Send e-mail" : "Испрати пошта", + "Send email" : "Испрати е-пошта", "Chairperson" : "Претседавач", "Required participant" : "Задолжителен учесник", "Optional participant" : "Незадолжителен учесник", "Non-participant" : "Не-учесник", "Remove attendee" : "Откажи присутност", - "Search for e-mails, users, contacts, resources or rooms" : "Пребарувај за е-пошти, корисници, контакти, ресурси или соби", + "Search for emails, users or contacts" : "Пребарување на е-пошта адреси, корисници или контакти", "No match found" : "Нема совпаѓања", - "No attendees yet" : "Сè уште нема присутни", "(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}", + "Repeat" : "Повтори", "End repeat" : "Крај на повторувањето", "Select to end repeat" : "Избери крај на повторувањето", "never" : "никогаш", "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" : "последен", - "Repeat" : "Повтори", + "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Промените на правилото за повторување ќе важат само за оваа и за сите идни појави.", "Repeat every" : "Повтори секој", "By day of the month" : "По ден во месецот", "On the" : "На", "_month_::_months_" : ["месец","месеци"], "_year_::_years_" : ["година","години"], - "Monday" : "Понеделник", "weekday" : "недели", "weekend day" : "ден од викенд", - "Summary" : "Резиме", + "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" : "Предлози", + "No rooms or resources yet" : "Сè уште нема простории или ресурси", + "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" : "недостапно", + "Room type" : "Вид на соба", + "Any" : "Било кој", + "Minimum seating capacity" : "Минимален капацитет за седење", "More" : "Повеќе", - "Save" : "Зачувај", - "Update" : "Ажурирај", "Update this occurrence" : "Ажурирајте ја оваа можност", "Update this and all future" : "Ажурирајте го овој и сите во иднина", "Public calendar does not exist" : "Јавниот календар не постои", "Maybe the share was deleted or has expired?" : "Можеби споделувањето е избришано ики рокот му е поминат?", - "Please select a timezone:" : "Изберете временска зона:", + "Please select a time zone:" : "Изберете временска зона:", "Pick a time" : "Избери време", "Pick a date" : "Избери датум", "from {formattedDate}" : "од {formattedDate}", @@ -210,41 +392,52 @@ "{formattedDate} at {formattedTime}" : "{formattedDate} во {formattedTime}", "Please enter a valid date" : "Внесете валиден датум", "Please enter a valid date and time" : "Внесете валиден датум и време", - "Type to search timezone" : "Пребарај временски зони", - "Personal" : "Лично", - "The automatic timezone detection determined your timezone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your timezone manually in the calendar settings." : "Автоматското откривање на временската зона утврди дека вашата временска зона е UTC.\nОва е најверојатно резултат на безбедносните мерки на вашиот веб прелистувач\nПоставете ја вашата временска зона во подесувањата за календарот.", - "Your configured timezone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your timezone in the settings and report this issue." : "Вашата временска зона ({timezoneId}) не е пронајдена. Поставена е (Координирано универзално време) UTC.\nПоставете ја вашата временска зона во подесувањата за календарот или пријавете го овој проблем.", - "No more events today" : "Нема настани за денес", - "No upcoming events" : "Нема престојни настани", + "Type to search time zone" : "Пребарај временски зони", + "Global" : "Глобално", + "Public holiday calendars" : "Календар со државни празници", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Календарите за државни празници се обезбедени од Thunderbird. Податоците од календарот ќе се преземат од {website}", + "By {authors}" : "Од {authors}", + "Subscribed" : "Претплатени", + "Subscribe" : "Претплата", + "Holidays in {region}" : "Празници во {region}", + "An error occurred, unable to create the public holiday calendar." : "Настана грешка, неможе да се креира календар за државни празници.", + "Select 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}", + "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Поставете ја вашата временска зона во подесувањата за календарот или пријавете го овој проблем.", "Create a new event" : "Креирајте нов настан", "[Today]" : "[Денес]", "[Tomorrow]" : "[Утре]", "[Yesterday]" : "[Вчера]", "[Last] dddd" : "[Последна] dddd", "Event does not exist" : "Настанот не постои", + "Duplicate" : "Дуплирај", "Delete this occurrence" : "Избришете ја оваа можност", "Delete this and all future" : "Избришете го овој и сите во иднина", "Details" : "Детали", + "Managing shared access" : "Управување со споделен пристап", + "Deny access" : "Забрани пристап", + "Invite" : "Покани", "Attendees" : "Присутни", - "Reminders" : "Потсетници", + "Resources" : "Ресурси", + "_User requires access to your file_::_Users require access to your file_" : ["Корисник бара пристап до вашата датотека","Корисници бараат пристап до вашата датотека"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Прилог за кој е потребен пристап","Прилози за кои е потребен пристап"], "Close" : "Затвори", "Show more details" : "Прикажи повеќе детали", "Subscribe to {name}" : "Претплатете се на {name}", - "Download {name}" : "Преземи {name}", - "Anniversary" : "Годишнина", - "Appointment" : "Назначување", - "Business" : "Бизнис", - "Education" : "Образование", - "Holiday" : "Празник", - "Meeting" : "Средба", - "Miscellaneous" : "Разно", - "Non-working hours" : "Неработни часови", - "Not in office" : "Не во канцеларија", - "Phone call" : "Телефонски повик", - "Sick day" : "Боледување", - "Special occasion" : "Посебна пригода", - "Travel" : "Патување", - "Vacation" : "Одмор", + "Export {name}" : "Извези {name}", "Midnight on the day the event starts" : "На полноќ на денот кога започнува настанот", "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["Еден ден пред настанот во {formattedHourMinute}","%n дена пред настанот во {formattedHourMinute}"], "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["Една недела пред настанот во {formattedHourMinute}","%n недели пред настанот во {formattedHourMinute}"], @@ -277,14 +470,7 @@ "Untitled event" : "Неименуван настан", "Untitled task" : "Неименувана задача", "Please ask your administrator to enable the Tasks App." : "Замолете го сервер администраторот да ја овозможи апликацијата задачи.", - "prev" : "предходна", - "next" : "следна", - "prev year" : "предходна година", - "next year" : "следниот месец", - "today" : "денес", - "list" : "лист", "W" : "Н", - "all-day" : "Цели денови", "%n more" : "%n други", "No events to display" : "Нема настани за приказ", "_+%n more_::_+%n more_" : ["+%n друг","+%n други"], @@ -292,59 +478,95 @@ "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" : "Семинарска сала", + "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." : "Видливост на овој настан во споделен календар.", - "Location" : "Локација", "Add a location" : "Додади локација", - "Description" : "Опис", "Add a description" : "Додади опис", "Status" : "Статус", "Confirmed" : "Потврдено", - "Tentative" : "Пробно", "Canceled" : "Откажано", "Confirmation about the overall status of the event." : "Потврда за целокупниот статус на настанот.", "Show as" : "Прикажи како", "Take this event into account when calculating free-busy information." : "Го има во предвид овој настан при пресметување на информации за слободен-зафатен.", - "Free" : "Слободен", "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" : "Настана грешка при преземање на информации од датотека", "Chat room for event" : "Соба за разговор за настанот", + "An error occurred, unable to delete the calendar." : "Настана грешка, неможе да се избрише календарот.", "Imported {filename}" : "Импортирано {filename}", + "This is an event reminder." : "Ова е потсетник за настан.", "Meditation" : "Медитација", "Relaxing" : "Релаксирање", "Relax" : "Опуштање", + "Break" : "Пауза", + "Commute" : "Патување", + "Commuting" : "На пат", + "Shuttle" : "Шатл", + "Invoice" : "Фактура", + "Finance" : "Финансии", + "Bank" : "Банка", + "Money" : "Пари", + "Wedding" : "Свадба", + "Dog" : "Куче", + "Concert" : "Концерт", + "Festival" : "Фестивал", + "Theater" : "Наставник", + "Theatre" : "Театар", "Presentation" : "Презентација", - "Present" : "Тековно", + "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" : "Ретроспектива", - "Review" : "Преглед", "Office" : "Канцеларија", - "Party" : "Забава", - "Celebration" : "Прослава", + "Contributor week" : "Недела на соработници", "Mail" : "Електронска пошта", "Soccer" : "Фудбал", "Football" : "Фудбал", "Gaming" : "Играње", - "Play" : "Слајдшоу", - "Game" : "Игра", "Drive" : "Возење", + "Driving" : "Возење", "Bicycle" : "Велосипед", "Cycle" : "Циклус", + "Cycling" : "Возење велосипед", "Biking" : "Велосипедизам", + "Bike" : "Велосипед", "Podcast" : "Подкаст", "Basketball" : "Кошарка", "Fishing" : "Риболов", @@ -355,10 +577,12 @@ "Museum" : "Музеј", "Pilates" : "Пилатес", "Park" : "Парк", + "Walk" : "Пешачење", "Studying" : "Учење", "Doctor" : "Доктор", "Health" : "Здравје", "Dentist" : "Заболекар", + "Hospital" : "Болница", "Interview" : "Интервју", "Training" : "Тренинг", "Practice" : "Пракса", @@ -369,7 +593,10 @@ "Gym" : "Теретана", "Barber" : "Бербер", "Haircut" : "Пострижување", + "Hairdresser" : "Фризер", "Exam" : "Испит", + "Written test" : "Писмен тест", + "Oral test" : "Усно тестирање", "Working" : "Работа", "New Years Eve" : "Новогодишна ноќ", "NYE" : "Нова година", @@ -388,19 +615,27 @@ "Conference" : "Конференција", "Pizza" : "Пица", "Travelling" : "Патување", + "Trip" : "Патување", "Journey" : "Патување", "Collaborate" : "Соработка", + "Pair" : "Спари", "Lecture" : "Читање", "Seminar" : "Семинар", + "Teaching" : "Настава", "Photograph" : "Фотографија", + "Party" : "Забава", + "Celebration" : "Прослава", "Celebrate" : "Прослава", + "Birthday" : "Роденден", "Shopping" : "Купување", + "Groceries" : "Намирници", "Skate" : "Скејтбординг", "Skateboard" : "Скејтбординг", "Wine tasting" : "Дегустација на вино", "Golf" : "Голф", "Dinner" : "Вечера", "Lunch" : "Ручек", - "Global" : "Глобално" + "Appointment not found" : "Терминот не е пронајден", + "User not found" : "Корисникот не е пронајден" },"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 7aea7e6fe0..55be1d3bb8 100644 --- a/l10n/mn.js +++ b/l10n/mn.js @@ -6,53 +6,89 @@ OC.L10N.register( "We wanted to inform you that %s has published the calendar »%s«." : "%s хэрэглэгч нь »%s« календарийг нийтэлснийг үүгээр мэдэгдэе.", "Open »%s«" : "»%s« нээх", "Cheers!" : "Болж байна!", + "Upcoming events" : "Удахгүй болох үйл явдлууд", "Calendar" : "Календарь", + "Confirm" : "Батлах", + "This confirmation link expires in %s hours." : "Энэ баталгаажуулах холбоос %s цагийн дараа дуусна ", + "Date:" : "Огноо:", + "Where:" : " Хаана:", + "Personal" : "Хувийн", + "A Calendar app for Nextcloud" : "Нэкстклауд Календарь апп ", + "Previous day" : "Өмнөх өдөр", + "Previous week" : "Өнмөх 7 хоног", + "Previous month" : "Өмнөх сар", + "Next day" : "Маргааш", + "Next week" : "Дараа 7 хоног", + "Next month" : "Дараа сар", "Today" : "Өнөөдөр", "Day" : "Өдөр", "Week" : "Долоо хоног", "Month" : "Сар", - "Download" : "Татаж авах", + "List" : "Жагсаалт", + "Preview" : "шалгах", + "Copy link" : "Холбоос хуулах", + "Edit" : "засварлах", "Delete" : "Устгах", + "Add new" : "Шинээр нэмэх", + "Shared with you by" : "Таньд хуваалцсан", + "Edit and share calendar" : " Календарь засварлах болон хуваалцах", + "Edit calendar" : "Календар засварлах", + "Disable calendar \"{calendar}\"" : "Кадендарь Идэвхигүй болгох \"{calendar}\"", + "New calendar" : "Шинэ цагийн хуваарь", + "Export" : "Экспорт", + "Name" : "Нэр", + "Deleted" : "Устгагдсан", + "Restore" : "Сэргээх", + "Delete permanently" : "бүр мөсөн устгах", "Share link" : "Холбоос хуваалцах", - "Share with users or groups" : "Бусад хэрэглэгч, бүлэгт хуваалцах", "can edit" : "засаж чадна", - "New calendar" : "Шинэ цагийн хуваарь", + "Share with users or groups" : "Бусад хэрэглэгч, бүлэгт хуваалцах", + "Save" : "Хадгалах", "Filename" : "Файлын нэр", "Cancel" : "Цуцлах", "Actions" : "Үйл ажиллагаа", "Show week numbers" : "7 хоногийн дугаарыг харуулах", - "Settings & import" : "Тохиргоо, импорт", + "Location" : "Байршил", + "Description" : "Тодорхойлолт", + "to" : "Дуусах нь", + "Add" : "нэмэх", + "Monday" : "даваа", + "Tuesday" : "мягмар", + "Wednesday" : "лхагва", + "Thursday" : "пүрэв", + "Friday" : "баасан", + "Saturday" : "бямба", + "Sunday" : "ням гариг", + "Update" : "Шинэчлэх", "Notification" : "Мэдэгдэл", "Email" : "Цахим шуудан", + "Delete file" : "Файл устгах", + "Available" : "Боломжтой", "Unknown" : "Үл танигдах зүйл", + "Accept" : "Хүлээн зөвшөөрөх", + "Decline" : "Зөвшөөрөхгүй", + "Tentative" : "Урьдчилсан тов", + "Send email" : "Мэйл илгээх", + "Repeat" : "Давтах", "never" : "хэзээ ч үгүй", "after" : "дараа", - "Repeat" : "Давтах", - "Monday" : "даваа", - "Summary" : "Хураангуй", "More" : "Дэлгэрэнгүй", - "Save" : "Хадгалах", - "Update" : "Шинэчлэх", - "Personal" : "Хувийн", + "Global" : "Нийтийн", + "Subscribe" : "Захиалга", "Details" : "Дэлгэрэнгүй", "Attendees" : "Оролцогчид", - "Reminders" : "Сануулагууд", "Close" : "Хаах", "Week {number} of {year}" : "{year} оны {number}-р долоо хоног ", "Daily" : "Өдөр бүр", "Weekly" : "Долоо хоног бүр", - "today" : "өнөөдөр", + "Other" : "Бусад", "When shared show full event" : "Түгээсэн тохиолдолд үйл явдлыг бүтнээр нь харуул", "When shared show only busy" : "Түгээсэн тохиолдолд зөвхөн завгүй гэж харуул", "When shared hide this event" : "Түгээсэн тохиолдолд энэ үйл явдлыг нуу", - "Location" : "Байршил", - "Description" : "Тодорхойлолт", "Status" : "төлөв", "Confirmed" : "Баталгаажсан", - "Tentative" : "Урьдчилсан тов", "Categories" : "төрөл", "Mail" : "Цахим шуудан", - "Play" : "Тоглуулах", - "Global" : "Нийтийн" + "Birthday" : "Төрсөн өдөр" }, "nplurals=2; plural=(n != 1);"); diff --git a/l10n/mn.json b/l10n/mn.json index 1412c58997..2bfdd14e4c 100644 --- a/l10n/mn.json +++ b/l10n/mn.json @@ -4,53 +4,89 @@ "We wanted to inform you that %s has published the calendar »%s«." : "%s хэрэглэгч нь »%s« календарийг нийтэлснийг үүгээр мэдэгдэе.", "Open »%s«" : "»%s« нээх", "Cheers!" : "Болж байна!", + "Upcoming events" : "Удахгүй болох үйл явдлууд", "Calendar" : "Календарь", + "Confirm" : "Батлах", + "This confirmation link expires in %s hours." : "Энэ баталгаажуулах холбоос %s цагийн дараа дуусна ", + "Date:" : "Огноо:", + "Where:" : " Хаана:", + "Personal" : "Хувийн", + "A Calendar app for Nextcloud" : "Нэкстклауд Календарь апп ", + "Previous day" : "Өмнөх өдөр", + "Previous week" : "Өнмөх 7 хоног", + "Previous month" : "Өмнөх сар", + "Next day" : "Маргааш", + "Next week" : "Дараа 7 хоног", + "Next month" : "Дараа сар", "Today" : "Өнөөдөр", "Day" : "Өдөр", "Week" : "Долоо хоног", "Month" : "Сар", - "Download" : "Татаж авах", + "List" : "Жагсаалт", + "Preview" : "шалгах", + "Copy link" : "Холбоос хуулах", + "Edit" : "засварлах", "Delete" : "Устгах", + "Add new" : "Шинээр нэмэх", + "Shared with you by" : "Таньд хуваалцсан", + "Edit and share calendar" : " Календарь засварлах болон хуваалцах", + "Edit calendar" : "Календар засварлах", + "Disable calendar \"{calendar}\"" : "Кадендарь Идэвхигүй болгох \"{calendar}\"", + "New calendar" : "Шинэ цагийн хуваарь", + "Export" : "Экспорт", + "Name" : "Нэр", + "Deleted" : "Устгагдсан", + "Restore" : "Сэргээх", + "Delete permanently" : "бүр мөсөн устгах", "Share link" : "Холбоос хуваалцах", - "Share with users or groups" : "Бусад хэрэглэгч, бүлэгт хуваалцах", "can edit" : "засаж чадна", - "New calendar" : "Шинэ цагийн хуваарь", + "Share with users or groups" : "Бусад хэрэглэгч, бүлэгт хуваалцах", + "Save" : "Хадгалах", "Filename" : "Файлын нэр", "Cancel" : "Цуцлах", "Actions" : "Үйл ажиллагаа", "Show week numbers" : "7 хоногийн дугаарыг харуулах", - "Settings & import" : "Тохиргоо, импорт", + "Location" : "Байршил", + "Description" : "Тодорхойлолт", + "to" : "Дуусах нь", + "Add" : "нэмэх", + "Monday" : "даваа", + "Tuesday" : "мягмар", + "Wednesday" : "лхагва", + "Thursday" : "пүрэв", + "Friday" : "баасан", + "Saturday" : "бямба", + "Sunday" : "ням гариг", + "Update" : "Шинэчлэх", "Notification" : "Мэдэгдэл", "Email" : "Цахим шуудан", + "Delete file" : "Файл устгах", + "Available" : "Боломжтой", "Unknown" : "Үл танигдах зүйл", + "Accept" : "Хүлээн зөвшөөрөх", + "Decline" : "Зөвшөөрөхгүй", + "Tentative" : "Урьдчилсан тов", + "Send email" : "Мэйл илгээх", + "Repeat" : "Давтах", "never" : "хэзээ ч үгүй", "after" : "дараа", - "Repeat" : "Давтах", - "Monday" : "даваа", - "Summary" : "Хураангуй", "More" : "Дэлгэрэнгүй", - "Save" : "Хадгалах", - "Update" : "Шинэчлэх", - "Personal" : "Хувийн", + "Global" : "Нийтийн", + "Subscribe" : "Захиалга", "Details" : "Дэлгэрэнгүй", "Attendees" : "Оролцогчид", - "Reminders" : "Сануулагууд", "Close" : "Хаах", "Week {number} of {year}" : "{year} оны {number}-р долоо хоног ", "Daily" : "Өдөр бүр", "Weekly" : "Долоо хоног бүр", - "today" : "өнөөдөр", + "Other" : "Бусад", "When shared show full event" : "Түгээсэн тохиолдолд үйл явдлыг бүтнээр нь харуул", "When shared show only busy" : "Түгээсэн тохиолдолд зөвхөн завгүй гэж харуул", "When shared hide this event" : "Түгээсэн тохиолдолд энэ үйл явдлыг нуу", - "Location" : "Байршил", - "Description" : "Тодорхойлолт", "Status" : "төлөв", "Confirmed" : "Баталгаажсан", - "Tentative" : "Урьдчилсан тов", "Categories" : "төрөл", "Mail" : "Цахим шуудан", - "Play" : "Тоглуулах", - "Global" : "Нийтийн" + "Birthday" : "Төрсөн өдөр" },"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 1e666f6165..a8e288ad39 100644 --- a/l10n/ms_MY.js +++ b/l10n/ms_MY.js @@ -2,31 +2,45 @@ OC.L10N.register( "calendar", { "Calendar" : "Kalendar", + "Personal" : "Peribadi", "Today" : "Hari ini", "Day" : "Hari", "Week" : "Minggu", "Month" : "Bulan", - "Download" : "Muat turun", + "Edit" : "Sunting", "Delete" : "Padam", + "New calendar" : "Kalendar baru", + "Export" : "Eksport", + "Name" : "Nama", + "Deleted" : "Dipadam", + "Restore" : "Pulihkan", "Share link" : "Share link", "can edit" : "boleh mengubah", - "New calendar" : "Kalendar baru", + "Save" : "Simpan", "Cancel" : "Batal", + "Location" : "Lokasi", + "Description" : "Keterangan", + "to" : "kepada", + "Add" : "Tambah", + "Monday" : "Isnin", + "Tuesday" : "Selasa", + "Wednesday" : "Rabu", + "Thursday" : "Khamis", + "Friday" : "Jumaat", + "Saturday" : "Sabtu", + "Sunday" : "Ahad", + "Update" : "Kemaskini", + "Your email address" : "Alamat emel anda", "Email" : "Email", - "never" : "jangan", "Repeat" : "Ulang", - "Monday" : "Isnin", + "never" : "jangan", "More" : "Lanjutan", - "Save" : "Simpan", - "Update" : "Kemaskini", - "Personal" : "Peribadi", "Attendees" : "Jemputan", "Close" : "Tutup", "Daily" : "Setiap hari", "Weekly" : "Setiap minggu", - "Location" : "Lokasi", - "Description" : "Keterangan", + "Other" : "Lain", "Mail" : "Mel", - "Play" : "Main" + "Birthday" : "Hari lahir" }, "nplurals=1; plural=0;"); diff --git a/l10n/ms_MY.json b/l10n/ms_MY.json index 215b83ce67..dfb10602cd 100644 --- a/l10n/ms_MY.json +++ b/l10n/ms_MY.json @@ -1,30 +1,44 @@ { "translations": { "Calendar" : "Kalendar", + "Personal" : "Peribadi", "Today" : "Hari ini", "Day" : "Hari", "Week" : "Minggu", "Month" : "Bulan", - "Download" : "Muat turun", + "Edit" : "Sunting", "Delete" : "Padam", + "New calendar" : "Kalendar baru", + "Export" : "Eksport", + "Name" : "Nama", + "Deleted" : "Dipadam", + "Restore" : "Pulihkan", "Share link" : "Share link", "can edit" : "boleh mengubah", - "New calendar" : "Kalendar baru", + "Save" : "Simpan", "Cancel" : "Batal", + "Location" : "Lokasi", + "Description" : "Keterangan", + "to" : "kepada", + "Add" : "Tambah", + "Monday" : "Isnin", + "Tuesday" : "Selasa", + "Wednesday" : "Rabu", + "Thursday" : "Khamis", + "Friday" : "Jumaat", + "Saturday" : "Sabtu", + "Sunday" : "Ahad", + "Update" : "Kemaskini", + "Your email address" : "Alamat emel anda", "Email" : "Email", - "never" : "jangan", "Repeat" : "Ulang", - "Monday" : "Isnin", + "never" : "jangan", "More" : "Lanjutan", - "Save" : "Simpan", - "Update" : "Kemaskini", - "Personal" : "Peribadi", "Attendees" : "Jemputan", "Close" : "Tutup", "Daily" : "Setiap hari", "Weekly" : "Setiap minggu", - "Location" : "Lokasi", - "Description" : "Keterangan", + "Other" : "Lain", "Mail" : "Mel", - "Play" : "Main" + "Birthday" : "Hari lahir" },"pluralForm" :"nplurals=1; plural=0;" } \ No newline at end of file diff --git a/l10n/nb.js b/l10n/nb.js index 01fe5461fe..61c4c20390 100644 --- a/l10n/nb.js +++ b/l10n/nb.js @@ -1,93 +1,156 @@ OC.L10N.register( "calendar", { + "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\"", - "Successfully sent email to " : "E-post er sendt til", + "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", + "More events" : "Flere hendelser", + "No more events today" : "Ingen flere hendelser i dag", + "No upcoming events" : "Ingen kommende hendelser", "Calendar" : "Kalender", + "Appointments" : "Avtaler", + "Schedule appointment \"%s\"" : "Registrer avtale \"%s\"", + "Schedule an appointment" : "Registrer en avtale", + "Prepare for %s" : "Forbered for %s", + "Follow up for %s" : "Følg opp for %s", + "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", + "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 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:", + "Where:" : "Hvor:", + "Anniversary" : "Jubileum", + "Appointment" : "Avtale", + "Business" : "Forretninger", + "Education" : "Utdanning", + "Holiday" : "Helligdag", + "Meeting" : "Møte", + "Miscellaneous" : "Diverse", + "Non-working hours" : "Utenfor arbeidstid", + "Not in office" : "Ikke på kontoret", + "Personal" : "Personlig", + "Phone call" : "Telefonsamtale", + "Sick day" : "Sykedag", + "Special occasion" : "Spesiell anledning", + "Travel" : "Reise", + "Vacation" : "Ferie", "A Calendar app for Nextcloud" : "En kalender til 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." : "Kalender-appen er et brukergrensesnitt for Nextclouds CalDAV-server. Enkelt synkroniser hendelser fra ulike enheter med Nextcloud og rediger dem på nett.\n\n* 🚀 **Integrering med andre Nextcloud-apper!** Kontakter-appen for øyeblikket – flere kommer.\n* 🌐 **WebCal-støtte!** Vil du se favoritten din lagets kampdager i kalenderen din? Ikke noe problem!\n* 🙋 **Deltakere!** Inviter folk til arrangementene dine\n* ⌚️ **Ledig/Opptatt!** Se når deltakerne er tilgjengelige for å møte\n* ⏰ **Påminnelser!** Få alarmer for hendelser inne nettleseren din og via e-post\n* 🔍 Søk! Finn hendelsene dine med ro\n* ☑️ Oppgaver! Se oppgaver med forfallsdato direkte i kalenderen\n* 🙈 **Vi finner ikke opp hjulet på nytt!** Basert på det flotte [c-dav-biblioteket](https://github.com/nextcloud/cdav-library) , [ical.js](https://github.com/mozilla-comm/ical.js) og [fullcalendar](https://github.com/fullcalendar/fullcalendar) biblioteker.", "Previous day" : "Forrige dag", "Previous week" : "Forrige uke", "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", + "Event" : "Begivenhet", "Today" : "I dag", "Day" : "Dag", "Week" : "Uke", "Month" : "Måned", + "Year" : "År", "List" : "Liste", - "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", - "Download" : "Last ned", - "Unshare from me" : "Fjern deling fra meg", + "Preview" : "Forhåndsvis", + "Copy link" : "Kopier lenke", + "Edit" : "Rediger", "Delete" : "Slett", - "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.", + "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", + "Shared with you by" : "Delt med deg av", + "Edit and share calendar" : "Rediger og del kalender", + "Edit calendar" : "Rediger kalender", + "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 oppsto, kan ikke endre synlighet til kalenderen.", "_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"], + "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 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://)", + "Copy subscription link" : "Kopier abonnementslenke", + "Copying link …" : "Kopierer lenke ...", + "Copied link" : "Kopier lenke", + "Could not copy link" : "Klarte ikke å kopiere lenken", + "Export" : "Eksporter", + "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.", + "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", + "Empty trash bin" : "Tøm papirkurv", + "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 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?", + "_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.", + "Internal link" : "Intern lenke", + "Copy internal link" : "Kopier intern lenke", "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.", + "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 with users or groups" : "Del med brukere eller grupper", - "No users or groups" : "Ingen brukere eller grupper", "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", - "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://)", - "Could not update calendar order." : "Kunne ikke oppdatere rekkefølgen på kalendrene.", + "An error occurred, unable to change the permission of the share." : "En feil oppsto, kan ikke endre rettighetene til delingen.", + "Share with users or groups" : "Del med brukere eller grupper", + "No users or groups" : "Ingen brukere eller grupper", + "Calendar name …" : "Kalendernavn…", + "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"], - "{filename} is an unsupported file-type" : "{filename} er en ustøttet filtype", + "Default attachments location" : "Standard plassering for vedlegg", + "Select the default location for attachments" : "Velg standardplassering for vedlegg", + "Invalid location selected" : "Invalid location selected", + "Attachments folder successfully saved." : "Vedleggsmappen er lagret.", + "Error on saving attachments folder." : "Feil ved lagring av vedleggsmappe.", "{filename} could not be parsed" : "{filename} kunne ikke leses", "No valid files found, aborting import" : "Ingen gyldig filer funnet, avbryter importering", - "Import partially failed. Imported {accepted} out of {total}." : "Importering mislykkes delvis. Importerte {accepted} av {total}. ", - "_Successfully imported %n event_::_Successfully imported %n events._" : ["Importerte %navtale","Importerte %n hendelser."], + "Import partially failed. Imported {accepted} out of {total}." : "Importen mislyktes delvis. Importerte {accepted} av {total}. ", + "_Successfully imported %n event_::_Successfully imported %n events_" : ["Vellykket importert %n hendelse","Vellykket importert %n hendelser"], "Automatic" : "Automatisk", "Automatic ({detected})" : "Automatisk ({detected})", "New setting was not saved successfully." : "Ny innstilling ble ikke lagret.", @@ -100,21 +163,79 @@ OC.L10N.register( "Day view" : "Dagsvisning", "Week view" : "Ukesvisning", "Month view" : "Månedsvisning", + "List view" : "Listevisning", "Actions" : "Handlinger", - "Create event" : "Opprettet hendelse", + "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", "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", "Show weekends" : "Vis helger", - "Show week numbers" : "Vis ukenumre", - "Copy primary CalDAV address" : "Kopier hovedlenke til CalDAV", - "Copy iOS/macOS CalDAV address" : "Kopier iOS/macOS CalDAV-lenke", + "Show week numbers" : "Vis ukenummer", + "Time increments" : "Tidsøkninger", + "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", - "Settings & import" : "Innstillinger og import", - "CalDAV link copied to clipboard." : "CalDAV lenke kopiert til utklippstavlen.", + "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.", + "Appointment was created successfully" : "Appointment was created successfully", + "Appointment was updated successfully" : "Avtalen ble oppdatert", + "_{duration} minute_::_{duration} minutes_" : ["{duration} minutt","{duration} minutter"], + "0 minutes" : "0 minutter", + "_{duration} hour_::_{duration} hours_" : ["{duration} time","{duration} timer"], + "_{duration} day_::_{duration} days_" : ["{duration} dag","{duration} dager"], + "_{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", + "Appointment name" : "Navn på avtale", + "Location" : "Sted", + "Description" : "Beskrivelse", + "Visibility" : "Synlighet", + "Duration" : "Varighet", + "Increments" : "Økninger", + "Additional calendars to check for conflicts" : "Ekstra kalendere for å se etter konflikter", + "Pick time ranges where appointments are allowed" : "Velg tidsrom der avtaler er tillatt", + "to" : "til", + "Delete slot" : "Slett tidsrom", + "No times set" : "Ingen tidsrom satt", + "Add" : "Legg til", + "Monday" : "Mandag", + "Tuesday" : "Tirsdag", + "Wednesday" : "Onsdag", + "Thursday" : "Torsdag", + "Friday" : "Fredag", + "Saturday" : "Lørdag", + "Sunday" : "Søndag", + "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", + "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", + "Update" : "Oppdater", + "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", + "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.", + "Book the appointment" : "Bestill avtalen", + "Reminder" : "Påminnelse", "before at" : "før ved", "Notification" : "Varsel", "Email" : "E-post", @@ -126,190 +247,331 @@ OC.L10N.register( "Save time" : "Lagre tidspunkt", "Remove reminder" : "Fjern påminnelse", "on" : "på", - "at" : "på", - "+ Add reminder" : "+Legg til påminnelse", + "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"], - "No reminders yet" : "Ingen påminnelser enda", - "Availability of attendees, resources and rooms" : "Tilgjengelighet til deltagere, ressurser og rom", + "No attachments" : "Ingen vedlegg", + "Add from Files" : "Legg til fra filer", + "Upload from device" : "Last opp fra enhet", + "Delete file" : "Slett fil", + "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!", + "_{count} attachment_::_{count} attachments_" : ["{count} vedlegg","{count} vedlegg"], + "Invitation accepted" : "Invitasjon akseptert", + "Available" : "Ledig", + "Suggested" : "Foreslått", + "Participation marked as tentative" : "Deltakelse markert som foreløpig", + "Accepted {organizerName}'s invitation" : "Godtok invitasjonen til {organizerName}", + "Not available" : "Ikke ledig", + "Invitation declined" : "Invitasjonen ble avslått", + "Declined {organizerName}'s invitation" : "Avviste invitasjonen til {organizerName}", + "Invitation is delegated" : "Invitasjon er delegert", + "Checking availability" : "Sjekker ledighet", + "Invitation sent" : "Invitasjon er sendt", + "Has not responded to {organizerName}'s invitation yet" : "Har ikke svart på {organizerName} sin invitasjon ennå", + "Availability of attendees, resources and rooms" : "Ledighet til deltagere, ressurser og rom", + "{organizer} (organizer)" : "{organizer} (organisator)", + "Free" : "Ledig", "Busy (tentative)" : "Opptatt (foreløpig)", "Busy" : "Opptatt", "Out of office" : "Fraværende", "Unknown" : "Ukjent", - "{name} accepted your invitation." : "{name} aksepterte din invitasjon.", - "{name} accepted {organizerName}'s invitation." : "{name} aksepterte {organizerName}s invitasjon.", - "{name} declined your invitation." : "{name} avslo din invitasjon.", - "{name} declined {organizerName}'s invitation." : "{name} avslo {organizerName}s invitasjon.", - "{name} has delegated their invitation." : "{name} har delegert deres invitasjon.", - "{name} marked their participation as tentative." : "{name} markerte sin deltakelse som mulig.", - "{name} did not respond to your invitation yet." : "{name} har ikke respondert på din invitasjon enda.", - "{name} did not respond to {organizerName}'s invitation yet." : "{name} har ikke svart på {organizerName}s invitasjon enda.", + "Accept" : "Aksepter", + "Decline" : "Avslå", + "Tentative" : "Foreløpig", + "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.", "Create Talk room for this event" : "Opprett Talk-rom for denne hendelsen", "Show busy times" : "Vis opptatte tider", + "No attendees yet" : "Ingen deltakere enda", "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 e-mail" : "Send e-post", + "Send email" : "Send e-post", "Chairperson" : "Ordstyrer", "Required participant" : "Påkrevd deltaker", - "Optional participant" : "Ønsket deltaker", + "Optional participant" : "Valgfri deltaker", "Non-participant" : "Ikke-deltaker", "Remove attendee" : "Fjern deltaker", - "Search for e-mails, users, contacts, resources or rooms" : "Søk for e-poster, brukere, kontakter, ressurser eller rom", + "Search for emails, users or contacts" : "Søk blant eposter, brukere eller kontaker", "No match found" : "Ingen treff", - "No attendees yet" : "Ingen deltagere enda", "(organizer)" : "(organisator)", + "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", + "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 {startDate}" : "fra {startDate}", "from {startDate} at {startTime}" : "fra {startDate}, {startTime}", "to {endDate}" : "til {endDate}", "to {endDate} at {endTime}" : "til {endDate}, {endTime}", + "Repeat" : "Gjenta", "End repeat" : "Avslutt gjentakelse", + "Select to end repeat" : "Velg for å avslutte gjentakelse", "never" : "aldri", "on date" : "på dato", "after" : "etter", "_time_::_times_" : ["gang","ganger"], + "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", + "second to last" : "nest sist", "last" : "siste", - "Repeat" : "Gjenta", + "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", "_month_::_months_" : ["måned","måneder"], "_year_::_years_" : ["år","år"], - "Monday" : "Mandag", "weekday" : "ukedag", - "weekend day" : "helg", - "Summary" : "Oppsummering", + "weekend day" : "helgedag", + "No recurrence" : "Ingen gjentakelse", + "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.", + "Suggestions" : "Forslag", + "No rooms or resources yet" : "Ingen rom eller ressurser enda", + "Add resource" : "Legg til ressurs", + "Has a projector" : "Har en projektor", + "Has a whiteboard" : "Har en tavle", + "Wheelchair accessible" : "Tilgjengelig for rullestol", + "Remove resource" : "Fjern ressurs", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} sete","{seatingCapacity} seter"], + "Projector" : "Projektor", + "Whiteboard" : "Tavle", + "Search for resources or rooms" : "Søk etter ressurser eller rom", + "available" : "ledig", + "unavailable" : "ikke ledig", + "Room type" : "Romtype", + "Any" : "Hva som helst", + "Minimum seating capacity" : "Minimum sittekapasitet", "More" : "Mer", - "Save" : "Lagre", - "Update" : "Oppdater", "Update this occurrence" : "Oppdater denne hendelsen", "Update this and all future" : "Oppdater denne og fremtidige hendelser", "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 timezone:" : "Velg en tidssone:", + "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}" : "på {formattedDate}", - "from {formattedDate} at {formattedTime}" : "fra {formattedDate} på {formattedTime}", - "to {formattedDate} at {formattedTime}" : "til {formattedDate} på {formattedTime}", - "on {formattedDate} at {formattedTime}" : "på {formattedDate} på {formattedTime}", - "{formattedDate} at {formattedTime}" : "{formattedDate} på {formattedTime}", + "on {formattedDate}" : "den {formattedDate}", + "from {formattedDate} at {formattedTime}" : "fra {formattedDate} kl. {formattedTime}", + "to {formattedDate} at {formattedTime}" : "til {formattedDate} kl. {formattedTime}", + "on {formattedDate} at {formattedTime}" : "den {formattedDate} kl. {formattedTime}", + "{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 tidspunkt", - "Type to search timezone" : "Skriv for å finne tidssone", - "Personal" : "Personlig", - "No more events today" : "Ingen flere hendelser i dag", - "Event does not exist" : "Avtalen finnes ikke", + "Please enter a valid date and time" : "Vennligst tast inn en gyldig dato og et tidspunkt", + "Type to search time zone" : "Skriv for å søke etter tidssone", + "Global" : "Global", + "Subscribed" : "Abonnerer", + "Subscribe" : "Abonner", + "Select date" : "Velg dato", + "Select slot" : "Velg tidsrom", + "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 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}", + "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.", + "Create a new event" : "Opprett en ny hendelse", + "[Today]" : "[Today]", + "[Tomorrow]" : "[Tomorrow]", + "[Yesterday]" : "[Yesterday]", + "[Last] dddd" : "[Last] dddd", + "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", + "Managing shared access" : "Administrere delt tilgang", + "Deny access" : "Nekte adgang", + "Invite" : "Invitere", "Attendees" : "Deltakere", - "Reminders" : "Varsler", + "Resources" : "Ressurser", "Close" : "Lukk", "Show more details" : "Vis flere detaljer", "Subscribe to {name}" : "Abonner på {name}", - "Download {name}" : "Last ned {name}", - "Anniversary" : "Jubileum", - "Appointment" : "Avtale", - "Business" : "Forretninger", - "Education" : "Utdanning", - "Holiday" : "Ferie", - "Meeting" : "Møte", - "Miscellaneous" : "Diverse", - "Non-working hours" : "Ikke-arbeidende tidspunkt", - "Not in office" : "Ikke på kontoret", - "Phone call" : "Telefonsamtale", - "Sick day" : "Sykedag", - "Special occasion" : "Spesiell anledning", - "Travel" : "Reise", - "Vacation" : "Ferie", + "Export {name}" : "Eksporter {name}", + "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}" : "i {monthNames}", + "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", "Untitled task" : "Oppgave uten tittel", - "next year" : "neste år", - "today" : "i dag", - "all-day" : "Heldags", + "Please ask your administrator to enable the Tasks App." : "Ta kontakt med din administrator for å sette opp Oppgaver-appen.", + "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", + "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 når delt", - "When shared show only busy" : "Vis kun opptatt når delt", - "When shared hide this event" : "Skjul denne hendelsen når delt", + "When shared show full event" : "Vis hele hendelsen om den deles", + "When shared show only busy" : "Vis kun opptatt om den deles", + "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", - "Location" : "Sted", "Add a location" : "Legg til et sted", - "Description" : "Beskrivelse", "Add a description" : "Legg til en beskrivelse", "Status" : "Status", "Confirmed" : "Bekreftet", - "Tentative" : "Foreløpig", "Canceled" : "Avbrutt", + "Confirmation about the overall status of the event." : "Bekreftelse om den generelle statusen til arrangementet.", "Show as" : "Vis som", - "Free" : "Ledig", + "Take this event into account when calculating free-busy information." : "Ta hensyn til denne hendelsen når det beregnes ledig-opptatt-informasjon.", "Categories" : "Kategorier", + "Categories help you to structure and organize your events." : "Kategorier hjelper deg med å strukturere og organisere arrangementene dine.", "Search or add categories" : "Søk eller legg til kategorier", "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", + "Attachment {fileName} already exists!" : "Vedlegget {fileName} eksisterer allerede!", + "An error occurred during getting file information" : "Det oppsto en feil under henting av filinformasjon", + "Chat room for event" : "Chatterom for hendelse", + "An error occurred, unable to delete the calendar." : "En feil oppsto, kan ikke slette kalenderen. ", "Imported {filename}" : "Importerte {filename}", + "This is an event reminder." : "Dette er en hendelsespåminnelse.", "Meditation" : "Meditasjon", "Relaxing" : "Avslapping", + "Relax" : "Slappe av", + "Break" : "Pause", + "Commute" : "Pendle", + "Commuting" : "Pendler", + "Shuttle" : "Skyttel", + "Invoice" : "Faktura", + "Finance" : "Finansiere", + "Bank" : "Bank", + "Money" : "Penger", + "Wedding" : "Bryllup", + "Dog" : "Hund", + "Concert" : "Konsert", + "Festival" : "Festival", + "Theater" : "Teater", + "Theatre" : "Teater", "Presentation" : "Presentasjon", - "Present" : "Gave", + "Talk" : "Samtale", + "Speech" : "Tale", + "Deadline" : "Frist", + "Submission" : "Innlevering", + "Reporting" : "Rapportering", "Camping" : "Camping", + "Camp" : "Leir", + "Election" : "Valg", + "Voting" : "Stemmegivning", + "Vote" : "Stemme", + "Barbecue" : "Grill", + "Barbeque" : "Grill", + "Garden" : "Hage", + "Farm" : "Gård", "Movie" : "Film", "Cinema" : "Kino", + "Graduation" : "Avgangseksamen", "Brainstorm" : "Brainstorm", + "Review" : "Anmeldelse", + "Audit" : "Revisjon", + "Inspection" : "Inspeksjon", + "Proofreading" : "Korrekturlesing", + "Baseball" : "Baseball", "Meet" : "Møte", "Planning" : "Planlegge", - "Review" : "Anmeldelse", - "Office" : "Office", - "Party" : "Fest", - "Celebration" : "Feiring", + "Pointing" : "Peking", + "Retrospective" : "Retrospektiv", + "Office" : "Kontor", + "Contributor week" : "Bidragsyter-uke", "Mail" : "E-post", "Soccer" : "Fotball", + "Football" : "Fotball", "Gaming" : "Gaming", - "Play" : "Spill", "Drive" : "Kjøre", + "Driving" : "Kjøring", "Bicycle" : "Sykkel", "Cycle" : "Sykle", + "Cycling" : "Sykling", "Biking" : "Sykling", + "Bike" : "Sykkel", "Podcast" : "Podkast", + "Basketball" : "Basketball", "Fishing" : "Fisking", "Hiking" : "Tur", + "Hike" : "Gå tur", "Art" : "Kunst", "Exhibition" : "Utstilling", "Museum" : "Museum", "Pilates" : "Pilates", "Park" : "Park", + "Walk" : "Gå", "Studying" : "Studere", "Doctor" : "Doktor", "Health" : "Helse", "Dentist" : "Tannlege", + "Hospital" : "Sykehus", "Interview" : "Intervju", "Training" : "Trene", "Practice" : "Øve", "Sports" : "Sport", + "Exercise" : "Trening", + "Work out" : "Trene", + "Working out" : "Trene", "Gym" : "Gym", "Barber" : "Barberer", "Haircut" : "Frisør", + "Hairdresser" : "Frisør", "Exam" : "Eksamen", + "Written test" : "Skriftlig test", + "Oral test" : "Muntlig test", "Working" : "Jobb", "New Years Eve" : "Nyttårsaften", + "NYE" : "Nyttårsaften", "Fireworks" : "Fyrverkeri", "Running" : "Løpe", "Go for a run" : "Løpetur", @@ -317,7 +579,7 @@ OC.L10N.register( "Video-conference" : "Videokonferanse", "Conference-call" : "Telefonkonferanse", "Video-call" : "Videosamtale", - "Video-chat" : "Videosamtale", + "Video-chat" : "Videochat", "Video-meeting" : "Videokonferanse", "Call" : "Ringe", "Calling" : "Ringer", @@ -325,20 +587,27 @@ OC.L10N.register( "Conference" : "Konferanse", "Pizza" : "Pizza", "Travelling" : "Reise", + "Trip" : "Tur", "Journey" : "Reise", "Collaborate" : "Samarbeide", "Pair" : "Par", "Lecture" : "Forelesning", "Seminar" : "Seminar", + "Teaching" : "Undervisning", "Photograph" : "Fotografere", + "Party" : "Fest", + "Celebration" : "Feiring", "Celebrate" : "Feire", + "Birthday" : "Fødselsdag", "Shopping" : "Shoppe", + "Groceries" : "Dagligvarer", "Skate" : "Skate", "Skateboard" : "Skatebrett", "Wine tasting" : "Vinsmaking", "Golf" : "Golf", "Dinner" : "Middag", "Lunch" : "Lunsj", - "Global" : "Global" + "Appointment not found" : "Avtale ikke funnet", + "User not found" : "Fant ikke brukeren" }, "nplurals=2; plural=(n != 1);"); diff --git a/l10n/nb.json b/l10n/nb.json index 7bbd0853ad..c555137f9b 100644 --- a/l10n/nb.json +++ b/l10n/nb.json @@ -1,91 +1,154 @@ { "translations": { + "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\"", - "Successfully sent email to " : "E-post er sendt til", + "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", + "More events" : "Flere hendelser", + "No more events today" : "Ingen flere hendelser i dag", + "No upcoming events" : "Ingen kommende hendelser", "Calendar" : "Kalender", + "Appointments" : "Avtaler", + "Schedule appointment \"%s\"" : "Registrer avtale \"%s\"", + "Schedule an appointment" : "Registrer en avtale", + "Prepare for %s" : "Forbered for %s", + "Follow up for %s" : "Følg opp for %s", + "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", + "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 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:", + "Where:" : "Hvor:", + "Anniversary" : "Jubileum", + "Appointment" : "Avtale", + "Business" : "Forretninger", + "Education" : "Utdanning", + "Holiday" : "Helligdag", + "Meeting" : "Møte", + "Miscellaneous" : "Diverse", + "Non-working hours" : "Utenfor arbeidstid", + "Not in office" : "Ikke på kontoret", + "Personal" : "Personlig", + "Phone call" : "Telefonsamtale", + "Sick day" : "Sykedag", + "Special occasion" : "Spesiell anledning", + "Travel" : "Reise", + "Vacation" : "Ferie", "A Calendar app for Nextcloud" : "En kalender til 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." : "Kalender-appen er et brukergrensesnitt for Nextclouds CalDAV-server. Enkelt synkroniser hendelser fra ulike enheter med Nextcloud og rediger dem på nett.\n\n* 🚀 **Integrering med andre Nextcloud-apper!** Kontakter-appen for øyeblikket – flere kommer.\n* 🌐 **WebCal-støtte!** Vil du se favoritten din lagets kampdager i kalenderen din? Ikke noe problem!\n* 🙋 **Deltakere!** Inviter folk til arrangementene dine\n* ⌚️ **Ledig/Opptatt!** Se når deltakerne er tilgjengelige for å møte\n* ⏰ **Påminnelser!** Få alarmer for hendelser inne nettleseren din og via e-post\n* 🔍 Søk! Finn hendelsene dine med ro\n* ☑️ Oppgaver! Se oppgaver med forfallsdato direkte i kalenderen\n* 🙈 **Vi finner ikke opp hjulet på nytt!** Basert på det flotte [c-dav-biblioteket](https://github.com/nextcloud/cdav-library) , [ical.js](https://github.com/mozilla-comm/ical.js) og [fullcalendar](https://github.com/fullcalendar/fullcalendar) biblioteker.", "Previous day" : "Forrige dag", "Previous week" : "Forrige uke", "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", + "Event" : "Begivenhet", "Today" : "I dag", "Day" : "Dag", "Week" : "Uke", "Month" : "Måned", + "Year" : "År", "List" : "Liste", - "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", - "Download" : "Last ned", - "Unshare from me" : "Fjern deling fra meg", + "Preview" : "Forhåndsvis", + "Copy link" : "Kopier lenke", + "Edit" : "Rediger", "Delete" : "Slett", - "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.", + "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", + "Shared with you by" : "Delt med deg av", + "Edit and share calendar" : "Rediger og del kalender", + "Edit calendar" : "Rediger kalender", + "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 oppsto, kan ikke endre synlighet til kalenderen.", "_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"], + "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 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://)", + "Copy subscription link" : "Kopier abonnementslenke", + "Copying link …" : "Kopierer lenke ...", + "Copied link" : "Kopier lenke", + "Could not copy link" : "Klarte ikke å kopiere lenken", + "Export" : "Eksporter", + "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.", + "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", + "Empty trash bin" : "Tøm papirkurv", + "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 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?", + "_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.", + "Internal link" : "Intern lenke", + "Copy internal link" : "Kopier intern lenke", "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.", + "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 with users or groups" : "Del med brukere eller grupper", - "No users or groups" : "Ingen brukere eller grupper", "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", - "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://)", - "Could not update calendar order." : "Kunne ikke oppdatere rekkefølgen på kalendrene.", + "An error occurred, unable to change the permission of the share." : "En feil oppsto, kan ikke endre rettighetene til delingen.", + "Share with users or groups" : "Del med brukere eller grupper", + "No users or groups" : "Ingen brukere eller grupper", + "Calendar name …" : "Kalendernavn…", + "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"], - "{filename} is an unsupported file-type" : "{filename} er en ustøttet filtype", + "Default attachments location" : "Standard plassering for vedlegg", + "Select the default location for attachments" : "Velg standardplassering for vedlegg", + "Invalid location selected" : "Invalid location selected", + "Attachments folder successfully saved." : "Vedleggsmappen er lagret.", + "Error on saving attachments folder." : "Feil ved lagring av vedleggsmappe.", "{filename} could not be parsed" : "{filename} kunne ikke leses", "No valid files found, aborting import" : "Ingen gyldig filer funnet, avbryter importering", - "Import partially failed. Imported {accepted} out of {total}." : "Importering mislykkes delvis. Importerte {accepted} av {total}. ", - "_Successfully imported %n event_::_Successfully imported %n events._" : ["Importerte %navtale","Importerte %n hendelser."], + "Import partially failed. Imported {accepted} out of {total}." : "Importen mislyktes delvis. Importerte {accepted} av {total}. ", + "_Successfully imported %n event_::_Successfully imported %n events_" : ["Vellykket importert %n hendelse","Vellykket importert %n hendelser"], "Automatic" : "Automatisk", "Automatic ({detected})" : "Automatisk ({detected})", "New setting was not saved successfully." : "Ny innstilling ble ikke lagret.", @@ -98,21 +161,79 @@ "Day view" : "Dagsvisning", "Week view" : "Ukesvisning", "Month view" : "Månedsvisning", + "List view" : "Listevisning", "Actions" : "Handlinger", - "Create event" : "Opprettet hendelse", + "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", "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", "Show weekends" : "Vis helger", - "Show week numbers" : "Vis ukenumre", - "Copy primary CalDAV address" : "Kopier hovedlenke til CalDAV", - "Copy iOS/macOS CalDAV address" : "Kopier iOS/macOS CalDAV-lenke", + "Show week numbers" : "Vis ukenummer", + "Time increments" : "Tidsøkninger", + "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", - "Settings & import" : "Innstillinger og import", - "CalDAV link copied to clipboard." : "CalDAV lenke kopiert til utklippstavlen.", + "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.", + "Appointment was created successfully" : "Appointment was created successfully", + "Appointment was updated successfully" : "Avtalen ble oppdatert", + "_{duration} minute_::_{duration} minutes_" : ["{duration} minutt","{duration} minutter"], + "0 minutes" : "0 minutter", + "_{duration} hour_::_{duration} hours_" : ["{duration} time","{duration} timer"], + "_{duration} day_::_{duration} days_" : ["{duration} dag","{duration} dager"], + "_{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", + "Appointment name" : "Navn på avtale", + "Location" : "Sted", + "Description" : "Beskrivelse", + "Visibility" : "Synlighet", + "Duration" : "Varighet", + "Increments" : "Økninger", + "Additional calendars to check for conflicts" : "Ekstra kalendere for å se etter konflikter", + "Pick time ranges where appointments are allowed" : "Velg tidsrom der avtaler er tillatt", + "to" : "til", + "Delete slot" : "Slett tidsrom", + "No times set" : "Ingen tidsrom satt", + "Add" : "Legg til", + "Monday" : "Mandag", + "Tuesday" : "Tirsdag", + "Wednesday" : "Onsdag", + "Thursday" : "Torsdag", + "Friday" : "Fredag", + "Saturday" : "Lørdag", + "Sunday" : "Søndag", + "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", + "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", + "Update" : "Oppdater", + "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", + "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.", + "Book the appointment" : "Bestill avtalen", + "Reminder" : "Påminnelse", "before at" : "før ved", "Notification" : "Varsel", "Email" : "E-post", @@ -124,190 +245,331 @@ "Save time" : "Lagre tidspunkt", "Remove reminder" : "Fjern påminnelse", "on" : "på", - "at" : "på", - "+ Add reminder" : "+Legg til påminnelse", + "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"], - "No reminders yet" : "Ingen påminnelser enda", - "Availability of attendees, resources and rooms" : "Tilgjengelighet til deltagere, ressurser og rom", + "No attachments" : "Ingen vedlegg", + "Add from Files" : "Legg til fra filer", + "Upload from device" : "Last opp fra enhet", + "Delete file" : "Slett fil", + "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!", + "_{count} attachment_::_{count} attachments_" : ["{count} vedlegg","{count} vedlegg"], + "Invitation accepted" : "Invitasjon akseptert", + "Available" : "Ledig", + "Suggested" : "Foreslått", + "Participation marked as tentative" : "Deltakelse markert som foreløpig", + "Accepted {organizerName}'s invitation" : "Godtok invitasjonen til {organizerName}", + "Not available" : "Ikke ledig", + "Invitation declined" : "Invitasjonen ble avslått", + "Declined {organizerName}'s invitation" : "Avviste invitasjonen til {organizerName}", + "Invitation is delegated" : "Invitasjon er delegert", + "Checking availability" : "Sjekker ledighet", + "Invitation sent" : "Invitasjon er sendt", + "Has not responded to {organizerName}'s invitation yet" : "Har ikke svart på {organizerName} sin invitasjon ennå", + "Availability of attendees, resources and rooms" : "Ledighet til deltagere, ressurser og rom", + "{organizer} (organizer)" : "{organizer} (organisator)", + "Free" : "Ledig", "Busy (tentative)" : "Opptatt (foreløpig)", "Busy" : "Opptatt", "Out of office" : "Fraværende", "Unknown" : "Ukjent", - "{name} accepted your invitation." : "{name} aksepterte din invitasjon.", - "{name} accepted {organizerName}'s invitation." : "{name} aksepterte {organizerName}s invitasjon.", - "{name} declined your invitation." : "{name} avslo din invitasjon.", - "{name} declined {organizerName}'s invitation." : "{name} avslo {organizerName}s invitasjon.", - "{name} has delegated their invitation." : "{name} har delegert deres invitasjon.", - "{name} marked their participation as tentative." : "{name} markerte sin deltakelse som mulig.", - "{name} did not respond to your invitation yet." : "{name} har ikke respondert på din invitasjon enda.", - "{name} did not respond to {organizerName}'s invitation yet." : "{name} har ikke svart på {organizerName}s invitasjon enda.", + "Accept" : "Aksepter", + "Decline" : "Avslå", + "Tentative" : "Foreløpig", + "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.", "Create Talk room for this event" : "Opprett Talk-rom for denne hendelsen", "Show busy times" : "Vis opptatte tider", + "No attendees yet" : "Ingen deltakere enda", "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 e-mail" : "Send e-post", + "Send email" : "Send e-post", "Chairperson" : "Ordstyrer", "Required participant" : "Påkrevd deltaker", - "Optional participant" : "Ønsket deltaker", + "Optional participant" : "Valgfri deltaker", "Non-participant" : "Ikke-deltaker", "Remove attendee" : "Fjern deltaker", - "Search for e-mails, users, contacts, resources or rooms" : "Søk for e-poster, brukere, kontakter, ressurser eller rom", + "Search for emails, users or contacts" : "Søk blant eposter, brukere eller kontaker", "No match found" : "Ingen treff", - "No attendees yet" : "Ingen deltagere enda", "(organizer)" : "(organisator)", + "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", + "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 {startDate}" : "fra {startDate}", "from {startDate} at {startTime}" : "fra {startDate}, {startTime}", "to {endDate}" : "til {endDate}", "to {endDate} at {endTime}" : "til {endDate}, {endTime}", + "Repeat" : "Gjenta", "End repeat" : "Avslutt gjentakelse", + "Select to end repeat" : "Velg for å avslutte gjentakelse", "never" : "aldri", "on date" : "på dato", "after" : "etter", "_time_::_times_" : ["gang","ganger"], + "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", + "second to last" : "nest sist", "last" : "siste", - "Repeat" : "Gjenta", + "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", "_month_::_months_" : ["måned","måneder"], "_year_::_years_" : ["år","år"], - "Monday" : "Mandag", "weekday" : "ukedag", - "weekend day" : "helg", - "Summary" : "Oppsummering", + "weekend day" : "helgedag", + "No recurrence" : "Ingen gjentakelse", + "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.", + "Suggestions" : "Forslag", + "No rooms or resources yet" : "Ingen rom eller ressurser enda", + "Add resource" : "Legg til ressurs", + "Has a projector" : "Har en projektor", + "Has a whiteboard" : "Har en tavle", + "Wheelchair accessible" : "Tilgjengelig for rullestol", + "Remove resource" : "Fjern ressurs", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} sete","{seatingCapacity} seter"], + "Projector" : "Projektor", + "Whiteboard" : "Tavle", + "Search for resources or rooms" : "Søk etter ressurser eller rom", + "available" : "ledig", + "unavailable" : "ikke ledig", + "Room type" : "Romtype", + "Any" : "Hva som helst", + "Minimum seating capacity" : "Minimum sittekapasitet", "More" : "Mer", - "Save" : "Lagre", - "Update" : "Oppdater", "Update this occurrence" : "Oppdater denne hendelsen", "Update this and all future" : "Oppdater denne og fremtidige hendelser", "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 timezone:" : "Velg en tidssone:", + "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}" : "på {formattedDate}", - "from {formattedDate} at {formattedTime}" : "fra {formattedDate} på {formattedTime}", - "to {formattedDate} at {formattedTime}" : "til {formattedDate} på {formattedTime}", - "on {formattedDate} at {formattedTime}" : "på {formattedDate} på {formattedTime}", - "{formattedDate} at {formattedTime}" : "{formattedDate} på {formattedTime}", + "on {formattedDate}" : "den {formattedDate}", + "from {formattedDate} at {formattedTime}" : "fra {formattedDate} kl. {formattedTime}", + "to {formattedDate} at {formattedTime}" : "til {formattedDate} kl. {formattedTime}", + "on {formattedDate} at {formattedTime}" : "den {formattedDate} kl. {formattedTime}", + "{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 tidspunkt", - "Type to search timezone" : "Skriv for å finne tidssone", - "Personal" : "Personlig", - "No more events today" : "Ingen flere hendelser i dag", - "Event does not exist" : "Avtalen finnes ikke", + "Please enter a valid date and time" : "Vennligst tast inn en gyldig dato og et tidspunkt", + "Type to search time zone" : "Skriv for å søke etter tidssone", + "Global" : "Global", + "Subscribed" : "Abonnerer", + "Subscribe" : "Abonner", + "Select date" : "Velg dato", + "Select slot" : "Velg tidsrom", + "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 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}", + "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.", + "Create a new event" : "Opprett en ny hendelse", + "[Today]" : "[Today]", + "[Tomorrow]" : "[Tomorrow]", + "[Yesterday]" : "[Yesterday]", + "[Last] dddd" : "[Last] dddd", + "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", + "Managing shared access" : "Administrere delt tilgang", + "Deny access" : "Nekte adgang", + "Invite" : "Invitere", "Attendees" : "Deltakere", - "Reminders" : "Varsler", + "Resources" : "Ressurser", "Close" : "Lukk", "Show more details" : "Vis flere detaljer", "Subscribe to {name}" : "Abonner på {name}", - "Download {name}" : "Last ned {name}", - "Anniversary" : "Jubileum", - "Appointment" : "Avtale", - "Business" : "Forretninger", - "Education" : "Utdanning", - "Holiday" : "Ferie", - "Meeting" : "Møte", - "Miscellaneous" : "Diverse", - "Non-working hours" : "Ikke-arbeidende tidspunkt", - "Not in office" : "Ikke på kontoret", - "Phone call" : "Telefonsamtale", - "Sick day" : "Sykedag", - "Special occasion" : "Spesiell anledning", - "Travel" : "Reise", - "Vacation" : "Ferie", + "Export {name}" : "Eksporter {name}", + "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}" : "i {monthNames}", + "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", "Untitled task" : "Oppgave uten tittel", - "next year" : "neste år", - "today" : "i dag", - "all-day" : "Heldags", + "Please ask your administrator to enable the Tasks App." : "Ta kontakt med din administrator for å sette opp Oppgaver-appen.", + "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", + "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 når delt", - "When shared show only busy" : "Vis kun opptatt når delt", - "When shared hide this event" : "Skjul denne hendelsen når delt", + "When shared show full event" : "Vis hele hendelsen om den deles", + "When shared show only busy" : "Vis kun opptatt om den deles", + "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", - "Location" : "Sted", "Add a location" : "Legg til et sted", - "Description" : "Beskrivelse", "Add a description" : "Legg til en beskrivelse", "Status" : "Status", "Confirmed" : "Bekreftet", - "Tentative" : "Foreløpig", "Canceled" : "Avbrutt", + "Confirmation about the overall status of the event." : "Bekreftelse om den generelle statusen til arrangementet.", "Show as" : "Vis som", - "Free" : "Ledig", + "Take this event into account when calculating free-busy information." : "Ta hensyn til denne hendelsen når det beregnes ledig-opptatt-informasjon.", "Categories" : "Kategorier", + "Categories help you to structure and organize your events." : "Kategorier hjelper deg med å strukturere og organisere arrangementene dine.", "Search or add categories" : "Søk eller legg til kategorier", "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", + "Attachment {fileName} already exists!" : "Vedlegget {fileName} eksisterer allerede!", + "An error occurred during getting file information" : "Det oppsto en feil under henting av filinformasjon", + "Chat room for event" : "Chatterom for hendelse", + "An error occurred, unable to delete the calendar." : "En feil oppsto, kan ikke slette kalenderen. ", "Imported {filename}" : "Importerte {filename}", + "This is an event reminder." : "Dette er en hendelsespåminnelse.", "Meditation" : "Meditasjon", "Relaxing" : "Avslapping", + "Relax" : "Slappe av", + "Break" : "Pause", + "Commute" : "Pendle", + "Commuting" : "Pendler", + "Shuttle" : "Skyttel", + "Invoice" : "Faktura", + "Finance" : "Finansiere", + "Bank" : "Bank", + "Money" : "Penger", + "Wedding" : "Bryllup", + "Dog" : "Hund", + "Concert" : "Konsert", + "Festival" : "Festival", + "Theater" : "Teater", + "Theatre" : "Teater", "Presentation" : "Presentasjon", - "Present" : "Gave", + "Talk" : "Samtale", + "Speech" : "Tale", + "Deadline" : "Frist", + "Submission" : "Innlevering", + "Reporting" : "Rapportering", "Camping" : "Camping", + "Camp" : "Leir", + "Election" : "Valg", + "Voting" : "Stemmegivning", + "Vote" : "Stemme", + "Barbecue" : "Grill", + "Barbeque" : "Grill", + "Garden" : "Hage", + "Farm" : "Gård", "Movie" : "Film", "Cinema" : "Kino", + "Graduation" : "Avgangseksamen", "Brainstorm" : "Brainstorm", + "Review" : "Anmeldelse", + "Audit" : "Revisjon", + "Inspection" : "Inspeksjon", + "Proofreading" : "Korrekturlesing", + "Baseball" : "Baseball", "Meet" : "Møte", "Planning" : "Planlegge", - "Review" : "Anmeldelse", - "Office" : "Office", - "Party" : "Fest", - "Celebration" : "Feiring", + "Pointing" : "Peking", + "Retrospective" : "Retrospektiv", + "Office" : "Kontor", + "Contributor week" : "Bidragsyter-uke", "Mail" : "E-post", "Soccer" : "Fotball", + "Football" : "Fotball", "Gaming" : "Gaming", - "Play" : "Spill", "Drive" : "Kjøre", + "Driving" : "Kjøring", "Bicycle" : "Sykkel", "Cycle" : "Sykle", + "Cycling" : "Sykling", "Biking" : "Sykling", + "Bike" : "Sykkel", "Podcast" : "Podkast", + "Basketball" : "Basketball", "Fishing" : "Fisking", "Hiking" : "Tur", + "Hike" : "Gå tur", "Art" : "Kunst", "Exhibition" : "Utstilling", "Museum" : "Museum", "Pilates" : "Pilates", "Park" : "Park", + "Walk" : "Gå", "Studying" : "Studere", "Doctor" : "Doktor", "Health" : "Helse", "Dentist" : "Tannlege", + "Hospital" : "Sykehus", "Interview" : "Intervju", "Training" : "Trene", "Practice" : "Øve", "Sports" : "Sport", + "Exercise" : "Trening", + "Work out" : "Trene", + "Working out" : "Trene", "Gym" : "Gym", "Barber" : "Barberer", "Haircut" : "Frisør", + "Hairdresser" : "Frisør", "Exam" : "Eksamen", + "Written test" : "Skriftlig test", + "Oral test" : "Muntlig test", "Working" : "Jobb", "New Years Eve" : "Nyttårsaften", + "NYE" : "Nyttårsaften", "Fireworks" : "Fyrverkeri", "Running" : "Løpe", "Go for a run" : "Løpetur", @@ -315,7 +577,7 @@ "Video-conference" : "Videokonferanse", "Conference-call" : "Telefonkonferanse", "Video-call" : "Videosamtale", - "Video-chat" : "Videosamtale", + "Video-chat" : "Videochat", "Video-meeting" : "Videokonferanse", "Call" : "Ringe", "Calling" : "Ringer", @@ -323,20 +585,27 @@ "Conference" : "Konferanse", "Pizza" : "Pizza", "Travelling" : "Reise", + "Trip" : "Tur", "Journey" : "Reise", "Collaborate" : "Samarbeide", "Pair" : "Par", "Lecture" : "Forelesning", "Seminar" : "Seminar", + "Teaching" : "Undervisning", "Photograph" : "Fotografere", + "Party" : "Fest", + "Celebration" : "Feiring", "Celebrate" : "Feire", + "Birthday" : "Fødselsdag", "Shopping" : "Shoppe", + "Groceries" : "Dagligvarer", "Skate" : "Skate", "Skateboard" : "Skatebrett", "Wine tasting" : "Vinsmaking", "Golf" : "Golf", "Dinner" : "Middag", "Lunch" : "Lunsj", - "Global" : "Global" + "Appointment not found" : "Avtale ikke funnet", + "User not found" : "Fant ikke brukeren" },"pluralForm" :"nplurals=2; plural=(n != 1);" } \ No newline at end of file diff --git a/l10n/nl.js b/l10n/nl.js index 96568f8b77..9349bc9914 100644 --- a/l10n/nl.js +++ b/l10n/nl.js @@ -5,13 +5,45 @@ OC.L10N.register( "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\"", "Unexpected error sending email. Please contact your administrator." : "Kon e-mail niet versturen. Neem contact op met je beheerder.", - "Successfully sent email to " : "De email is succesvol verzonden naar", + "Successfully sent email to %1$s" : "E-mail is succesvol verzonden naar %1$s", "Hello," : "Hallo,", "We wanted to inform you that %s has published the calendar »%s«." : "We willen je laten weten dat %s de agenda %s heeft gepubliceerd.", "Open »%s«" : "Open \"%s\"", "Cheers!" : "Proficiat!", "Upcoming events" : "Aanstaande activiteiten", + "More events" : "Meer activiteiten", + "No more events today" : "Geen activiteiten meer vandaag", + "No upcoming events" : "Geen aanstaande activiteiten", "Calendar" : "Agenda", + "Appointments" : "Afspraken", + "Schedule appointment \"%s\"" : "Plan afspraak \"%s\"", + "Schedule an appointment" : "Plan een afspraak", + "Prepare for %s" : "Voorbereiden op %s", + "Follow up for %s" : "Follow-up voor %s", + "Your appointment \"%s\" with %s needs confirmation" : "Je afspraak \"%s\" met %smoet nog bevestigd worden ", + "Dear %s, please confirm your booking" : "Beste %s, bevestig alsjeblieft je boeking", + "Confirm" : "Bevestigen", + "This confirmation link expires in %s hours." : "Deze bevestigingslink verloopt over %s uur.", + "Your appointment \"%s\" with %s has been accepted" : "Ja afspraak \"%s\" met %sis geaccepteerd", + "Dear %s, your booking has been accepted." : "Beste %s, je boeking is aanvaard.", + "Appointment for:" : "Afspraak voor:", + "Date:" : "Datum:", + "Where:" : "Waar:", + "Anniversary" : "Verjaardag", + "Appointment" : "Afspraak", + "Business" : "Zakelijk", + "Education" : "Onderwijs", + "Holiday" : "Vakantie", + "Meeting" : "Vergadering", + "Miscellaneous" : "Diversen", + "Non-working hours" : "buiten werkuren", + "Not in office" : "Niet in het kantoor", + "Personal" : "Persoonlijk", + "Phone call" : "Telefoongesprek", + "Sick day" : "Ziektedag", + "Special occasion" : "Bijzondere gelegenheid", + "Travel" : "Reizen", + "Vacation" : "Vakantie", "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", @@ -19,41 +51,67 @@ OC.L10N.register( "Previous month" : "Vorige maand", "Next day" : "Volgende dag", "Next week" : "Volgende week", + "Next year" : "Volgend jaar", "Next month" : "Volgende maand", - "+ New event" : "+ Nieuwe afspraak", + "Event" : "Evenement", "Today" : "Vandaag", "Day" : "Dag", "Week" : "Week", "Month" : "Maand", + "Year" : "Jaar", "List" : "Lijst", - "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", - "Download" : "Downloaden", - "Unshare from me" : "Stop delen met mij", + "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", + "Shared with you by" : "Gedeeld met jou door", + "Edit and share calendar" : "Bewerk en deel agenda", + "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.", "_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", + "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://", + "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", + "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.", + "Trash bin" : "Prullenbak", + "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" : "Prullenbak legen", + "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 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?", + "_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.", + "Copy internal link" : "Kopieer interne link", + "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 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", @@ -65,32 +123,24 @@ OC.L10N.register( "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 permissie van de share te wijzigen", - "+ New calendar" : "+ Nieuwe agenda", - "New calendar" : "Nieuwe agenda", - "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://", - "Could not update calendar order." : "Kon de volgorde van agenda's niet bijwerken.", + "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", + "Share with users or groups" : "Deel met gebruikers of groepen", + "No users or groups" : "Geen gebruikers of groepen", + "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"], - "{filename} is an unsupported file-type" : "{filename} is een niet-ondersteund bestandstype", + "Invalid location selected" : "Ongeldige locatie geselecteerd", "{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._" : ["Succesvol geïmporteerd %n object.","Succesvol geïmporteerd %n objecten."], + "_Successfully imported %n event_::_Successfully imported %n events_" : ["%nafspraak succesvol geïmporteerd","%n afspraken succesvol geïmporteerd"], "Automatic" : "Automatisch", "Automatic ({detected})" : "Automatisch ({detected})", "New setting was not saved successfully." : "De nieuwe instelling is niet goed opgeslagen.", @@ -103,21 +153,78 @@ OC.L10N.register( "Day view" : "Dagoverzicht", "Week view" : "Weekoverzicht", "Month view" : "Maandoverzicht", + "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", "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", - "Show weekends" : "Toon weekends", + "Show weekends" : "Toon weekenden", "Show week numbers" : "Tonen weeknummers", + "Time increments" : "Time-toename", + "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", - "Settings & import" : "Instellingen & importeren", + "Calendar settings" : "Agenda instellingen", + "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", + "_{duration} minute_::_{duration} minutes_" : ["{duration} minuut","{duration} minuten"], + "0 minutes" : "0 minuten", + "_{duration} hour_::_{duration} hours_" : ["{duration} uur","{duration} uur"], + "_{duration} day_::_{duration} days_" : ["{duration} dag","{duration} dagen"], + "_{duration} week_::_{duration} weeks_" : ["{duration} week","{duration} weken"], + "_{duration} month_::_{duration} months_" : ["{duration} maand","{duration} maanden"], + "_{duration} year_::_{duration} years_" : ["{duration} jaar","{duration} jaar"], + "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", + "Location" : "Locatie", + "Description" : "Omschrijving", + "Visibility" : "Zichtbaarheid", + "Duration" : "Duur", + "Increments" : "Stappen", + "Additional calendars to check for conflicts" : "Extra agenda's om te controleren op conflicten", + "Pick time ranges where appointments are allowed" : "Selecteer tijden waar afspraken toegestaan zijn", + "to" : "aan", + "Delete slot" : "Verwijder tijdslot", + "No times set" : "Geen tijden ingesteld", + "Add" : "Toevoegen", + "Monday" : "maandag", + "Tuesday" : "dinsdag", + "Wednesday" : "woensdag", + "Thursday" : "donderdag", + "Friday" : "vrijdag", + "Saturday" : "zaterdag", + "Sunday" : "zondag", + "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", + "Limit how far in the future appointments can be booked" : "Beperk hoe in de toekomst afspraken toegevoerd kunnen worden", + "Create appointment" : "Creëer afspraak", + "Edit appointment" : "Bewerk afspraak", + "Update" : "Bijwerken", + "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", "before at" : "ervoor om", "Notification" : "Melding", "Email" : "Email", @@ -131,55 +238,73 @@ OC.L10N.register( "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"], - "No reminders yet" : "Nog geen herinneringen", + "Add from Files" : "Toevoegen uit bestanden", + "Upload from device" : "Uploaden vanaf apparaat", + "Delete file" : "Verwijder bestand", + "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", + "Invitation accepted" : "Uitnodiging geaccepteerd", + "Available" : "Beschikbaar", + "Suggested" : "Aanbevolen", + "Accepted {organizerName}'s invitation" : "Uitnodiging van {organizerName} aanvaard", + "Not available" : "Niet beschikbaar", + "Invitation declined" : "Uitnodiging geweigerd", + "Declined {organizerName}'s invitation" : "Uitnodiging van {organizerName} geweigerd", + "Invitation is delegated" : "Uitnodiging is gedelegeerd", + "Checking availability" : "Beschikbaarheid controleren", + "Invitation sent" : "Uitnodiging verstuurd", "Availability of attendees, resources and rooms" : "Beschikbaarheid van aanwezigen, objecten en ruimtes", + "{organizer} (organizer)" : "{organizer} (organizer)", + "Free" : "Vrij", "Busy (tentative)" : "Bezig (voorlopig)", "Busy" : "Bezet", "Out of office" : "Niet op kantoor", "Unknown" : "Onbekend", - "{name} accepted your invitation." : "{name} heeft je uitnodiging geaccepteerd.", - "{name} accepted {organizerName}'s invitation." : "{name} heeft {organizerName}'s uitnodiging geaccepteerd.", - "{name} declined your invitation." : "{name} heeft je uitnodiging afgewezen.", - "{name} declined {organizerName}'s invitation." : "{name} heeft {organizerName}'s uitnodiging afgewezen.", - "{name} has delegated their invitation." : "{name} heeft de uitnodiging doorgestuurd.", - "{name} marked their participation as tentative." : "{name} heeft de deelname op voorlopig gezet.", - "{name} did not respond to your invitation yet." : "{name} heeft nog niet op je uitnodiging gereageerd.", - "{name} did not respond to {organizerName}'s invitation yet." : "{name} heeft nog niet op {organizerName}'s uitnodiging gereageerd.", + "Accept" : "Accepteren", + "Decline" : "Afwijzen", + "Tentative" : "Voorlopig", + "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.", "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", "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 e-mail" : "Verstuur e-mail", + "Send email" : "Verstuur e-mail", "Chairperson" : "Voorzitter", "Required participant" : "Vereiste deelnemer", "Optional participant" : "Optionele deelnemer", "Non-participant" : "Geen deelnemer", "Remove attendee" : "Verwijder genodigde", - "Search for e-mails, users, contacts, resources or rooms" : "Zoek naar e-mails, gebruikers, contacten, middelen of ruimtes", + "Search for emails, users or contacts" : "Zoek naar e-mails, gebruikers of contactpersonen", "No match found" : "Geen overeenkomst gevonden", - "No attendees yet" : "Nog geen deelnemers", "(organizer)" : "(organisator)", "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", - "Can not 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.", + "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}", + "Repeat" : "Herhaling", "End repeat" : "Beëindig herhalen", "Select to end repeat" : "Selecteer om herhaling te beëindigen", "never" : "geen", "on date" : "op datum", "after" : "na", "_time_::_times_" : ["keer","keer"], - "This event is the recurrence-exception of a recurrence-set. You can not add a recurrence-rule to it." : "Deze afspraak is een uitzondering van een herhaalde-set. Je kunt hieraan geen herhalingsregel toevoegen.", + "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", @@ -187,25 +312,37 @@ OC.L10N.register( "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" : "Herhaling", "Repeat every" : "Herhaal elke", "By day of the month" : "Op dag van de maand", "On the" : "Op de", "_month_::_months_" : ["maand","maanden"], "_year_::_years_" : ["jaar","jaren"], - "Monday" : "maandag", "weekday" : "weekdag", "weekend day" : "weekend dag", - "Summary" : "Samenvatting", + "No recurrence" : "Geen herhaling", "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", + "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", + "Room type" : "Kamer type", + "Any" : "Alle", + "Minimum seating capacity" : "Minimale zit capaciteit", "More" : "Meer", - "Save" : "Opslaan", - "Update" : "Bijwerken", - "Update this occurrence" : "Update deze afspraak", - "Update this and all future" : "Update deze en toekomstige", + "Update this occurrence" : "Deze afspraak bijwerken", + "Update this and all future" : "Deze en toekomstige afspraken 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 timezone:" : "Selecteer een tijdzone:", + "Please select a time zone:" : "Selecteer een tijdzone:", "Pick a time" : "Kies een tijd", "Pick a date" : "Kies een datum", "from {formattedDate}" : "van {formattedDate}", @@ -217,41 +354,43 @@ 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", - "Type to search timezone" : "Type om tijdzone te zoeken", - "Personal" : "Persoonlijk", - "The automatic timezone detection determined your timezone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your timezone manually in the calendar settings." : "De automatisch gedetecteerde tijdzone is UTC. Dit komt waarschijnlijk door beveiligingsmaatregelen van de web browser. Stel de tijdzone handmatig in bij de agenda instellingen.", - "Your configured timezone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your timezone 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", + "Type to search time zone" : "Type om tijdzone te zoeken", + "Global" : "Globaal", + "Subscribed" : "Geabonneerd", + "Subscribe" : "Abonneren", + "Select date" : "Selecteer 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", + "Appointment Details:" : "Afspraak Details:", + "Time:" : "Tijd:", + "Booked for:" : "Geboekt voor:", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "Bedankt. Je boeking van {startDate} tot {endDate} is bevestigd.", + "Book another appointment:" : "Boek nog een afspraak:", + "See all available slots" : "Bekijk alle beschikbare tijdsloten", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "Het tijdslot voor je afspraak van {startDate} tot {endDate} is niet meer beschikbaar.", + "Please book a different slot:" : "Boek alsjeblieft een ander tijdslot:", + "Book an appointment with {name}" : "Boek een afspraak met {name}", + "No public appointments found for {name}" : "Geen publieke afspraken gevonden voor {name}", + "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.", "Create a new event" : "Maak een nieuwe activiteit", "[Today]" : "[Vandaag]", "[Tomorrow]" : "[Morgen]", "[Yesterday]" : "[Gisteren]", "[Last] dddd" : "[Last] dddd", "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", + "Invite" : "Uitnodigen", "Attendees" : "Deelnemers", - "Reminders" : "Herinneringen", + "Resources" : "Bronnen", "Close" : "Sluiten", "Show more details" : "Toon meer details", "Subscribe to {name}" : "Abonneren op {name}", - "Download {name}" : "Download {name}", - "Anniversary" : "Verjaardag", - "Appointment" : "Afspraak", - "Business" : "Zakelijk", - "Education" : "Onderwijs", - "Holiday" : "Vakantie", - "Meeting" : "Vergadering", - "Miscellaneous" : "Diversen", - "Non-working hours" : "buiten werkuren", - "Not in office" : "Niet in het kantoor", - "Phone call" : "Telefoongesprek", - "Sick day" : "Ziektedag", - "Special occasion" : "Bijzondere gelegenheid", - "Travel" : "Reizen", - "Vacation" : "Vakantie", + "Export {name}" : "Exporteer {name}", "Midnight on the day the event starts" : "Middernacht op de dag van de afspraak", "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n dag voor het begin van de afspraak om {formattedHourMinute}","%n dagen voor het begin van de afspraak om {formattedHourMinute}"], "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n week voor de afspraak om {formattedHourMinute}","%n weken voor de afspraak om {formattedHourMinute}"], @@ -284,14 +423,7 @@ OC.L10N.register( "Untitled event" : "Afspraken zonder naam", "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" : "volgende", - "prev year" : "vorig jaar", - "next year" : "volgend jaar", - "today" : "vandaag", - "list" : "lijst", "W" : "W", - "all-day" : "hele dag", "%n more" : "+%n meer", "No events to display" : "Geen activiteiten meer te tonen", "_+%n more_::_+%n more_" : ["+%n meer","+%n meer"], @@ -299,62 +431,91 @@ OC.L10N.register( "Create a new event or change the visible time-range" : "Maak een nieuwe activiteit of wijzig de zichtbare tijdsperiode", "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", + "Lecture hall" : "Collegezaal", + "Seminar room" : "Seminarroom", + "Other" : "Andere", "When shared show" : "Wanneer gedeeld toon", "When shared show full event" : "Wanneer gedeeld, toon gehele afspraak", "When shared show only busy" : "Wanneer gedeeld, toon alleen onbeschikbaarheid", "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.", - "Location" : "Locatie", "Add a location" : "Een locatie toevoegen", - "Description" : "Omschrijving", "Add a description" : "Voeg een omschrijving toe", "Status" : "Status", "Confirmed" : "Bevestigd", - "Tentative" : "Voorlopig", "Canceled" : "Geannuleerd", "Confirmation about the overall status of the event." : "Bevestiging over de globale status van de afspraak.", "Show as" : "Toon als", "Take this event into account when calculating free-busy information." : "Houd rekening met deze afspraak bij het berekenen van vrij-bezetinformatie.", - "Free" : "Vrij", "Categories" : "Categorieën", "Categories help you to structure and organize your events." : "Categorieën helpen je om je afspraken te structureren en organiseren.", "Search or add categories" : "Zoek categorieën of voeg deze toe", "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.", + "Error while sharing file" : "Fout bij delen bestand", "Chat room for event" : "Spreekkamer voor afspraak", + "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", - "Present" : "Aanwezig", + "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", - "Review" : "Voorbeeld", "Office" : "Kantoor", "Contributor week" : "Bijdrager week", - "Party" : "Party", - "Celebration" : "Viering", "Mail" : "E-mail", "Soccer" : "Voetbal", "Football" : "Voetballen", "Gaming" : "Gaming", - "Play" : "Lezen", - "Game" : "Game", "Drive" : "Rijdend", + "Driving" : "Rijden", "Bicycle" : "Fiets", "Cycle" : "Fietsen", + "Cycling" : "Fietsen", "Biking" : "Fietsen", + "Bike" : "Fiets", "Podcast" : "Podcast", "Basketball" : "Basketball", "Fishing" : "Vissen", @@ -365,10 +526,12 @@ OC.L10N.register( "Museum" : "Museum", "Pilates" : "Pilates", "Park" : "Park", + "Walk" : "Wandelen", "Studying" : "Studeren", "Doctor" : "Dokter", "Health" : "Gezondheid", "Dentist" : "Tandarts", + "Hospital" : "Ziekenhuis", "Interview" : "Interview", "Training" : "Training", "Practice" : "Praktijk", @@ -379,7 +542,10 @@ OC.L10N.register( "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", @@ -398,20 +564,27 @@ OC.L10N.register( "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", - "Global" : "Globaal" + "Appointment not found" : "Afspraak niet gevonden", + "User not found" : "Gebruiker niet gevonden" }, "nplurals=2; plural=(n != 1);"); diff --git a/l10n/nl.json b/l10n/nl.json index a8eebacf6f..d12f2a504d 100644 --- a/l10n/nl.json +++ b/l10n/nl.json @@ -3,13 +3,45 @@ "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\"", "Unexpected error sending email. Please contact your administrator." : "Kon e-mail niet versturen. Neem contact op met je beheerder.", - "Successfully sent email to " : "De email is succesvol verzonden naar", + "Successfully sent email to %1$s" : "E-mail is succesvol verzonden naar %1$s", "Hello," : "Hallo,", "We wanted to inform you that %s has published the calendar »%s«." : "We willen je laten weten dat %s de agenda %s heeft gepubliceerd.", "Open »%s«" : "Open \"%s\"", "Cheers!" : "Proficiat!", "Upcoming events" : "Aanstaande activiteiten", + "More events" : "Meer activiteiten", + "No more events today" : "Geen activiteiten meer vandaag", + "No upcoming events" : "Geen aanstaande activiteiten", "Calendar" : "Agenda", + "Appointments" : "Afspraken", + "Schedule appointment \"%s\"" : "Plan afspraak \"%s\"", + "Schedule an appointment" : "Plan een afspraak", + "Prepare for %s" : "Voorbereiden op %s", + "Follow up for %s" : "Follow-up voor %s", + "Your appointment \"%s\" with %s needs confirmation" : "Je afspraak \"%s\" met %smoet nog bevestigd worden ", + "Dear %s, please confirm your booking" : "Beste %s, bevestig alsjeblieft je boeking", + "Confirm" : "Bevestigen", + "This confirmation link expires in %s hours." : "Deze bevestigingslink verloopt over %s uur.", + "Your appointment \"%s\" with %s has been accepted" : "Ja afspraak \"%s\" met %sis geaccepteerd", + "Dear %s, your booking has been accepted." : "Beste %s, je boeking is aanvaard.", + "Appointment for:" : "Afspraak voor:", + "Date:" : "Datum:", + "Where:" : "Waar:", + "Anniversary" : "Verjaardag", + "Appointment" : "Afspraak", + "Business" : "Zakelijk", + "Education" : "Onderwijs", + "Holiday" : "Vakantie", + "Meeting" : "Vergadering", + "Miscellaneous" : "Diversen", + "Non-working hours" : "buiten werkuren", + "Not in office" : "Niet in het kantoor", + "Personal" : "Persoonlijk", + "Phone call" : "Telefoongesprek", + "Sick day" : "Ziektedag", + "Special occasion" : "Bijzondere gelegenheid", + "Travel" : "Reizen", + "Vacation" : "Vakantie", "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", @@ -17,41 +49,67 @@ "Previous month" : "Vorige maand", "Next day" : "Volgende dag", "Next week" : "Volgende week", + "Next year" : "Volgend jaar", "Next month" : "Volgende maand", - "+ New event" : "+ Nieuwe afspraak", + "Event" : "Evenement", "Today" : "Vandaag", "Day" : "Dag", "Week" : "Week", "Month" : "Maand", + "Year" : "Jaar", "List" : "Lijst", - "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", - "Download" : "Downloaden", - "Unshare from me" : "Stop delen met mij", + "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", + "Shared with you by" : "Gedeeld met jou door", + "Edit and share calendar" : "Bewerk en deel agenda", + "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.", "_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", + "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://", + "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", + "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.", + "Trash bin" : "Prullenbak", + "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" : "Prullenbak legen", + "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 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?", + "_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.", + "Copy internal link" : "Kopieer interne link", + "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 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", @@ -63,32 +121,24 @@ "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 permissie van de share te wijzigen", - "+ New calendar" : "+ Nieuwe agenda", - "New calendar" : "Nieuwe agenda", - "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://", - "Could not update calendar order." : "Kon de volgorde van agenda's niet bijwerken.", + "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", + "Share with users or groups" : "Deel met gebruikers of groepen", + "No users or groups" : "Geen gebruikers of groepen", + "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"], - "{filename} is an unsupported file-type" : "{filename} is een niet-ondersteund bestandstype", + "Invalid location selected" : "Ongeldige locatie geselecteerd", "{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._" : ["Succesvol geïmporteerd %n object.","Succesvol geïmporteerd %n objecten."], + "_Successfully imported %n event_::_Successfully imported %n events_" : ["%nafspraak succesvol geïmporteerd","%n afspraken succesvol geïmporteerd"], "Automatic" : "Automatisch", "Automatic ({detected})" : "Automatisch ({detected})", "New setting was not saved successfully." : "De nieuwe instelling is niet goed opgeslagen.", @@ -101,21 +151,78 @@ "Day view" : "Dagoverzicht", "Week view" : "Weekoverzicht", "Month view" : "Maandoverzicht", + "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", "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", - "Show weekends" : "Toon weekends", + "Show weekends" : "Toon weekenden", "Show week numbers" : "Tonen weeknummers", + "Time increments" : "Time-toename", + "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", - "Settings & import" : "Instellingen & importeren", + "Calendar settings" : "Agenda instellingen", + "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", + "_{duration} minute_::_{duration} minutes_" : ["{duration} minuut","{duration} minuten"], + "0 minutes" : "0 minuten", + "_{duration} hour_::_{duration} hours_" : ["{duration} uur","{duration} uur"], + "_{duration} day_::_{duration} days_" : ["{duration} dag","{duration} dagen"], + "_{duration} week_::_{duration} weeks_" : ["{duration} week","{duration} weken"], + "_{duration} month_::_{duration} months_" : ["{duration} maand","{duration} maanden"], + "_{duration} year_::_{duration} years_" : ["{duration} jaar","{duration} jaar"], + "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", + "Location" : "Locatie", + "Description" : "Omschrijving", + "Visibility" : "Zichtbaarheid", + "Duration" : "Duur", + "Increments" : "Stappen", + "Additional calendars to check for conflicts" : "Extra agenda's om te controleren op conflicten", + "Pick time ranges where appointments are allowed" : "Selecteer tijden waar afspraken toegestaan zijn", + "to" : "aan", + "Delete slot" : "Verwijder tijdslot", + "No times set" : "Geen tijden ingesteld", + "Add" : "Toevoegen", + "Monday" : "maandag", + "Tuesday" : "dinsdag", + "Wednesday" : "woensdag", + "Thursday" : "donderdag", + "Friday" : "vrijdag", + "Saturday" : "zaterdag", + "Sunday" : "zondag", + "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", + "Limit how far in the future appointments can be booked" : "Beperk hoe in de toekomst afspraken toegevoerd kunnen worden", + "Create appointment" : "Creëer afspraak", + "Edit appointment" : "Bewerk afspraak", + "Update" : "Bijwerken", + "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", "before at" : "ervoor om", "Notification" : "Melding", "Email" : "Email", @@ -129,55 +236,73 @@ "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"], - "No reminders yet" : "Nog geen herinneringen", + "Add from Files" : "Toevoegen uit bestanden", + "Upload from device" : "Uploaden vanaf apparaat", + "Delete file" : "Verwijder bestand", + "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", + "Invitation accepted" : "Uitnodiging geaccepteerd", + "Available" : "Beschikbaar", + "Suggested" : "Aanbevolen", + "Accepted {organizerName}'s invitation" : "Uitnodiging van {organizerName} aanvaard", + "Not available" : "Niet beschikbaar", + "Invitation declined" : "Uitnodiging geweigerd", + "Declined {organizerName}'s invitation" : "Uitnodiging van {organizerName} geweigerd", + "Invitation is delegated" : "Uitnodiging is gedelegeerd", + "Checking availability" : "Beschikbaarheid controleren", + "Invitation sent" : "Uitnodiging verstuurd", "Availability of attendees, resources and rooms" : "Beschikbaarheid van aanwezigen, objecten en ruimtes", + "{organizer} (organizer)" : "{organizer} (organizer)", + "Free" : "Vrij", "Busy (tentative)" : "Bezig (voorlopig)", "Busy" : "Bezet", "Out of office" : "Niet op kantoor", "Unknown" : "Onbekend", - "{name} accepted your invitation." : "{name} heeft je uitnodiging geaccepteerd.", - "{name} accepted {organizerName}'s invitation." : "{name} heeft {organizerName}'s uitnodiging geaccepteerd.", - "{name} declined your invitation." : "{name} heeft je uitnodiging afgewezen.", - "{name} declined {organizerName}'s invitation." : "{name} heeft {organizerName}'s uitnodiging afgewezen.", - "{name} has delegated their invitation." : "{name} heeft de uitnodiging doorgestuurd.", - "{name} marked their participation as tentative." : "{name} heeft de deelname op voorlopig gezet.", - "{name} did not respond to your invitation yet." : "{name} heeft nog niet op je uitnodiging gereageerd.", - "{name} did not respond to {organizerName}'s invitation yet." : "{name} heeft nog niet op {organizerName}'s uitnodiging gereageerd.", + "Accept" : "Accepteren", + "Decline" : "Afwijzen", + "Tentative" : "Voorlopig", + "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.", "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", "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 e-mail" : "Verstuur e-mail", + "Send email" : "Verstuur e-mail", "Chairperson" : "Voorzitter", "Required participant" : "Vereiste deelnemer", "Optional participant" : "Optionele deelnemer", "Non-participant" : "Geen deelnemer", "Remove attendee" : "Verwijder genodigde", - "Search for e-mails, users, contacts, resources or rooms" : "Zoek naar e-mails, gebruikers, contacten, middelen of ruimtes", + "Search for emails, users or contacts" : "Zoek naar e-mails, gebruikers of contactpersonen", "No match found" : "Geen overeenkomst gevonden", - "No attendees yet" : "Nog geen deelnemers", "(organizer)" : "(organisator)", "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", - "Can not 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.", + "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}", + "Repeat" : "Herhaling", "End repeat" : "Beëindig herhalen", "Select to end repeat" : "Selecteer om herhaling te beëindigen", "never" : "geen", "on date" : "op datum", "after" : "na", "_time_::_times_" : ["keer","keer"], - "This event is the recurrence-exception of a recurrence-set. You can not add a recurrence-rule to it." : "Deze afspraak is een uitzondering van een herhaalde-set. Je kunt hieraan geen herhalingsregel toevoegen.", + "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", @@ -185,25 +310,37 @@ "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" : "Herhaling", "Repeat every" : "Herhaal elke", "By day of the month" : "Op dag van de maand", "On the" : "Op de", "_month_::_months_" : ["maand","maanden"], "_year_::_years_" : ["jaar","jaren"], - "Monday" : "maandag", "weekday" : "weekdag", "weekend day" : "weekend dag", - "Summary" : "Samenvatting", + "No recurrence" : "Geen herhaling", "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", + "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", + "Room type" : "Kamer type", + "Any" : "Alle", + "Minimum seating capacity" : "Minimale zit capaciteit", "More" : "Meer", - "Save" : "Opslaan", - "Update" : "Bijwerken", - "Update this occurrence" : "Update deze afspraak", - "Update this and all future" : "Update deze en toekomstige", + "Update this occurrence" : "Deze afspraak bijwerken", + "Update this and all future" : "Deze en toekomstige afspraken 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 timezone:" : "Selecteer een tijdzone:", + "Please select a time zone:" : "Selecteer een tijdzone:", "Pick a time" : "Kies een tijd", "Pick a date" : "Kies een datum", "from {formattedDate}" : "van {formattedDate}", @@ -215,41 +352,43 @@ "{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", - "Type to search timezone" : "Type om tijdzone te zoeken", - "Personal" : "Persoonlijk", - "The automatic timezone detection determined your timezone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your timezone manually in the calendar settings." : "De automatisch gedetecteerde tijdzone is UTC. Dit komt waarschijnlijk door beveiligingsmaatregelen van de web browser. Stel de tijdzone handmatig in bij de agenda instellingen.", - "Your configured timezone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your timezone 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", + "Type to search time zone" : "Type om tijdzone te zoeken", + "Global" : "Globaal", + "Subscribed" : "Geabonneerd", + "Subscribe" : "Abonneren", + "Select date" : "Selecteer 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", + "Appointment Details:" : "Afspraak Details:", + "Time:" : "Tijd:", + "Booked for:" : "Geboekt voor:", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "Bedankt. Je boeking van {startDate} tot {endDate} is bevestigd.", + "Book another appointment:" : "Boek nog een afspraak:", + "See all available slots" : "Bekijk alle beschikbare tijdsloten", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "Het tijdslot voor je afspraak van {startDate} tot {endDate} is niet meer beschikbaar.", + "Please book a different slot:" : "Boek alsjeblieft een ander tijdslot:", + "Book an appointment with {name}" : "Boek een afspraak met {name}", + "No public appointments found for {name}" : "Geen publieke afspraken gevonden voor {name}", + "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.", "Create a new event" : "Maak een nieuwe activiteit", "[Today]" : "[Vandaag]", "[Tomorrow]" : "[Morgen]", "[Yesterday]" : "[Gisteren]", "[Last] dddd" : "[Last] dddd", "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", + "Invite" : "Uitnodigen", "Attendees" : "Deelnemers", - "Reminders" : "Herinneringen", + "Resources" : "Bronnen", "Close" : "Sluiten", "Show more details" : "Toon meer details", "Subscribe to {name}" : "Abonneren op {name}", - "Download {name}" : "Download {name}", - "Anniversary" : "Verjaardag", - "Appointment" : "Afspraak", - "Business" : "Zakelijk", - "Education" : "Onderwijs", - "Holiday" : "Vakantie", - "Meeting" : "Vergadering", - "Miscellaneous" : "Diversen", - "Non-working hours" : "buiten werkuren", - "Not in office" : "Niet in het kantoor", - "Phone call" : "Telefoongesprek", - "Sick day" : "Ziektedag", - "Special occasion" : "Bijzondere gelegenheid", - "Travel" : "Reizen", - "Vacation" : "Vakantie", + "Export {name}" : "Exporteer {name}", "Midnight on the day the event starts" : "Middernacht op de dag van de afspraak", "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n dag voor het begin van de afspraak om {formattedHourMinute}","%n dagen voor het begin van de afspraak om {formattedHourMinute}"], "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n week voor de afspraak om {formattedHourMinute}","%n weken voor de afspraak om {formattedHourMinute}"], @@ -282,14 +421,7 @@ "Untitled event" : "Afspraken zonder naam", "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" : "volgende", - "prev year" : "vorig jaar", - "next year" : "volgend jaar", - "today" : "vandaag", - "list" : "lijst", "W" : "W", - "all-day" : "hele dag", "%n more" : "+%n meer", "No events to display" : "Geen activiteiten meer te tonen", "_+%n more_::_+%n more_" : ["+%n meer","+%n meer"], @@ -297,62 +429,91 @@ "Create a new event or change the visible time-range" : "Maak een nieuwe activiteit of wijzig de zichtbare tijdsperiode", "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", + "Lecture hall" : "Collegezaal", + "Seminar room" : "Seminarroom", + "Other" : "Andere", "When shared show" : "Wanneer gedeeld toon", "When shared show full event" : "Wanneer gedeeld, toon gehele afspraak", "When shared show only busy" : "Wanneer gedeeld, toon alleen onbeschikbaarheid", "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.", - "Location" : "Locatie", "Add a location" : "Een locatie toevoegen", - "Description" : "Omschrijving", "Add a description" : "Voeg een omschrijving toe", "Status" : "Status", "Confirmed" : "Bevestigd", - "Tentative" : "Voorlopig", "Canceled" : "Geannuleerd", "Confirmation about the overall status of the event." : "Bevestiging over de globale status van de afspraak.", "Show as" : "Toon als", "Take this event into account when calculating free-busy information." : "Houd rekening met deze afspraak bij het berekenen van vrij-bezetinformatie.", - "Free" : "Vrij", "Categories" : "Categorieën", "Categories help you to structure and organize your events." : "Categorieën helpen je om je afspraken te structureren en organiseren.", "Search or add categories" : "Zoek categorieën of voeg deze toe", "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.", + "Error while sharing file" : "Fout bij delen bestand", "Chat room for event" : "Spreekkamer voor afspraak", + "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", - "Present" : "Aanwezig", + "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", - "Review" : "Voorbeeld", "Office" : "Kantoor", "Contributor week" : "Bijdrager week", - "Party" : "Party", - "Celebration" : "Viering", "Mail" : "E-mail", "Soccer" : "Voetbal", "Football" : "Voetballen", "Gaming" : "Gaming", - "Play" : "Lezen", - "Game" : "Game", "Drive" : "Rijdend", + "Driving" : "Rijden", "Bicycle" : "Fiets", "Cycle" : "Fietsen", + "Cycling" : "Fietsen", "Biking" : "Fietsen", + "Bike" : "Fiets", "Podcast" : "Podcast", "Basketball" : "Basketball", "Fishing" : "Vissen", @@ -363,10 +524,12 @@ "Museum" : "Museum", "Pilates" : "Pilates", "Park" : "Park", + "Walk" : "Wandelen", "Studying" : "Studeren", "Doctor" : "Dokter", "Health" : "Gezondheid", "Dentist" : "Tandarts", + "Hospital" : "Ziekenhuis", "Interview" : "Interview", "Training" : "Training", "Practice" : "Praktijk", @@ -377,7 +540,10 @@ "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", @@ -396,20 +562,27 @@ "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", - "Global" : "Globaal" + "Appointment not found" : "Afspraak niet gevonden", + "User not found" : "Gebruiker niet gevonden" },"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 51c5e5de05..1107506ac2 100644 --- a/l10n/nn_NO.js +++ b/l10n/nn_NO.js @@ -7,45 +7,69 @@ OC.L10N.register( "Open »%s«" : "Opna »%s«", "Cheers!" : "Tudelu!", "Calendar" : "Kalender", + "Prepare for %s" : "Klargjer for %s", + "Personal" : "Personleg", "Today" : "I dag", "Day" : "Dag", "Week" : "Veke", "Month" : "Månad", - "Download" : "Last ned", + "Year" : "År", + "Copy link" : "Kopier lenkje", + "Edit" : "Rediger", "Delete" : "Slett", + "New calendar" : "Ny kalender", + "Export" : "Eksporter", + "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", - "New calendar" : "Ny kalender", + "Save" : "Lagre", "Cancel" : "Avbryt", + "List view" : "Liste visning", "Actions" : "Handlingar", + "Location" : "Stad", + "Description" : "Skildring", + "to" : "til", + "Add" : "Legg til", + "Monday" : "Måndag", + "Tuesday" : "Tysdag", + "Wednesday" : "Onsdag", + "Thursday" : "Torsdag", + "Friday" : "Fredag", + "Saturday" : "Laurdag", + "Sunday" : "Søndag", + "Update" : "Oppdater", + "Your email address" : "Di epost-adresse", "Email" : "E-post", + "Delete file" : "Slett fil", "Unknown" : "Ukjend", + "Tentative" : "Førebels", + "Send email" : "Send e-post", + "Repeat" : "Gjenta", "never" : "aldri", "after" : "etter", - "Repeat" : "Gjenta", - "Monday" : "Måndag", - "Summary" : "Oppsumering", + "last" : "siste", + "Room type" : "Romtype", "More" : "Meir", - "Save" : "Lagre", - "Update" : "Oppdater", - "Personal" : "Personleg", + "Global" : "Global", "Details" : "Detaljar", "Attendees" : "Deltakarar", - "Reminders" : "Påminningar", "Close" : "Lukk", "Daily" : "Kvar dag", "Weekly" : "Kvar veke", - "today" : "i dag", + "Meeting room" : "Møterom", + "Other" : "Anna", "When shared show full event" : "Når delt, vis heile hendinga", "When shared show only busy" : "Når delt, vis berre oppteken", "When shared hide this event" : "Når delt, gøym denne hendinga", - "Location" : "Stad", - "Description" : "Skildring", "Status" : "Status", "Confirmed" : "Stadfesta", - "Tentative" : "Førebels", + "Money" : "Pengar", + "Talk" : "Prat", "Mail" : "Post", - "Play" : "Spel", - "Global" : "Global" + "Birthday" : "Bursdag" }, "nplurals=2; plural=(n != 1);"); diff --git a/l10n/nn_NO.json b/l10n/nn_NO.json index c7beb0ddf4..c14be7a99f 100644 --- a/l10n/nn_NO.json +++ b/l10n/nn_NO.json @@ -5,45 +5,69 @@ "Open »%s«" : "Opna »%s«", "Cheers!" : "Tudelu!", "Calendar" : "Kalender", + "Prepare for %s" : "Klargjer for %s", + "Personal" : "Personleg", "Today" : "I dag", "Day" : "Dag", "Week" : "Veke", "Month" : "Månad", - "Download" : "Last ned", + "Year" : "År", + "Copy link" : "Kopier lenkje", + "Edit" : "Rediger", "Delete" : "Slett", + "New calendar" : "Ny kalender", + "Export" : "Eksporter", + "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", - "New calendar" : "Ny kalender", + "Save" : "Lagre", "Cancel" : "Avbryt", + "List view" : "Liste visning", "Actions" : "Handlingar", + "Location" : "Stad", + "Description" : "Skildring", + "to" : "til", + "Add" : "Legg til", + "Monday" : "Måndag", + "Tuesday" : "Tysdag", + "Wednesday" : "Onsdag", + "Thursday" : "Torsdag", + "Friday" : "Fredag", + "Saturday" : "Laurdag", + "Sunday" : "Søndag", + "Update" : "Oppdater", + "Your email address" : "Di epost-adresse", "Email" : "E-post", + "Delete file" : "Slett fil", "Unknown" : "Ukjend", + "Tentative" : "Førebels", + "Send email" : "Send e-post", + "Repeat" : "Gjenta", "never" : "aldri", "after" : "etter", - "Repeat" : "Gjenta", - "Monday" : "Måndag", - "Summary" : "Oppsumering", + "last" : "siste", + "Room type" : "Romtype", "More" : "Meir", - "Save" : "Lagre", - "Update" : "Oppdater", - "Personal" : "Personleg", + "Global" : "Global", "Details" : "Detaljar", "Attendees" : "Deltakarar", - "Reminders" : "Påminningar", "Close" : "Lukk", "Daily" : "Kvar dag", "Weekly" : "Kvar veke", - "today" : "i dag", + "Meeting room" : "Møterom", + "Other" : "Anna", "When shared show full event" : "Når delt, vis heile hendinga", "When shared show only busy" : "Når delt, vis berre oppteken", "When shared hide this event" : "Når delt, gøym denne hendinga", - "Location" : "Stad", - "Description" : "Skildring", "Status" : "Status", "Confirmed" : "Stadfesta", - "Tentative" : "Førebels", + "Money" : "Pengar", + "Talk" : "Prat", "Mail" : "Post", - "Play" : "Spel", - "Global" : "Global" + "Birthday" : "Bursdag" },"pluralForm" :"nplurals=2; plural=(n != 1);" } \ No newline at end of file diff --git a/l10n/oc.js b/l10n/oc.js index 56acdb1e83..8557416faa 100644 --- a/l10n/oc.js +++ b/l10n/oc.js @@ -1,52 +1,95 @@ OC.L10N.register( "calendar", { + "Hello," : "Adieusiatz, ", "Open »%s«" : "Dobrir « %s »", "Cheers!" : "A lèu !", + "Upcoming events" : "Eveniments venents", "Calendar" : "Calendièr", + "Appointments" : "Rendetz-vos", + "Confirm" : "Confirmar", + "Date:" : "Data :", + "Where:" : "Ont :", + "Anniversary" : "Anniversari", + "Appointment" : "Rendetz-vos", + "Business" : "Afar", + "Education" : "Educacion", + "Holiday" : "Vacanças", + "Meeting" : "Reünion", + "Personal" : "Personal", + "Travel" : "Viatge", + "Vacation" : "Vacanças", + "A Calendar app for Nextcloud" : "Una aplicacion de calendièr per Nextcloud", "Previous day" : "Jorn passat", "Previous week" : "Setmana passada", "Previous month" : "Mes passat", "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", - "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", - "Download" : "Telecargar", + "Preview" : "Apercebut", + "Copy link" : "Copiar lo ligam", + "Edit" : "Modificar", "Delete" : "Suprimir", + "Add new" : "Apondre novèl", + "Untitled calendar" : "Calendièr sens nom", + "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", "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", + "Delete share link" : "Suprimir lo ligam de partatge", + "Deleting share link …" : "Supression del ligam de partatge …", "can edit" : "pòt modificar", - "+ New calendar" : "+ Calendièr novèl", - "New calendar" : "Calendièr novèl", + "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", "Show weekends" : "Monstrar las dimenjadas", + "0 minutes" : "0 minuta", + "Location" : "Emplaçament", + "Description" : "Descripcion", + "Visibility" : "Visibilitat", + "Duration" : "Durada", + "to" : "a", + "Add" : "Apondre", + "Monday" : "Diluns", + "Tuesday" : "Dimars", + "Wednesday" : "Dimècres", + "Thursday" : "Dijòus", + "Friday" : "Divendres", + "Saturday" : "Dissabte", + "Sunday" : "Dimenge", + "Update" : "Metre a jorn", + "Your name" : "Vòstre nom", + "Your email address" : "Vòstra adreça electronica", + "Reminder" : "Recòrd", "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", @@ -57,10 +100,21 @@ OC.L10N.register( "_hour_::_hours_" : ["ora","oras"], "_day_::_days_" : ["jorn","jorns"], "_week_::_weeks_" : ["setmana","setmanas"], - "No reminders yet" : "Cap de rapèl pel moment", + "Delete file" : "Suprimir fichièr", + "Choose a file to add as attachment" : "Causissètz un fichièr de jónher al messatge", + "Available" : "Disponible", + "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", + "Event title" : "Títol de l’eveniment", "All day" : "Tota la jornada", + "Repeat" : "Repetir", "never" : "pas jamai", "after" : "aprèp", "_time_::_times_" : ["còp","còps"], @@ -69,24 +123,33 @@ OC.L10N.register( "fourth" : "quatren", "fifth" : "cinquen", "last" : "darrièr", - "Repeat" : "Repetir", - "Monday" : "Diluns", + "_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", - "Save" : "Salvar", - "Update" : "Metre a jorn", "Pick a time" : "Causir una ora", "Pick a date" : "Causir una data", + "from {formattedDate}" : "a partir de {formattedDate}", + "to {formattedDate}" : "cap a {formattedDate}", + "Type to search time zone" : "Picar per cercar un fus orari", + "Global" : "Global", + "Subscribe" : "S'abonar", + "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", - "Reminders" : "Rapèls", "Close" : "Tampar", - "Download {name}" : "Telecargar {name}", - "Anniversary" : "Anniversari", - "Appointment" : "Rendetz-vos", - "Business" : "Afar", - "Education" : "Educacion", - "Holiday" : "Vacanças", - "Meeting" : "Reünion", "Daily" : "Cada jorn", "Weekly" : "Cada setmana", "Monthly" : "Cada mes", @@ -98,36 +161,63 @@ OC.L10N.register( "_%n time_::_%n times_" : ["%n còp","%n còps"], "Untitled event" : "Eveniment sens nom", "Untitled task" : "Prètzfach sens nom", - "today" : "uèi", - "Location" : "Emplaçament", + "Other" : "Autre", "Add a location" : "Apondre un lòc", - "Description" : "Descripcion", "Add a description" : "Apondre una descripcion", "Status" : "Estat", "Confirmed" : "Confirmat", - "Tentative" : "Provisòri", "Canceled" : "Anullat", "Categories" : "Categorias", "Custom color" : "Color personalizada", + "Error while sharing file" : "Error pendent lo partiment del fichièr", + "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", - "Party" : "Fèsta", + "Graduation" : "Remesa dels diplòmas", + "Brainstorm" : "Pluèja d’idèa", + "Audit" : "Audit", + "Inspection" : "Inspeccion", "Mail" : "Mail", "Gaming" : "Vidèo-jòc", - "Play" : "Aviar", - "Game" : "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", - "Global" : "Global" + "User not found" : "Utilizaire pas trobat" }, "nplurals=2; plural=(n > 1);"); diff --git a/l10n/oc.json b/l10n/oc.json index c017d18c74..68381e4ffc 100644 --- a/l10n/oc.json +++ b/l10n/oc.json @@ -1,50 +1,93 @@ { "translations": { + "Hello," : "Adieusiatz, ", "Open »%s«" : "Dobrir « %s »", "Cheers!" : "A lèu !", + "Upcoming events" : "Eveniments venents", "Calendar" : "Calendièr", + "Appointments" : "Rendetz-vos", + "Confirm" : "Confirmar", + "Date:" : "Data :", + "Where:" : "Ont :", + "Anniversary" : "Anniversari", + "Appointment" : "Rendetz-vos", + "Business" : "Afar", + "Education" : "Educacion", + "Holiday" : "Vacanças", + "Meeting" : "Reünion", + "Personal" : "Personal", + "Travel" : "Viatge", + "Vacation" : "Vacanças", + "A Calendar app for Nextcloud" : "Una aplicacion de calendièr per Nextcloud", "Previous day" : "Jorn passat", "Previous week" : "Setmana passada", "Previous month" : "Mes passat", "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", - "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", - "Download" : "Telecargar", + "Preview" : "Apercebut", + "Copy link" : "Copiar lo ligam", + "Edit" : "Modificar", "Delete" : "Suprimir", + "Add new" : "Apondre novèl", + "Untitled calendar" : "Calendièr sens nom", + "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", "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", + "Delete share link" : "Suprimir lo ligam de partatge", + "Deleting share link …" : "Supression del ligam de partatge …", "can edit" : "pòt modificar", - "+ New calendar" : "+ Calendièr novèl", - "New calendar" : "Calendièr novèl", + "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", "Show weekends" : "Monstrar las dimenjadas", + "0 minutes" : "0 minuta", + "Location" : "Emplaçament", + "Description" : "Descripcion", + "Visibility" : "Visibilitat", + "Duration" : "Durada", + "to" : "a", + "Add" : "Apondre", + "Monday" : "Diluns", + "Tuesday" : "Dimars", + "Wednesday" : "Dimècres", + "Thursday" : "Dijòus", + "Friday" : "Divendres", + "Saturday" : "Dissabte", + "Sunday" : "Dimenge", + "Update" : "Metre a jorn", + "Your name" : "Vòstre nom", + "Your email address" : "Vòstra adreça electronica", + "Reminder" : "Recòrd", "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", @@ -55,10 +98,21 @@ "_hour_::_hours_" : ["ora","oras"], "_day_::_days_" : ["jorn","jorns"], "_week_::_weeks_" : ["setmana","setmanas"], - "No reminders yet" : "Cap de rapèl pel moment", + "Delete file" : "Suprimir fichièr", + "Choose a file to add as attachment" : "Causissètz un fichièr de jónher al messatge", + "Available" : "Disponible", + "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", + "Event title" : "Títol de l’eveniment", "All day" : "Tota la jornada", + "Repeat" : "Repetir", "never" : "pas jamai", "after" : "aprèp", "_time_::_times_" : ["còp","còps"], @@ -67,24 +121,33 @@ "fourth" : "quatren", "fifth" : "cinquen", "last" : "darrièr", - "Repeat" : "Repetir", - "Monday" : "Diluns", + "_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", - "Save" : "Salvar", - "Update" : "Metre a jorn", "Pick a time" : "Causir una ora", "Pick a date" : "Causir una data", + "from {formattedDate}" : "a partir de {formattedDate}", + "to {formattedDate}" : "cap a {formattedDate}", + "Type to search time zone" : "Picar per cercar un fus orari", + "Global" : "Global", + "Subscribe" : "S'abonar", + "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", - "Reminders" : "Rapèls", "Close" : "Tampar", - "Download {name}" : "Telecargar {name}", - "Anniversary" : "Anniversari", - "Appointment" : "Rendetz-vos", - "Business" : "Afar", - "Education" : "Educacion", - "Holiday" : "Vacanças", - "Meeting" : "Reünion", "Daily" : "Cada jorn", "Weekly" : "Cada setmana", "Monthly" : "Cada mes", @@ -96,36 +159,63 @@ "_%n time_::_%n times_" : ["%n còp","%n còps"], "Untitled event" : "Eveniment sens nom", "Untitled task" : "Prètzfach sens nom", - "today" : "uèi", - "Location" : "Emplaçament", + "Other" : "Autre", "Add a location" : "Apondre un lòc", - "Description" : "Descripcion", "Add a description" : "Apondre una descripcion", "Status" : "Estat", "Confirmed" : "Confirmat", - "Tentative" : "Provisòri", "Canceled" : "Anullat", "Categories" : "Categorias", "Custom color" : "Color personalizada", + "Error while sharing file" : "Error pendent lo partiment del fichièr", + "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", - "Party" : "Fèsta", + "Graduation" : "Remesa dels diplòmas", + "Brainstorm" : "Pluèja d’idèa", + "Audit" : "Audit", + "Inspection" : "Inspeccion", "Mail" : "Mail", "Gaming" : "Vidèo-jòc", - "Play" : "Aviar", - "Game" : "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", - "Global" : "Global" + "User not found" : "Utilizaire pas trobat" },"pluralForm" :"nplurals=2; plural=(n > 1);" } \ No newline at end of file diff --git a/l10n/pl.js b/l10n/pl.js index 19b8117115..4f73681a5e 100644 --- a/l10n/pl.js +++ b/l10n/pl.js @@ -1,100 +1,178 @@ 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«", "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 " : "Pomyślnie wysłano wiadomość e-mail na adres ", + "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.", "Open »%s«" : "Otwórz »%s«", "Cheers!" : "Zdrówko!", "Upcoming events" : "Nadchodzące wydarzenia", + "More events" : "Więcej wydarzeń", + "No more events today" : "Nie ma więcej wydarzeń na dzisiaj", + "No upcoming events" : "Brak nadchodzących 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}) zarezerwował 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\" with %s needs confirmation" : "Twoje spotkanie \"%s\" z %s wymaga potwierdzenia", + "Dear %s, please confirm your booking" : "Drogi %s, proszę o potwierdzenie rezerwacji", + "Confirm" : "Potwierdź", + "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 by replying to this email or by visiting their profile page." : "Jeśli mimo wszystko chcesz anulować spotkanie, skontaktuj się ze swoim organizatorem, odpowiadając na ten e-mail lub odwiedzając jego 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." : "Drogi %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:", + "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." : "Drogi %s, %s (%s) zarezerwował z tobą spotkanie.", + "Anniversary" : "Rocznica", + "Appointment" : "Spotkanie", + "Business" : "Biznes", + "Education" : "Edukacja", + "Holiday" : "Święto", + "Meeting" : "Zebranie", + "Miscellaneous" : "Różne", + "Non-working hours" : "Godziny wolne od pracy", + "Not in office" : "Poza biurem", + "Personal" : "Osobiste", + "Phone call" : "Zadzwonić", + "Sick day" : "Dzień chorobowy", + "Special occasion" : "Specjalna okazja", + "Travel" : "Podróż", + "Vacation" : "Urlop", + "Custom Categories" : "Kategorie niestandardowe", + "Collaborative Tags" : "Wspólne tagi", + "Standard Categories" : "Kategorie standardowe", "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).", "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 wydarzenie", + "Event" : "Wydarzenie", + "Create new event" : "Utwórz nowe wydarzenie", "Today" : "Dzisiaj", "Day" : "Dzień", "Week" : "Tydzień", "Month" : "Miesiąc", + "Year" : "Rok", "List" : "Lista", - "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", - "Download" : "Pobierz", - "Unshare from me" : "Nie udostępniaj mi", + "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", + "Shared with you by" : "Udostępnione Tobie przez", + "Edit and share calendar" : "Edytuj i udostępnij kalendarz", + "Edit calendar" : "Edytuj kalendarz", + "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.", - "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"], + "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", + "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://)", + "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", + "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.", + "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", + "Empty trash bin" : "Opróżnij kosz", + "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 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?", + "_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.", + "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", "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ępniania", - "Deleting share link …" : "Usuwanie linku udostępniania…", + "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." : "Kopiuj do schowka kod osadzenia.", - "Embed code could not be copied to clipboard." : "Nie można skopiować do schowka kodu do osadzenia.", - "Unpublishing calendar failed" : "Nie udało się cofnąć publikacji kalendarza", + "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", + "can edit" : "może edytować", + "Unshare with {displayName}" : "Zatrzymaj udostępnianie z {displayName}", + "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.", "Share with users or groups" : "Udostępnij użytkownikom lub grupom", "No users or groups" : "Brak użytkowników lub grup", - "can edit" : "może edytować", - "Unshare with {displayName}" : "Cofnij 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ępniania kalendarza.", - "An error occurred, unable to change the permission of the share." : "Wystąpił błąd, nie można zmienić uprawnień do udostępniania.", - "+ New calendar" : "+ Nowy kalendarz", - "New calendar" : "Nowy kalendarz", - "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://)", - "Could not update calendar order." : "Nie można zaktualizować sortowania w kalendarzu.", + "Calendar name …" : "Nazwa kalendarza…", + "Share calendar" : "Udostępnij kalendarz", + "Unshare from me" : "Nie udostępniaj mi", + "Save" : "Zapisz", + "Failed to save calendar name and color" : "Nie udało się zapisać nazwy i koloru kalendarza", "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"], - "{filename} is an unsupported file-type" : "{filename} jest nieobsługiwanym typem pliku", + "Default attachments location" : "Domyślna lokalizacja załączników", + "Select the default location for attachments" : "Wybierz domyślną lokalizację załączników", + "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.", "{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ń"], + "_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ń"], "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ótów", + "Shortcut overview" : "Przegląd skrótu", "or" : "lub", "Navigation" : "Nawigacja", "Previous period" : "Poprzedni okres", @@ -103,21 +181,83 @@ 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", "Show shortcuts" : "Pokaż skróty", + "Editor" : "Edytor", + "Close editor" : "Zamknij edytor", + "Save edited event" : "Zapisz edytowane wydarzenie", + "Delete edited event" : "Usuń edytowane wydarzenie", + "Duplicate event" : "Zduplikowane wydarzenie", "Enable birthday calendar" : "Włącz kalendarz urodzinowy", "Show tasks in calendar" : "Pokaż zadania w kalendarzu", "Enable simplified editor" : "Włącz uproszczony edytor", - "Limit visible events per view" : "Ogranicz widoczne wydarzenia w widoku", + "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 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", - "Settings & import" : "Ustawienia i import", + "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", + "_{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"], + "_{duration} day_::_{duration} days_" : ["{duration} dzień","{duration} dni","{duration} dni","{duration} dni"], + "_{duration} week_::_{duration} weeks_" : ["{duration} tydzień","{duration} tygodnie","{duration} tygodni","{duration} tygodni"], + "_{duration} month_::_{duration} months_" : ["{duration} miesiąc","{duration} miesiące","{duration} miesięcy","{duration} miesięcy"], + "_{duration} year_::_{duration} years_" : ["{duration} rok","{duration} lata","{duration} lat","{duration} lat"], + "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 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", + "Increments" : "Zwiększ", + "Additional calendars to check for conflicts" : "Dodatkowe kalendarze do sprawdzania konfliktów", + "Pick time ranges where appointments are allowed" : "Wybierz przedziały czasowe, w których dozwolone są spotkania", + "to" : "do", + "Delete slot" : "Usuń przedział czasowy", + "No times set" : "Nie ustawiono czasu", + "Add" : "Dodaj", + "Monday" : "Poniedziałek", + "Tuesday" : "Wtorek", + "Wednesday" : "Środa", + "Thursday" : "Czwartek", + "Friday" : "Piątek", + "Saturday" : "Sobota", + "Sunday" : "Niedziela", + "Add time before and after the event" : "Dodaj czas przed i po wydarzeniu", + "Before the event" : "Przed wydarzeniem", + "After the event" : "Po wydarzeniu", + "Planning restrictions" : "Ograniczenia planowania", + "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", + "Update" : "Aktualizuj", + "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", + "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", "before at" : "przed", "Notification" : "Powiadomienie", "Email" : "E-mail", @@ -131,55 +271,80 @@ OC.L10N.register( "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"], - "No reminders yet" : "Nie ma jeszcze przypomnień", + "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", + "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!", + "_{count} attachment_::_{count} attachments_" : ["{count} załącznik","{count} załączniki","{count} załączników","{count} załączników"], + "Invitation accepted" : "Zaproszenie przyjęte", + "Available" : "Dostępny", + "Suggested" : "Zasugerował", + "Participation marked as tentative" : "Uczestnictwo oznaczone jako niepewne", + "Accepted {organizerName}'s invitation" : "Zaakceptowano zaproszenie od {organizerName}", + "Not available" : "Niedostępny", + "Invitation declined" : "Zaproszenie odrzucone", + "Declined {organizerName}'s invitation" : "Odrzucono zaproszenie od {organizerName}", + "Invitation is delegated" : "Zaproszenie jest oddelegowane", + "Checking availability" : "Sprawdzanie dostępności", + "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", + "{organizer} (organizer)" : "{organizer} (organizator)", + "Free" : "Wolny", "Busy (tentative)" : "Zajęty (wstępnie)", "Busy" : "Zajęty", "Out of office" : "Biuro nie funkcjonuje", "Unknown" : "Nieznany", - "{name} accepted your invitation." : "{name} zaakceptował Twoje zaproszenie.", - "{name} accepted {organizerName}'s invitation." : "{name} zaakceptował zaproszenie {organizerName}.", - "{name} declined your invitation." : "{name} odrzucił Twoje zaproszenie.", - "{name} declined {organizerName}'s invitation." : "{name} odrzucił zaproszenie {organizerName}.", - "{name} has delegated their invitation." : "{name} przekazał swoje zaproszenie.", - "{name} marked their participation as tentative." : "{name} oznaczył swoje uczestnictwo jako wstępne.", - "{name} did not respond to your invitation yet." : "{name} jeszcze nie odpowiedział na Twoje zaproszenie.", - "{name} did not respond to {organizerName}'s invitation yet." : "{name} jeszcze nie odpowiedział na zaproszenie {organizerName}.", + "Accept" : "Akceptuj", + "Decline" : "Odrzuć", + "Tentative" : "Niepewne", + "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.", + "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", + "No attendees yet" : "Brak uczestników", + "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 e-mail" : "Wyślij e-mail", + "Send email" : "Wyślij e-mail", "Chairperson" : "Przewodniczący", "Required participant" : "Wymagany uczestnik", "Optional participant" : "Opcjonalny uczestnik", "Non-participant" : "Nieuczestniczący", "Remove attendee" : "Usuń uczestnika", - "Search for e-mails, users, contacts, resources or rooms" : "Wyszukaj e-mail, użytkowników, kontakty, zasoby lub pokoje", + "Search for emails, users or contacts" : "Szukaj e-maili, użytkowników lub kontaktów", "No match found" : "Nie znaleziono pasujących", - "No attendees yet" : "Brak uczestników", "(organizer)" : "(organizator)", "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ń", - "Can not modify all-day setting for events that are part of a recurrence-set." : "Nie można modyfikować ustawienia całodziennego dla wydarzeń, które są częścią zestawu cyklicznego.", + "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}", + "Repeat" : "Powtarzaj", "End repeat" : "Zakończ powtarzanie", "Select to end repeat" : "Wybierz, aby zakończyć powtarzanie", "never" : "nigdy", "on date" : "o czasie", "after" : "po", "_time_::_times_" : ["raz","razy","razy","razy"], - "This event is the recurrence-exception of a recurrence-set. You can not add a recurrence-rule to it." : "To wydarzenie stanowi wyjątek cykliczny zestawu rekurencyjnego. Nie można do niego dodać reguły cykliczności.", + "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", @@ -187,25 +352,37 @@ OC.L10N.register( "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" : "Powtarzaj", "Repeat every" : "Powtórz każdy", "By day of the month" : "Według dnia miesiąca", "On the" : "Na", "_month_::_months_" : ["miesiąc","miesiące","miesięcy","miesiące"], "_year_::_years_" : ["rok","lata","lat","lata"], - "Monday" : "Poniedziałek", "weekday" : "dzień powszedni", "weekend day" : "dzień weekendu", - "Summary" : "Podsumowanie", - "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 powtarzania niektóre rekurencje mogą zostać utracone.", + "No recurrence" : "Brak powtarzalności", + "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", + "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", + "Room type" : "Rodzaj pokoju", + "Any" : "Dowolny", + "Minimum seating capacity" : "Minimalna ilość miejsc", "More" : "Więcej", - "Save" : "Zapisz", - "Update" : "Aktualizuj", "Update this occurrence" : "Zaktualizuj to wydarzenie", "Update this and all future" : "Zaktualizuj to i wszystkie przyszłe", "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 timezone:" : "Wybierz strefę czasową:", + "Please select a time zone:" : "Wybierz strefę czasową:", "Pick a time" : "Wybierz czas", "Pick a date" : "Wybierz datę", "from {formattedDate}" : "od {formattedDate}", @@ -217,41 +394,52 @@ 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ę", - "Type to search timezone" : "Wpisz, aby wyszukać strefę czasową", - "Personal" : "Osobiste", - "The automatic timezone detection determined your timezone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your timezone 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 timezone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your timezone 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ń", + "Type to search time zone" : "Wpisz, aby wyszukać strefę czasową", + "Global" : "Globalnie", + "Public holiday calendars" : "Kalendarze świąt państwowych", + "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}", + "By {authors}" : "Autorstwa {authors}", + "Subscribed" : "Zasubskrybowano", + "Subscribe" : "Subskrybuj", + "Holidays in {region}" : "Święta w {region}", + "An error occurred, unable to create the public holiday calendar." : "Wystąpił błąd. Nie można utworzyć kalendarza świąt państwowych.", + "Select 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", + "Appointment Details:" : "Szczegóły spotkania:", + "Time:" : "Czas:", + "Booked for:" : "Zarezerwowane dla:", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "Dziękujemy. Twoje spotkanie od {startDate} do {endDate} zostało potwierdzone.", + "Book another appointment:" : "Umów się na kolejne spotkanie:", + "See all available slots" : "Zobacz wszystkie dostępne wolne terminy", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "Termin na spotkanie od {startDate} do {endDate} nie jest już dostępny.", + "Please book a different slot:" : "Zarezerwuj inny termin:", + "Book an appointment with {name}" : "Umów się na spotkanie z {name}", + "No public appointments found for {name}" : "Nie znaleziono publicznych spotkań dla {name}", + "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.", "Create a new event" : "Utwórz nowe wydarzenie", "[Today]" : "[Dzisiaj]", "[Tomorrow]" : "[Jutro]", "[Yesterday]" : "[Wczoraj]", "[Last] dddd" : "[Ostatni] dddd", "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", + "Managing shared access" : "Zarządzanie dostępem", + "Deny access" : "Brak dostępu", + "Invite" : "Zaproś", "Attendees" : "Uczestnicy", - "Reminders" : "Przypomnienia", + "Resources" : "Zasoby", + "_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"], "Close" : "Zamknij", "Show more details" : "Pokaż więcej szczegółów", "Subscribe to {name}" : "Subskrybuj dla {name}", - "Download {name}" : "Pobierz {name}", - "Anniversary" : "Rocznica", - "Appointment" : "Spotkanie", - "Business" : "Biznes", - "Education" : "Edukacja", - "Holiday" : "Święto", - "Meeting" : "Zebranie", - "Miscellaneous" : "Różne", - "Non-working hours" : "Godziny wolne od pracy", - "Not in office" : "Poza biurem", - "Phone call" : "Zadzwonić", - "Sick day" : "Dzień chorobowy", - "Special occasion" : "Specjalna okazja", - "Travel" : "Podróż", - "Vacation" : "Urlop", + "Export {name}" : "Eksportuj {nazwa}", "Midnight on the day the event starts" : "O północy rozpocznie się wydarzenie", "_%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}"], @@ -284,77 +472,103 @@ OC.L10N.register( "Untitled event" : "Wydarzenie bez tytułu", "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", - "today" : "dzisiaj", - "list" : "lista", "W" : "T", - "all-day" : "cały dzień", "%n more" : "%n więcej", "No events to display" : "Brak wydarzeń do wyświetlenia", - "_+%n more_::_+%n more_" : ["+ %n więcej","+ %n więcej","+ %n więcej","+ %n więcej"], + "_+%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", "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ń", + "Lecture hall" : "Sala wykładowa", + "Seminar room" : "Pokój seminaryjny", + "Other" : "Inny", "When shared show" : "Po udostępnieniu pokaż", "When shared show full event" : "Gdy udostępniony pokaż pełne wydarzenie", "When shared show only busy" : "Gdy udostępniony pokaż tylko zajęty", "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.", - "Location" : "Lokalizacja", "Add a location" : "Dodaj lokalizację", - "Description" : "Opis", "Add a description" : "Dodaj opis", "Status" : "Status", "Confirmed" : "Potwierdzone", - "Tentative" : "Niepewne", "Canceled" : "Anulowane", "Confirmation about the overall status of the event." : "Potwierdzenie ogólnego statusu wydarzenia.", "Show as" : "Pokaż jako", "Take this event into account when calculating free-busy information." : "Weź to wydarzenie pod kontem sprawdzenia informacji o wolnym czasie.", - "Free" : "Wolny", "Categories" : "Kategorie", "Categories help you to structure and organize your events." : "Kategorie pomagają uporządkować i organizować wydarzenia.", "Search or add categories" : "Wyszukaj lub dodaj kategorie", "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.", + "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.", "Chat room for event" : "Pokój rozmów dla wydarzenia", + "An error occurred, unable to delete the calendar." : "Wystąpił błąd, nie można usunąć kalendarza.", "Imported {filename}" : "Zaimportowano {filename}", + "This is an event reminder." : "Przypomnienie o wydarzeniu.", "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", - "Present" : "Prezent", + "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ą", - "Review" : "Przegląd", "Office" : "Biuro", "Contributor week" : "Tydzień współpracownika", - "Party" : "Przyjęcie", - "Celebration" : "Uroczystość", "Mail" : "Poczta", "Soccer" : "Piłka nożna", "Football" : "Futbol", "Gaming" : "Hazard", - "Play" : "Granie", - "Game" : "Mecz", "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", @@ -365,10 +579,12 @@ OC.L10N.register( "Museum" : "Muzeum", "Pilates" : "Pilates", "Park" : "Park", + "Walk" : "Spacer", "Studying" : "Studia", "Doctor" : "Lekarz", "Health" : "Zdrowie", "Dentist" : "Dentysta", + "Hospital" : "Szpital", "Interview" : "Wywiad", "Training" : "Trening", "Practice" : "Praktyka", @@ -379,7 +595,10 @@ OC.L10N.register( "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", @@ -392,26 +611,33 @@ OC.L10N.register( "Video-call" : "Połączenie wideo", "Video-chat" : "Rozmowa wideo", "Video-meeting" : "Spotkanie wideo", - "Call" : "Rozmowa telefoniczna", + "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", - "Global" : "Ogólnie" + "Appointment not found" : "Nie znaleziono spotkania", + "User not found" : "Nie znaleziono użytkownika" }, "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 87faf83244..6c5524ee6a 100644 --- a/l10n/pl.json +++ b/l10n/pl.json @@ -1,98 +1,176 @@ { "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«", "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 " : "Pomyślnie wysłano wiadomość e-mail na adres ", + "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.", "Open »%s«" : "Otwórz »%s«", "Cheers!" : "Zdrówko!", "Upcoming events" : "Nadchodzące wydarzenia", + "More events" : "Więcej wydarzeń", + "No more events today" : "Nie ma więcej wydarzeń na dzisiaj", + "No upcoming events" : "Brak nadchodzących 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}) zarezerwował 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\" with %s needs confirmation" : "Twoje spotkanie \"%s\" z %s wymaga potwierdzenia", + "Dear %s, please confirm your booking" : "Drogi %s, proszę o potwierdzenie rezerwacji", + "Confirm" : "Potwierdź", + "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 by replying to this email or by visiting their profile page." : "Jeśli mimo wszystko chcesz anulować spotkanie, skontaktuj się ze swoim organizatorem, odpowiadając na ten e-mail lub odwiedzając jego 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." : "Drogi %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:", + "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." : "Drogi %s, %s (%s) zarezerwował z tobą spotkanie.", + "Anniversary" : "Rocznica", + "Appointment" : "Spotkanie", + "Business" : "Biznes", + "Education" : "Edukacja", + "Holiday" : "Święto", + "Meeting" : "Zebranie", + "Miscellaneous" : "Różne", + "Non-working hours" : "Godziny wolne od pracy", + "Not in office" : "Poza biurem", + "Personal" : "Osobiste", + "Phone call" : "Zadzwonić", + "Sick day" : "Dzień chorobowy", + "Special occasion" : "Specjalna okazja", + "Travel" : "Podróż", + "Vacation" : "Urlop", + "Custom Categories" : "Kategorie niestandardowe", + "Collaborative Tags" : "Wspólne tagi", + "Standard Categories" : "Kategorie standardowe", "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).", "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 wydarzenie", + "Event" : "Wydarzenie", + "Create new event" : "Utwórz nowe wydarzenie", "Today" : "Dzisiaj", "Day" : "Dzień", "Week" : "Tydzień", "Month" : "Miesiąc", + "Year" : "Rok", "List" : "Lista", - "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", - "Download" : "Pobierz", - "Unshare from me" : "Nie udostępniaj mi", + "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", + "Shared with you by" : "Udostępnione Tobie przez", + "Edit and share calendar" : "Edytuj i udostępnij kalendarz", + "Edit calendar" : "Edytuj kalendarz", + "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.", - "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"], + "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", + "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://)", + "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", + "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.", + "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", + "Empty trash bin" : "Opróżnij kosz", + "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 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?", + "_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.", + "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", "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ępniania", - "Deleting share link …" : "Usuwanie linku udostępniania…", + "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." : "Kopiuj do schowka kod osadzenia.", - "Embed code could not be copied to clipboard." : "Nie można skopiować do schowka kodu do osadzenia.", - "Unpublishing calendar failed" : "Nie udało się cofnąć publikacji kalendarza", + "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", + "can edit" : "może edytować", + "Unshare with {displayName}" : "Zatrzymaj udostępnianie z {displayName}", + "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.", "Share with users or groups" : "Udostępnij użytkownikom lub grupom", "No users or groups" : "Brak użytkowników lub grup", - "can edit" : "może edytować", - "Unshare with {displayName}" : "Cofnij 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ępniania kalendarza.", - "An error occurred, unable to change the permission of the share." : "Wystąpił błąd, nie można zmienić uprawnień do udostępniania.", - "+ New calendar" : "+ Nowy kalendarz", - "New calendar" : "Nowy kalendarz", - "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://)", - "Could not update calendar order." : "Nie można zaktualizować sortowania w kalendarzu.", + "Calendar name …" : "Nazwa kalendarza…", + "Share calendar" : "Udostępnij kalendarz", + "Unshare from me" : "Nie udostępniaj mi", + "Save" : "Zapisz", + "Failed to save calendar name and color" : "Nie udało się zapisać nazwy i koloru kalendarza", "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"], - "{filename} is an unsupported file-type" : "{filename} jest nieobsługiwanym typem pliku", + "Default attachments location" : "Domyślna lokalizacja załączników", + "Select the default location for attachments" : "Wybierz domyślną lokalizację załączników", + "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.", "{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ń"], + "_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ń"], "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ótów", + "Shortcut overview" : "Przegląd skrótu", "or" : "lub", "Navigation" : "Nawigacja", "Previous period" : "Poprzedni okres", @@ -101,21 +179,83 @@ "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", "Show shortcuts" : "Pokaż skróty", + "Editor" : "Edytor", + "Close editor" : "Zamknij edytor", + "Save edited event" : "Zapisz edytowane wydarzenie", + "Delete edited event" : "Usuń edytowane wydarzenie", + "Duplicate event" : "Zduplikowane wydarzenie", "Enable birthday calendar" : "Włącz kalendarz urodzinowy", "Show tasks in calendar" : "Pokaż zadania w kalendarzu", "Enable simplified editor" : "Włącz uproszczony edytor", - "Limit visible events per view" : "Ogranicz widoczne wydarzenia w widoku", + "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 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", - "Settings & import" : "Ustawienia i import", + "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", + "_{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"], + "_{duration} day_::_{duration} days_" : ["{duration} dzień","{duration} dni","{duration} dni","{duration} dni"], + "_{duration} week_::_{duration} weeks_" : ["{duration} tydzień","{duration} tygodnie","{duration} tygodni","{duration} tygodni"], + "_{duration} month_::_{duration} months_" : ["{duration} miesiąc","{duration} miesiące","{duration} miesięcy","{duration} miesięcy"], + "_{duration} year_::_{duration} years_" : ["{duration} rok","{duration} lata","{duration} lat","{duration} lat"], + "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 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", + "Increments" : "Zwiększ", + "Additional calendars to check for conflicts" : "Dodatkowe kalendarze do sprawdzania konfliktów", + "Pick time ranges where appointments are allowed" : "Wybierz przedziały czasowe, w których dozwolone są spotkania", + "to" : "do", + "Delete slot" : "Usuń przedział czasowy", + "No times set" : "Nie ustawiono czasu", + "Add" : "Dodaj", + "Monday" : "Poniedziałek", + "Tuesday" : "Wtorek", + "Wednesday" : "Środa", + "Thursday" : "Czwartek", + "Friday" : "Piątek", + "Saturday" : "Sobota", + "Sunday" : "Niedziela", + "Add time before and after the event" : "Dodaj czas przed i po wydarzeniu", + "Before the event" : "Przed wydarzeniem", + "After the event" : "Po wydarzeniu", + "Planning restrictions" : "Ograniczenia planowania", + "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", + "Update" : "Aktualizuj", + "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", + "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", "before at" : "przed", "Notification" : "Powiadomienie", "Email" : "E-mail", @@ -129,55 +269,80 @@ "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"], - "No reminders yet" : "Nie ma jeszcze przypomnień", + "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", + "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!", + "_{count} attachment_::_{count} attachments_" : ["{count} załącznik","{count} załączniki","{count} załączników","{count} załączników"], + "Invitation accepted" : "Zaproszenie przyjęte", + "Available" : "Dostępny", + "Suggested" : "Zasugerował", + "Participation marked as tentative" : "Uczestnictwo oznaczone jako niepewne", + "Accepted {organizerName}'s invitation" : "Zaakceptowano zaproszenie od {organizerName}", + "Not available" : "Niedostępny", + "Invitation declined" : "Zaproszenie odrzucone", + "Declined {organizerName}'s invitation" : "Odrzucono zaproszenie od {organizerName}", + "Invitation is delegated" : "Zaproszenie jest oddelegowane", + "Checking availability" : "Sprawdzanie dostępności", + "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", + "{organizer} (organizer)" : "{organizer} (organizator)", + "Free" : "Wolny", "Busy (tentative)" : "Zajęty (wstępnie)", "Busy" : "Zajęty", "Out of office" : "Biuro nie funkcjonuje", "Unknown" : "Nieznany", - "{name} accepted your invitation." : "{name} zaakceptował Twoje zaproszenie.", - "{name} accepted {organizerName}'s invitation." : "{name} zaakceptował zaproszenie {organizerName}.", - "{name} declined your invitation." : "{name} odrzucił Twoje zaproszenie.", - "{name} declined {organizerName}'s invitation." : "{name} odrzucił zaproszenie {organizerName}.", - "{name} has delegated their invitation." : "{name} przekazał swoje zaproszenie.", - "{name} marked their participation as tentative." : "{name} oznaczył swoje uczestnictwo jako wstępne.", - "{name} did not respond to your invitation yet." : "{name} jeszcze nie odpowiedział na Twoje zaproszenie.", - "{name} did not respond to {organizerName}'s invitation yet." : "{name} jeszcze nie odpowiedział na zaproszenie {organizerName}.", + "Accept" : "Akceptuj", + "Decline" : "Odrzuć", + "Tentative" : "Niepewne", + "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.", + "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", + "No attendees yet" : "Brak uczestników", + "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 e-mail" : "Wyślij e-mail", + "Send email" : "Wyślij e-mail", "Chairperson" : "Przewodniczący", "Required participant" : "Wymagany uczestnik", "Optional participant" : "Opcjonalny uczestnik", "Non-participant" : "Nieuczestniczący", "Remove attendee" : "Usuń uczestnika", - "Search for e-mails, users, contacts, resources or rooms" : "Wyszukaj e-mail, użytkowników, kontakty, zasoby lub pokoje", + "Search for emails, users or contacts" : "Szukaj e-maili, użytkowników lub kontaktów", "No match found" : "Nie znaleziono pasujących", - "No attendees yet" : "Brak uczestników", "(organizer)" : "(organizator)", "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ń", - "Can not modify all-day setting for events that are part of a recurrence-set." : "Nie można modyfikować ustawienia całodziennego dla wydarzeń, które są częścią zestawu cyklicznego.", + "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}", + "Repeat" : "Powtarzaj", "End repeat" : "Zakończ powtarzanie", "Select to end repeat" : "Wybierz, aby zakończyć powtarzanie", "never" : "nigdy", "on date" : "o czasie", "after" : "po", "_time_::_times_" : ["raz","razy","razy","razy"], - "This event is the recurrence-exception of a recurrence-set. You can not add a recurrence-rule to it." : "To wydarzenie stanowi wyjątek cykliczny zestawu rekurencyjnego. Nie można do niego dodać reguły cykliczności.", + "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", @@ -185,25 +350,37 @@ "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" : "Powtarzaj", "Repeat every" : "Powtórz każdy", "By day of the month" : "Według dnia miesiąca", "On the" : "Na", "_month_::_months_" : ["miesiąc","miesiące","miesięcy","miesiące"], "_year_::_years_" : ["rok","lata","lat","lata"], - "Monday" : "Poniedziałek", "weekday" : "dzień powszedni", "weekend day" : "dzień weekendu", - "Summary" : "Podsumowanie", - "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 powtarzania niektóre rekurencje mogą zostać utracone.", + "No recurrence" : "Brak powtarzalności", + "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", + "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", + "Room type" : "Rodzaj pokoju", + "Any" : "Dowolny", + "Minimum seating capacity" : "Minimalna ilość miejsc", "More" : "Więcej", - "Save" : "Zapisz", - "Update" : "Aktualizuj", "Update this occurrence" : "Zaktualizuj to wydarzenie", "Update this and all future" : "Zaktualizuj to i wszystkie przyszłe", "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 timezone:" : "Wybierz strefę czasową:", + "Please select a time zone:" : "Wybierz strefę czasową:", "Pick a time" : "Wybierz czas", "Pick a date" : "Wybierz datę", "from {formattedDate}" : "od {formattedDate}", @@ -215,41 +392,52 @@ "{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ę", - "Type to search timezone" : "Wpisz, aby wyszukać strefę czasową", - "Personal" : "Osobiste", - "The automatic timezone detection determined your timezone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your timezone 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 timezone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your timezone 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ń", + "Type to search time zone" : "Wpisz, aby wyszukać strefę czasową", + "Global" : "Globalnie", + "Public holiday calendars" : "Kalendarze świąt państwowych", + "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}", + "By {authors}" : "Autorstwa {authors}", + "Subscribed" : "Zasubskrybowano", + "Subscribe" : "Subskrybuj", + "Holidays in {region}" : "Święta w {region}", + "An error occurred, unable to create the public holiday calendar." : "Wystąpił błąd. Nie można utworzyć kalendarza świąt państwowych.", + "Select 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", + "Appointment Details:" : "Szczegóły spotkania:", + "Time:" : "Czas:", + "Booked for:" : "Zarezerwowane dla:", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "Dziękujemy. Twoje spotkanie od {startDate} do {endDate} zostało potwierdzone.", + "Book another appointment:" : "Umów się na kolejne spotkanie:", + "See all available slots" : "Zobacz wszystkie dostępne wolne terminy", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "Termin na spotkanie od {startDate} do {endDate} nie jest już dostępny.", + "Please book a different slot:" : "Zarezerwuj inny termin:", + "Book an appointment with {name}" : "Umów się na spotkanie z {name}", + "No public appointments found for {name}" : "Nie znaleziono publicznych spotkań dla {name}", + "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.", "Create a new event" : "Utwórz nowe wydarzenie", "[Today]" : "[Dzisiaj]", "[Tomorrow]" : "[Jutro]", "[Yesterday]" : "[Wczoraj]", "[Last] dddd" : "[Ostatni] dddd", "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", + "Managing shared access" : "Zarządzanie dostępem", + "Deny access" : "Brak dostępu", + "Invite" : "Zaproś", "Attendees" : "Uczestnicy", - "Reminders" : "Przypomnienia", + "Resources" : "Zasoby", + "_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"], "Close" : "Zamknij", "Show more details" : "Pokaż więcej szczegółów", "Subscribe to {name}" : "Subskrybuj dla {name}", - "Download {name}" : "Pobierz {name}", - "Anniversary" : "Rocznica", - "Appointment" : "Spotkanie", - "Business" : "Biznes", - "Education" : "Edukacja", - "Holiday" : "Święto", - "Meeting" : "Zebranie", - "Miscellaneous" : "Różne", - "Non-working hours" : "Godziny wolne od pracy", - "Not in office" : "Poza biurem", - "Phone call" : "Zadzwonić", - "Sick day" : "Dzień chorobowy", - "Special occasion" : "Specjalna okazja", - "Travel" : "Podróż", - "Vacation" : "Urlop", + "Export {name}" : "Eksportuj {nazwa}", "Midnight on the day the event starts" : "O północy rozpocznie się wydarzenie", "_%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}"], @@ -282,77 +470,103 @@ "Untitled event" : "Wydarzenie bez tytułu", "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", - "today" : "dzisiaj", - "list" : "lista", "W" : "T", - "all-day" : "cały dzień", "%n more" : "%n więcej", "No events to display" : "Brak wydarzeń do wyświetlenia", - "_+%n more_::_+%n more_" : ["+ %n więcej","+ %n więcej","+ %n więcej","+ %n więcej"], + "_+%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", "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ń", + "Lecture hall" : "Sala wykładowa", + "Seminar room" : "Pokój seminaryjny", + "Other" : "Inny", "When shared show" : "Po udostępnieniu pokaż", "When shared show full event" : "Gdy udostępniony pokaż pełne wydarzenie", "When shared show only busy" : "Gdy udostępniony pokaż tylko zajęty", "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.", - "Location" : "Lokalizacja", "Add a location" : "Dodaj lokalizację", - "Description" : "Opis", "Add a description" : "Dodaj opis", "Status" : "Status", "Confirmed" : "Potwierdzone", - "Tentative" : "Niepewne", "Canceled" : "Anulowane", "Confirmation about the overall status of the event." : "Potwierdzenie ogólnego statusu wydarzenia.", "Show as" : "Pokaż jako", "Take this event into account when calculating free-busy information." : "Weź to wydarzenie pod kontem sprawdzenia informacji o wolnym czasie.", - "Free" : "Wolny", "Categories" : "Kategorie", "Categories help you to structure and organize your events." : "Kategorie pomagają uporządkować i organizować wydarzenia.", "Search or add categories" : "Wyszukaj lub dodaj kategorie", "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.", + "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.", "Chat room for event" : "Pokój rozmów dla wydarzenia", + "An error occurred, unable to delete the calendar." : "Wystąpił błąd, nie można usunąć kalendarza.", "Imported {filename}" : "Zaimportowano {filename}", + "This is an event reminder." : "Przypomnienie o wydarzeniu.", "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", - "Present" : "Prezent", + "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ą", - "Review" : "Przegląd", "Office" : "Biuro", "Contributor week" : "Tydzień współpracownika", - "Party" : "Przyjęcie", - "Celebration" : "Uroczystość", "Mail" : "Poczta", "Soccer" : "Piłka nożna", "Football" : "Futbol", "Gaming" : "Hazard", - "Play" : "Granie", - "Game" : "Mecz", "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", @@ -363,10 +577,12 @@ "Museum" : "Muzeum", "Pilates" : "Pilates", "Park" : "Park", + "Walk" : "Spacer", "Studying" : "Studia", "Doctor" : "Lekarz", "Health" : "Zdrowie", "Dentist" : "Dentysta", + "Hospital" : "Szpital", "Interview" : "Wywiad", "Training" : "Trening", "Practice" : "Praktyka", @@ -377,7 +593,10 @@ "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", @@ -390,26 +609,33 @@ "Video-call" : "Połączenie wideo", "Video-chat" : "Rozmowa wideo", "Video-meeting" : "Spotkanie wideo", - "Call" : "Rozmowa telefoniczna", + "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", - "Global" : "Ogólnie" + "Appointment not found" : "Nie znaleziono spotkania", + "User not found" : "Nie znaleziono użytkownika" },"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 17c2e51c44..34a7dc10c9 100644 --- a/l10n/pt_BR.js +++ b/l10n/pt_BR.js @@ -1,59 +1,137 @@ 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«", "Unexpected error sending email. Please contact your administrator." : "Erro inesperado ao enviar e-mail. Entre em contato com o administrador.", - "Successfully sent email to " : "E-mail enviado a", + "Successfully sent email to %1$s" : "E-mail enviado com sucesso para %1$s", "Hello," : "Olá,", "We wanted to inform you that %s has published the calendar »%s«." : "Informamos que %s publicou o calendário »%s«.", "Open »%s«" : "Abrir »%s«", "Cheers!" : "Saudações!", "Upcoming events" : "Próximos eventos", + "More events" : "Mais eventos", + "No more events today" : "Sem mais eventos para hoje", + "No upcoming events" : "Nenhum evento próximo", + "%1$s with %2$s" : "%1$s com %2$s", "Calendar" : "Calendário", + "New booking {booking}" : "Novo agendamento {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" : "Agendamentos", + "Schedule appointment \"%s\"" : "Reservar agendamento \"1%s\"", + "Schedule an appointment" : "Reserve um agendamento", + "%1$s - %2$s" : "%1$s - %2$s", + "Prepare for %s" : "Prepare para 1%s", + "Follow up for %s" : "Acompanhamento para 1%s", + "Your appointment \"%s\" with %s needs confirmation" : "Seu agendamento \"%s\" com %sprecisa de confirmação", + "Dear %s, please confirm your booking" : "Caro 1%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 by replying to this email or by visiting their profile page." : "Caso deseje cancelar o agendamento, por favor, entre em contato com o organizador respondendo este e-mail ou visitando sua página de perfil.", + "Your appointment \"%s\" with %s has been accepted" : "Seu agendamento \"%s\" com %s foi aceito", + "Dear %s, your booking has been accepted." : "Olá %s. Seu convite foi aceito.", + "Appointment for:" : "Agendamento para:", + "Date:" : "Data:", + "You will receive a link with the confirmation email" : "Você receberá um link com o e-mail de confirmação", + "Where:" : "Local:", + "Comment:" : "Comentário:", + "You have a new appointment booking \"%s\" from %s" : "Tem uma nova reserva \"%s\" de %s", + "Dear %s, %s (%s) booked an appointment with you." : "Caro %s, %s(%s) reservou um horário com você.", + "Anniversary" : "Aniversário", + "Appointment" : "Agendamento", + "Business" : "Negócio", + "Education" : "Educação", + "Holiday" : "Feriado", + "Meeting" : "Reunião", + "Miscellaneous" : "Diversos", + "Non-working hours" : "Horas fora do expediente", + "Not in office" : "Fora do escritório", + "Personal" : "Pessoal", + "Phone call" : "Chamada telefônica", + "Sick day" : "Dia ruim", + "Special occasion" : "Ocasião especial", + "Travel" : "Viagem", + "Vacation" : "Férias", + "Custom Categories" : "Categorias personalizadas", + "Collaborative Tags" : "Etiquetas Colaborativas", + "Standard Categories" : "Categorias padrão", "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).", "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", + "Event" : "Evento", + "Create new event" : "Criar novo evento", "Today" : "Hoje", "Day" : "Dia", "Week" : "Semana", "Month" : "Mês", + "Year" : "Ano", "List" : "Lista", - "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", - "Download" : "Baixar", - "Unshare from me" : "Descompartilhar comigo", + "Preview" : "Previsão", + "Copy link" : "Copiar o 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 agendamento para a área de transferência", + "Add new" : "Adicionar novo", + "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", + "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.", + "_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"], + "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...", + "Add public holiday calendar" : "Adicionar calendário de feriados", + "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://)", + "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", + "Export" : "Exportar", "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.", - "_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"], - "_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"], + "Trash bin" : "Lixeira", + "Loading deleted items." : "Carregando itens excluídos.", + "You do not have any deleted items." : "Você não possui itens excluídos.", + "Name" : "Nome", + "Deleted" : "Excluído", + "Restore" : "Restaurar", + "Delete permanently" : "Excluir permanentemente", + "Empty trash bin" : "Esvaziar lixeira", + "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 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?", + "_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} dias","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.", + "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", "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", @@ -64,33 +142,33 @@ OC.L10N.register( "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 despublicar o calendário", - "Share with users or groups" : "Compartilhar com usuários ou grupos", - "No users or groups" : "Nenhum usuário ou grupo", + "Unpublishing calendar failed" : "Erro ao remover a publicação do calendário", "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 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.", - "+ New calendar" : "+ Novo calendário", - "New calendar" : "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 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://)", - "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", + "Calendar name …" : "Nome do calendário…", + "Share calendar" : "Compartilhar calendário", + "Unshare from me" : "Descompartilhar comigo", + "Save" : "Salvar", + "Failed to save calendar name and color" : "Falha ao salvar o nome e a cor do calendário", "Import calendars" : "Importar calendários", "Please select a calendar to import into …" : "Selecione o calendário para onde importar...", "Filename" : "Nome de arquivo", "Calendar to import into" : "Calendário a importar", "Cancel" : "Cancelar", - "_Import calendar_::_Import calendars_" : ["Importar calendário","Importar calendários"], - "{filename} is an unsupported file-type" : "{filename} é um tipo de arquivo não suportado", + "_Import calendar_::_Import calendars_" : ["Importar calendário","Importar calendários","Importar calendários"], + "Default attachments location" : "Default attachments location", + "Select the default location for attachments" : "Select the default location for attachments", + "Invalid location selected" : "Invalidar localização selecionada", + "Attachments folder successfully saved." : "Attachments folder successfully saved.", + "Error on saving attachments folder." : "Error on saving attachments folder.", "{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", "Import partially failed. Imported {accepted} out of {total}." : "Erro na importação. Importado {accepted} de {total}.", - "_Successfully imported %n event_::_Successfully imported %n events._" : ["%n evento importado.","%n eventos importados."], + "_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.", @@ -103,21 +181,83 @@ OC.L10N.register( "Day view" : "Visão diária", "Week view" : "Visão semanal", "Month view" : "Visão mensal", + "Year view" : "Visualização do ano", + "List view" : "Exibição de lista", "Actions" : "Ações", "Create event" : "Criar evento", "Show shortcuts" : "Mostrar atalhos", + "Editor" : "Editor", + "Close editor" : "Fechar editor", + "Save edited event" : "Salvar evento editado", + "Delete edited event" : "Excluir evento editado", + "Duplicate event" : "Evento duplicado", "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" : "Limit the number of events displayed in the monthly view", "Show weekends" : "Mostrar fins de semana", "Show week numbers" : "Exibir o número das semanas", + "Time increments" : "Incrementos de tempo", + "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", - "Settings & import" : "Configurações & Importação", + "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 agendamento foi criado com sucesso", + "Appointment was updated successfully" : "O agendamento foi 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"], + "_{duration} day_::_{duration} days_" : ["{duration} dia","{duration} dias","{duration} dias"], + "_{duration} week_::_{duration} weeks_" : ["{duration} semana","{duration} semanas","{duration} semanas"], + "_{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 agendamentos, 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", + "Appointment name" : "Nome do agendamento", + "Location" : "Localização", + "Create a Talk room" : "Criar uma sala de conversa", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "Um link exclusivo será gerado para cada consulta agendada 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 serão permitidos agendamentos", + "to" : "para", + "Delete slot" : "Excluir vaga", + "No times set" : "Nenhum horário definido", + "Add" : "Adicionar", + "Monday" : "Segunda-feira", + "Tuesday" : "Terça-feira", + "Wednesday" : "Quarta-feira", + "Thursday" : "Quinta-feira", + "Friday" : "Sexta-feira", + "Saturday" : "Sábado", + "Sunday" : "Domingo", + "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", + "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 agendamentos futuros podem ser reservados", + "Create appointment" : "Criar agendamento", + "Edit appointment" : "Editar agendamento", + "Update" : "Atualizar", + "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.", + "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 reservar o agendamento. Tente novamente mais tarde ou entre em contato com o organizador.", + "Book the appointment" : "Marcar o agendamento", + "Reminder" : "Lembrete", "before at" : "antes das", "Notification" : "Notificação", "Email" : "E-mail", @@ -131,55 +271,81 @@ OC.L10N.register( "on" : "ligado", "at" : "em", "+ Add reminder" : "+ Adicionar lembrete", - "_second_::_seconds_" : ["segundo","segundos"], - "_minute_::_minutes_" : ["minuto","minutos"], - "_hour_::_hours_" : ["hora","horas"], - "_day_::_days_" : ["dia","dias"], - "_week_::_weeks_" : ["semana","semanas"], - "No reminders yet" : "Sem comentários ainda", + "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"], + "No attachments" : "No attachments", + "Add from Files" : "Adicionar a partir de Arquivos", + "Upload from device" : "Enviar do dispositivo", + "Delete file" : "Excluir arquivo", + "Choose a file to add as attachment" : "Escolha um arquivo para adicionar como anexo", + "Choose a file to share as a link" : "Escolher um arquivo para compartilhar como link", + "Attachment {name} already exist!" : "Attachment {name} already exist!", + "_{count} attachment_::_{count} attachments_" : ["{count} anexo","{count} anexos","{count} anexos"], + "Invitation accepted" : "Convite aceito", + "Available" : "Disponível", + "Suggested" : "Sugerido", + "Participation marked as tentative" : "Participação marcada como provisória", + "Accepted {organizerName}'s invitation" : "Aceitou o convite de {organizerName}", + "Not available" : "Indisponível", + "Invitation declined" : "Convite recusado", + "Declined {organizerName}'s invitation" : "Recusou o convite de {organizerName}", + "Invitation is delegated" : "O convite é delegado", + "Checking availability" : "Verificando disponibilidade", + "Invitation sent" : "Convite enviado", + "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", + "{organizer} (organizer)" : "{organizer} (organizador)", + "Free" : "Livre", "Busy (tentative)" : "Ocupado (talvez)", "Busy" : "Ocupado", "Out of office" : "Fora do escritório", "Unknown" : "Desconhecido", - "{name} accepted your invitation." : "{name} aceitou seu convite.", - "{name} accepted {organizerName}'s invitation." : "{name} aceitou o convite de {organizerName}.", - "{name} declined your invitation." : "{name} recusou seu convite.", - "{name} declined {organizerName}'s invitation." : "{name} recusou o convite de {organizerName}.", - "{name} has delegated their invitation." : "{name} delegou o convite.", - "{name} marked their participation as tentative." : "{name} marcou sua participação como talvez.", - "{name} did not respond to your invitation yet." : "{name} não respondeu ao seu convite ainda.", - "{name} did not respond to {organizerName}'s invitation yet." : "{name} ainda não respondeu ao convite de {organizerName}.", + "Accept" : "Aceitar", + "Decline" : "Recusar", + "Tentative" : "Talvez", + "The invitation has been accepted successfully." : "O convite foi aceito.", + "Failed to accept the invitation." : "Falha ao aceitar o convite.", + "The invitation has been declined successfully." : "O convite foi recusado.", + "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", + "No attendees yet" : "Nenhum participante ainda", + "You don't own this calendar, so you cannot add attendees to this event" : "Você não é o proprietário desta agenda, portanto não pode adicionar participantes a este evento", + "Successfully appended link to talk room to location." : "Link anexado com sucesso para a sala de conversação ao local.", "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 e-mail" : "Enviar e-mail", + "Send email" : "Enviar e-mail", "Chairperson" : "Organizador", "Required participant" : "Participante obrigatório", "Optional participant" : "Participante opcional", "Non-participant" : "Não participante", "Remove attendee" : "Remover participante", - "Search for e-mails, users, contacts, resources or rooms" : "Pesquisar por e-mails, usuários, contatos, recursos ou salas", + "Search for emails, users or contacts" : "Pesquise e-mails, usuários ou contatos", "No match found" : "Nenhuma correspondência encontrada", - "No attendees yet" : "Nenhum participante ainda", "(organizer)" : "(organizador)", - "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].", + "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", - "Can not modify all-day setting for events that are part of a recurrence-set." : "Não é possível modificar a configuração \"todo dia\" para eventos que fazem parte de um conjunto de recorrências.", + "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}", + "Repeat" : "Repetir", "End repeat" : "Terminar repetição", "Select to end repeat" : "Selecione para finalizar a repetição", "never" : "nunca", "on date" : "na data", "after" : "após", - "_time_::_times_" : ["vez","vezes"], - "This event is the recurrence-exception of a recurrence-set. You can not add a recurrence-rule to it." : "Este evento é a exceção de um conjunto de recorrências. Você não pode adicionar uma regra de recorrência a ela.", + "_time_::_times_" : ["vez","vezes","vezes"], + "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", @@ -187,25 +353,37 @@ OC.L10N.register( "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" : "Repetir", "Repeat every" : "Repetir a cada", "By day of the month" : "Pelo dia do mês", "On the" : "Em", - "_month_::_months_" : ["mês","meses"], - "_year_::_years_" : ["ano","anos"], - "Monday" : "Segunda-feira", + "_month_::_months_" : ["mês","meses","meses"], + "_year_::_years_" : ["ano","anos","anos"], "weekday" : "Dia da semana", "weekend day" : "dia da semana", - "Summary" : "Resumo", + "No recurrence" : "Sem recorrência ", "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", + "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", + "Room type" : "Tipo de sala", + "Any" : "Qualquer uma", + "Minimum seating capacity" : "Capacidade mínima de assento", "More" : "Mais", - "Save" : "Salvar", - "Update" : "Atualizar", "Update this occurrence" : "Atualizar esta ocorrência", "Update this and all future" : "Atualizar este e todos os futuros", "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 timezone:" : "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", "from {formattedDate}" : "de {formattedDate}", @@ -217,44 +395,55 @@ 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", - "Type to search timezone" : "Digite para pesquisar fuso horário", - "Personal" : "Pessoal", - "The automatic timezone detection determined your timezone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your timezone manually in the calendar settings." : "A detecção automática de fuso horário determinou que seu fuso horário fosse UTC.\nProvavelmente, isso é resultado de medidas de segurança do seu navegador web.\nDefina seu fuso horário manualmente nas configurações do calendário.", - "Your configured timezone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your timezone in the settings and report this issue." : "O fuso horário ({timezoneId}) configurado não foi encontrado. Voltando para UTC.\nAltere seu fuso horário nas configurações e relate esse problema.", - "No more events today" : "Sem mais eventos para hoje", - "No upcoming events" : "Sem próximos eventos", + "Type to search time zone" : "Digite para pesquisar o fuso horário", + "Global" : "Global", + "Public holiday calendars" : "Calendários de feriados", + "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}", + "By {authors}" : "Por {authors}", + "Subscribed" : "Inscrita", + "Subscribe" : "Se inscrever", + "Holidays in {region}" : "Feriados em {region}", + "An error occurred, unable to create the public holiday calendar." : "Ocorreu um erro, não foi possível criar o calendário de feriados.", + "Select date" : "Selecionar data", + "Select slot" : "Selecionar 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:", + "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:" : "Marcar outro agendamento", + "See all available slots" : "Ver todas as vagas disponíveis", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "A vaga para o seu agendamento de {startDate} a {endDate} não está mais disponível.", + "Please book a different slot:" : "Reserve um slot diferente:", + "Book an appointment with {name}" : "Marque um agendamento com {name}", + "No public appointments found for {name}" : "Não foi encontrado nenhum agendamento público para {name}", + "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.", "Create a new event" : "Criar um novo evento", "[Today]" : "[Hoje]", "[Tomorrow]" : "[Amanhã]", "[Yesterday]" : "[Ontem]", "[Last] dddd" : "[Último] dddd", "Event does not exist" : "O evento não existe", + "Duplicate" : "Duplicada", "Delete this occurrence" : "Excluir esta ocorrência", - "Delete this and all future" : "Excluir isso e todo os futuros", + "Delete this and all future" : "Excluir esta e todas as futuras", "Details" : "Detalhes", + "Managing shared access" : "Managing shared access", + "Deny access" : "Deny access", + "Invite" : "Convidar", "Attendees" : "Participantes", - "Reminders" : "Lembretes", + "Resources" : "Recursos", + "_User requires access to your file_::_Users require access to your file_" : ["O usuário requer acesso ao seu arquivo","O usuário requer acesso aos seus arquivos","O usuário requer acesso aos seus arquivos"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Os anexos requerem acesso compartilhados","O usuário requer acesso aos seus arquivos","Attachments requiring shared access"], "Close" : "Fechar", "Show more details" : "Mostrar mais detalhes", "Subscribe to {name}" : "Inscrever-se em {name}", - "Download {name}" : "Baixar {name}", - "Anniversary" : "Aniversário", - "Appointment" : "Compromisso", - "Business" : "Negócio", - "Education" : "Educação", - "Holiday" : "Feriado", - "Meeting" : "Reunião", - "Miscellaneous" : "Diversos", - "Non-working hours" : "Horas fora do expediente", - "Not in office" : "Fora do escritório", - "Phone call" : "Chamada telefônica", - "Sick day" : "Dia ruim", - "Special occasion" : "Ocasião especial", - "Travel" : "Viagem", - "Vacation" : "Férias", + "Export {name}" : "Exportar {name}", "Midnight on the day the event starts" : "Meia-noite do dia em que o evento começa", - "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n dia antes do evento às {formattedHourMinute}","%n dias antes do evento às {formattedHourMinute}"], - "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n semana antes do evento às {formattedHourMinute}","%n semanas antes do evento às {formattedHourMinute}"], + "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n dia antes do evento às {formattedHourMinute}","%n dias antes do evento às {formattedHourMinute}","%n dias antes do evento às {formattedHourMinute}"], + "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n semana antes do evento às {formattedHourMinute}","%n semanas antes do evento às {formattedHourMinute}","%n semanas antes do evento às {formattedHourMinute}"], "on the day of the event at {formattedHourMinute}" : "no dia do evento às {formattedHourMinute}", "at the event's start" : "no início do evento", "at the event's end" : "no fim do evento", @@ -270,91 +459,117 @@ OC.L10N.register( "Weekly" : "Semanalmente", "Monthly" : "Mensalmente", "Yearly" : "Anualmente", - "_Every %n day_::_Every %n days_" : ["A cada %n dia","A cada %n dias"], - "_Every %n week_::_Every %n weeks_" : ["A cada %n semana","A cada %n semanas"], - "_Every %n month_::_Every %n months_" : ["A cada %n mês","A cada %n meses"], - "_Every %n year_::_Every %n years_" : ["A cada %n ano","A cada %n anos"], - "_on {weekday}_::_on {weekdays}_" : ["em {weekday}","em {weekdays}"], - "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["no dia {dayOfMonthList}","nos dias {dayOfMonthList}"], + "_Every %n day_::_Every %n days_" : ["A cada %n dia","A cada %n dias","A cada %n dias"], + "_Every %n week_::_Every %n weeks_" : ["A cada %n semana","A cada %n semanas","A cada %n semanas"], + "_Every %n month_::_Every %n months_" : ["A cada %n mês","A cada %n meses","A cada %n meses"], + "_Every %n year_::_Every %n years_" : ["A cada %n ano","A cada %n anos","A cada %n anos"], + "_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 {ordinalNumber} {byDaySet}" : "em {monthNames} no {ordinalNumber} {byDaySet}", "until {untilDate}" : "até {untilDate}", - "_%n time_::_%n times_" : ["%n vez","%n vezes"], + "_%n time_::_%n times_" : ["%n vez","%n vezes","%n vezes"], "Untitled event" : "Evento sem título", "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óxima", - "prev year" : "ano passado", - "next year" : "ano que vem", - "today" : "hoje", - "list" : "listar", "W" : "S", - "all-day" : "dia inteiro", "%n more" : "%n mais", "No events to display" : "Não há mais eventos a mostrar", - "_+%n more_::_+%n more_" : ["mais +%n","mais +%n"], + "_+%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", "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", "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.", - "Location" : "Localização", "Add a location" : "Adicionar uma localização", - "Description" : "Descrição", "Add a description" : "Adicionar uma descrição", "Status" : "Status", "Confirmed" : "Confirmado", - "Tentative" : "Talvez", "Canceled" : "Cancelado", "Confirmation about the overall status of the event." : "Confirmação sobre o status geral do evento.", "Show as" : "Mostrar como", "Take this event into account when calculating free-busy information." : "Leve esse evento em consideração ao calcular informações de disponibilidade.", - "Free" : "Livre", "Categories" : "Categorias", "Categories help you to structure and organize your events." : "As categorias ajudam a estruturar e organizar seus eventos.", "Search or add categories" : "Pesquisar ou adicionar categorias", "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.", + "Error while sharing file" : "Erro ao compartilhar arquivo", + "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", "Chat room for event" : "Sala de bato-papo para evento", + "An error occurred, unable to delete the calendar." : "Erro ao excluir o calendário.", "Imported {filename}" : "Importado {filename}", + "This is an event reminder." : "Este é um lembrete de evento.", "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", - "Present" : "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", - "Review" : "Revisar", "Office" : "Escritório", "Contributor week" : "Semana do colaborador", - "Party" : "Festa", - "Celebration" : "Comemoração", "Mail" : "Correspondência", "Soccer" : "Futebol", "Football" : "Futebol americano", "Gaming" : "Jogo", - "Play" : "Jogar", - "Game" : "Jogo", "Drive" : "Dirigir", + "Driving" : "Dirigindo", "Bicycle" : "Bicicleta", "Cycle" : "Bicicleta", + "Cycling" : "Ciclismo", "Biking" : "Ciclismo", + "Bike" : "Bicicleta", "Podcast" : "Podcast", "Basketball" : "Basquete", "Fishing" : "Pesca", @@ -365,10 +580,12 @@ OC.L10N.register( "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", @@ -379,7 +596,10 @@ OC.L10N.register( "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", @@ -398,20 +618,27 @@ OC.L10N.register( "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", - "Global" : "Global" + "Appointment not found" : "Agendamento não encontrado", + "User not found" : "Usuário não encontrado" }, -"nplurals=2; plural=(n > 1);"); +"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 e2efadce38..880df575ee 100644 --- a/l10n/pt_BR.json +++ b/l10n/pt_BR.json @@ -1,57 +1,135 @@ { "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«", "Unexpected error sending email. Please contact your administrator." : "Erro inesperado ao enviar e-mail. Entre em contato com o administrador.", - "Successfully sent email to " : "E-mail enviado a", + "Successfully sent email to %1$s" : "E-mail enviado com sucesso para %1$s", "Hello," : "Olá,", "We wanted to inform you that %s has published the calendar »%s«." : "Informamos que %s publicou o calendário »%s«.", "Open »%s«" : "Abrir »%s«", "Cheers!" : "Saudações!", "Upcoming events" : "Próximos eventos", + "More events" : "Mais eventos", + "No more events today" : "Sem mais eventos para hoje", + "No upcoming events" : "Nenhum evento próximo", + "%1$s with %2$s" : "%1$s com %2$s", "Calendar" : "Calendário", + "New booking {booking}" : "Novo agendamento {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" : "Agendamentos", + "Schedule appointment \"%s\"" : "Reservar agendamento \"1%s\"", + "Schedule an appointment" : "Reserve um agendamento", + "%1$s - %2$s" : "%1$s - %2$s", + "Prepare for %s" : "Prepare para 1%s", + "Follow up for %s" : "Acompanhamento para 1%s", + "Your appointment \"%s\" with %s needs confirmation" : "Seu agendamento \"%s\" com %sprecisa de confirmação", + "Dear %s, please confirm your booking" : "Caro 1%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 by replying to this email or by visiting their profile page." : "Caso deseje cancelar o agendamento, por favor, entre em contato com o organizador respondendo este e-mail ou visitando sua página de perfil.", + "Your appointment \"%s\" with %s has been accepted" : "Seu agendamento \"%s\" com %s foi aceito", + "Dear %s, your booking has been accepted." : "Olá %s. Seu convite foi aceito.", + "Appointment for:" : "Agendamento para:", + "Date:" : "Data:", + "You will receive a link with the confirmation email" : "Você receberá um link com o e-mail de confirmação", + "Where:" : "Local:", + "Comment:" : "Comentário:", + "You have a new appointment booking \"%s\" from %s" : "Tem uma nova reserva \"%s\" de %s", + "Dear %s, %s (%s) booked an appointment with you." : "Caro %s, %s(%s) reservou um horário com você.", + "Anniversary" : "Aniversário", + "Appointment" : "Agendamento", + "Business" : "Negócio", + "Education" : "Educação", + "Holiday" : "Feriado", + "Meeting" : "Reunião", + "Miscellaneous" : "Diversos", + "Non-working hours" : "Horas fora do expediente", + "Not in office" : "Fora do escritório", + "Personal" : "Pessoal", + "Phone call" : "Chamada telefônica", + "Sick day" : "Dia ruim", + "Special occasion" : "Ocasião especial", + "Travel" : "Viagem", + "Vacation" : "Férias", + "Custom Categories" : "Categorias personalizadas", + "Collaborative Tags" : "Etiquetas Colaborativas", + "Standard Categories" : "Categorias padrão", "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).", "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", + "Event" : "Evento", + "Create new event" : "Criar novo evento", "Today" : "Hoje", "Day" : "Dia", "Week" : "Semana", "Month" : "Mês", + "Year" : "Ano", "List" : "Lista", - "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", - "Download" : "Baixar", - "Unshare from me" : "Descompartilhar comigo", + "Preview" : "Previsão", + "Copy link" : "Copiar o 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 agendamento para a área de transferência", + "Add new" : "Adicionar novo", + "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", + "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.", + "_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"], + "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...", + "Add public holiday calendar" : "Adicionar calendário de feriados", + "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://)", + "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", + "Export" : "Exportar", "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.", - "_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"], - "_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"], + "Trash bin" : "Lixeira", + "Loading deleted items." : "Carregando itens excluídos.", + "You do not have any deleted items." : "Você não possui itens excluídos.", + "Name" : "Nome", + "Deleted" : "Excluído", + "Restore" : "Restaurar", + "Delete permanently" : "Excluir permanentemente", + "Empty trash bin" : "Esvaziar lixeira", + "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 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?", + "_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} dias","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.", + "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", "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", @@ -62,33 +140,33 @@ "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 despublicar o calendário", - "Share with users or groups" : "Compartilhar com usuários ou grupos", - "No users or groups" : "Nenhum usuário ou grupo", + "Unpublishing calendar failed" : "Erro ao remover a publicação do calendário", "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 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.", - "+ New calendar" : "+ Novo calendário", - "New calendar" : "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 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://)", - "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", + "Calendar name …" : "Nome do calendário…", + "Share calendar" : "Compartilhar calendário", + "Unshare from me" : "Descompartilhar comigo", + "Save" : "Salvar", + "Failed to save calendar name and color" : "Falha ao salvar o nome e a cor do calendário", "Import calendars" : "Importar calendários", "Please select a calendar to import into …" : "Selecione o calendário para onde importar...", "Filename" : "Nome de arquivo", "Calendar to import into" : "Calendário a importar", "Cancel" : "Cancelar", - "_Import calendar_::_Import calendars_" : ["Importar calendário","Importar calendários"], - "{filename} is an unsupported file-type" : "{filename} é um tipo de arquivo não suportado", + "_Import calendar_::_Import calendars_" : ["Importar calendário","Importar calendários","Importar calendários"], + "Default attachments location" : "Default attachments location", + "Select the default location for attachments" : "Select the default location for attachments", + "Invalid location selected" : "Invalidar localização selecionada", + "Attachments folder successfully saved." : "Attachments folder successfully saved.", + "Error on saving attachments folder." : "Error on saving attachments folder.", "{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", "Import partially failed. Imported {accepted} out of {total}." : "Erro na importação. Importado {accepted} de {total}.", - "_Successfully imported %n event_::_Successfully imported %n events._" : ["%n evento importado.","%n eventos importados."], + "_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.", @@ -101,21 +179,83 @@ "Day view" : "Visão diária", "Week view" : "Visão semanal", "Month view" : "Visão mensal", + "Year view" : "Visualização do ano", + "List view" : "Exibição de lista", "Actions" : "Ações", "Create event" : "Criar evento", "Show shortcuts" : "Mostrar atalhos", + "Editor" : "Editor", + "Close editor" : "Fechar editor", + "Save edited event" : "Salvar evento editado", + "Delete edited event" : "Excluir evento editado", + "Duplicate event" : "Evento duplicado", "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" : "Limit the number of events displayed in the monthly view", "Show weekends" : "Mostrar fins de semana", "Show week numbers" : "Exibir o número das semanas", + "Time increments" : "Incrementos de tempo", + "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", - "Settings & import" : "Configurações & Importação", + "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 agendamento foi criado com sucesso", + "Appointment was updated successfully" : "O agendamento foi 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"], + "_{duration} day_::_{duration} days_" : ["{duration} dia","{duration} dias","{duration} dias"], + "_{duration} week_::_{duration} weeks_" : ["{duration} semana","{duration} semanas","{duration} semanas"], + "_{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 agendamentos, 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", + "Appointment name" : "Nome do agendamento", + "Location" : "Localização", + "Create a Talk room" : "Criar uma sala de conversa", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "Um link exclusivo será gerado para cada consulta agendada 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 serão permitidos agendamentos", + "to" : "para", + "Delete slot" : "Excluir vaga", + "No times set" : "Nenhum horário definido", + "Add" : "Adicionar", + "Monday" : "Segunda-feira", + "Tuesday" : "Terça-feira", + "Wednesday" : "Quarta-feira", + "Thursday" : "Quinta-feira", + "Friday" : "Sexta-feira", + "Saturday" : "Sábado", + "Sunday" : "Domingo", + "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", + "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 agendamentos futuros podem ser reservados", + "Create appointment" : "Criar agendamento", + "Edit appointment" : "Editar agendamento", + "Update" : "Atualizar", + "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.", + "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 reservar o agendamento. Tente novamente mais tarde ou entre em contato com o organizador.", + "Book the appointment" : "Marcar o agendamento", + "Reminder" : "Lembrete", "before at" : "antes das", "Notification" : "Notificação", "Email" : "E-mail", @@ -129,55 +269,81 @@ "on" : "ligado", "at" : "em", "+ Add reminder" : "+ Adicionar lembrete", - "_second_::_seconds_" : ["segundo","segundos"], - "_minute_::_minutes_" : ["minuto","minutos"], - "_hour_::_hours_" : ["hora","horas"], - "_day_::_days_" : ["dia","dias"], - "_week_::_weeks_" : ["semana","semanas"], - "No reminders yet" : "Sem comentários ainda", + "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"], + "No attachments" : "No attachments", + "Add from Files" : "Adicionar a partir de Arquivos", + "Upload from device" : "Enviar do dispositivo", + "Delete file" : "Excluir arquivo", + "Choose a file to add as attachment" : "Escolha um arquivo para adicionar como anexo", + "Choose a file to share as a link" : "Escolher um arquivo para compartilhar como link", + "Attachment {name} already exist!" : "Attachment {name} already exist!", + "_{count} attachment_::_{count} attachments_" : ["{count} anexo","{count} anexos","{count} anexos"], + "Invitation accepted" : "Convite aceito", + "Available" : "Disponível", + "Suggested" : "Sugerido", + "Participation marked as tentative" : "Participação marcada como provisória", + "Accepted {organizerName}'s invitation" : "Aceitou o convite de {organizerName}", + "Not available" : "Indisponível", + "Invitation declined" : "Convite recusado", + "Declined {organizerName}'s invitation" : "Recusou o convite de {organizerName}", + "Invitation is delegated" : "O convite é delegado", + "Checking availability" : "Verificando disponibilidade", + "Invitation sent" : "Convite enviado", + "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", + "{organizer} (organizer)" : "{organizer} (organizador)", + "Free" : "Livre", "Busy (tentative)" : "Ocupado (talvez)", "Busy" : "Ocupado", "Out of office" : "Fora do escritório", "Unknown" : "Desconhecido", - "{name} accepted your invitation." : "{name} aceitou seu convite.", - "{name} accepted {organizerName}'s invitation." : "{name} aceitou o convite de {organizerName}.", - "{name} declined your invitation." : "{name} recusou seu convite.", - "{name} declined {organizerName}'s invitation." : "{name} recusou o convite de {organizerName}.", - "{name} has delegated their invitation." : "{name} delegou o convite.", - "{name} marked their participation as tentative." : "{name} marcou sua participação como talvez.", - "{name} did not respond to your invitation yet." : "{name} não respondeu ao seu convite ainda.", - "{name} did not respond to {organizerName}'s invitation yet." : "{name} ainda não respondeu ao convite de {organizerName}.", + "Accept" : "Aceitar", + "Decline" : "Recusar", + "Tentative" : "Talvez", + "The invitation has been accepted successfully." : "O convite foi aceito.", + "Failed to accept the invitation." : "Falha ao aceitar o convite.", + "The invitation has been declined successfully." : "O convite foi recusado.", + "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", + "No attendees yet" : "Nenhum participante ainda", + "You don't own this calendar, so you cannot add attendees to this event" : "Você não é o proprietário desta agenda, portanto não pode adicionar participantes a este evento", + "Successfully appended link to talk room to location." : "Link anexado com sucesso para a sala de conversação ao local.", "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 e-mail" : "Enviar e-mail", + "Send email" : "Enviar e-mail", "Chairperson" : "Organizador", "Required participant" : "Participante obrigatório", "Optional participant" : "Participante opcional", "Non-participant" : "Não participante", "Remove attendee" : "Remover participante", - "Search for e-mails, users, contacts, resources or rooms" : "Pesquisar por e-mails, usuários, contatos, recursos ou salas", + "Search for emails, users or contacts" : "Pesquise e-mails, usuários ou contatos", "No match found" : "Nenhuma correspondência encontrada", - "No attendees yet" : "Nenhum participante ainda", "(organizer)" : "(organizador)", - "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].", + "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", - "Can not modify all-day setting for events that are part of a recurrence-set." : "Não é possível modificar a configuração \"todo dia\" para eventos que fazem parte de um conjunto de recorrências.", + "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}", + "Repeat" : "Repetir", "End repeat" : "Terminar repetição", "Select to end repeat" : "Selecione para finalizar a repetição", "never" : "nunca", "on date" : "na data", "after" : "após", - "_time_::_times_" : ["vez","vezes"], - "This event is the recurrence-exception of a recurrence-set. You can not add a recurrence-rule to it." : "Este evento é a exceção de um conjunto de recorrências. Você não pode adicionar uma regra de recorrência a ela.", + "_time_::_times_" : ["vez","vezes","vezes"], + "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", @@ -185,25 +351,37 @@ "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" : "Repetir", "Repeat every" : "Repetir a cada", "By day of the month" : "Pelo dia do mês", "On the" : "Em", - "_month_::_months_" : ["mês","meses"], - "_year_::_years_" : ["ano","anos"], - "Monday" : "Segunda-feira", + "_month_::_months_" : ["mês","meses","meses"], + "_year_::_years_" : ["ano","anos","anos"], "weekday" : "Dia da semana", "weekend day" : "dia da semana", - "Summary" : "Resumo", + "No recurrence" : "Sem recorrência ", "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", + "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", + "Room type" : "Tipo de sala", + "Any" : "Qualquer uma", + "Minimum seating capacity" : "Capacidade mínima de assento", "More" : "Mais", - "Save" : "Salvar", - "Update" : "Atualizar", "Update this occurrence" : "Atualizar esta ocorrência", "Update this and all future" : "Atualizar este e todos os futuros", "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 timezone:" : "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", "from {formattedDate}" : "de {formattedDate}", @@ -215,44 +393,55 @@ "{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", - "Type to search timezone" : "Digite para pesquisar fuso horário", - "Personal" : "Pessoal", - "The automatic timezone detection determined your timezone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your timezone manually in the calendar settings." : "A detecção automática de fuso horário determinou que seu fuso horário fosse UTC.\nProvavelmente, isso é resultado de medidas de segurança do seu navegador web.\nDefina seu fuso horário manualmente nas configurações do calendário.", - "Your configured timezone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your timezone in the settings and report this issue." : "O fuso horário ({timezoneId}) configurado não foi encontrado. Voltando para UTC.\nAltere seu fuso horário nas configurações e relate esse problema.", - "No more events today" : "Sem mais eventos para hoje", - "No upcoming events" : "Sem próximos eventos", + "Type to search time zone" : "Digite para pesquisar o fuso horário", + "Global" : "Global", + "Public holiday calendars" : "Calendários de feriados", + "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}", + "By {authors}" : "Por {authors}", + "Subscribed" : "Inscrita", + "Subscribe" : "Se inscrever", + "Holidays in {region}" : "Feriados em {region}", + "An error occurred, unable to create the public holiday calendar." : "Ocorreu um erro, não foi possível criar o calendário de feriados.", + "Select date" : "Selecionar data", + "Select slot" : "Selecionar 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:", + "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:" : "Marcar outro agendamento", + "See all available slots" : "Ver todas as vagas disponíveis", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "A vaga para o seu agendamento de {startDate} a {endDate} não está mais disponível.", + "Please book a different slot:" : "Reserve um slot diferente:", + "Book an appointment with {name}" : "Marque um agendamento com {name}", + "No public appointments found for {name}" : "Não foi encontrado nenhum agendamento público para {name}", + "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.", "Create a new event" : "Criar um novo evento", "[Today]" : "[Hoje]", "[Tomorrow]" : "[Amanhã]", "[Yesterday]" : "[Ontem]", "[Last] dddd" : "[Último] dddd", "Event does not exist" : "O evento não existe", + "Duplicate" : "Duplicada", "Delete this occurrence" : "Excluir esta ocorrência", - "Delete this and all future" : "Excluir isso e todo os futuros", + "Delete this and all future" : "Excluir esta e todas as futuras", "Details" : "Detalhes", + "Managing shared access" : "Managing shared access", + "Deny access" : "Deny access", + "Invite" : "Convidar", "Attendees" : "Participantes", - "Reminders" : "Lembretes", + "Resources" : "Recursos", + "_User requires access to your file_::_Users require access to your file_" : ["O usuário requer acesso ao seu arquivo","O usuário requer acesso aos seus arquivos","O usuário requer acesso aos seus arquivos"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Os anexos requerem acesso compartilhados","O usuário requer acesso aos seus arquivos","Attachments requiring shared access"], "Close" : "Fechar", "Show more details" : "Mostrar mais detalhes", "Subscribe to {name}" : "Inscrever-se em {name}", - "Download {name}" : "Baixar {name}", - "Anniversary" : "Aniversário", - "Appointment" : "Compromisso", - "Business" : "Negócio", - "Education" : "Educação", - "Holiday" : "Feriado", - "Meeting" : "Reunião", - "Miscellaneous" : "Diversos", - "Non-working hours" : "Horas fora do expediente", - "Not in office" : "Fora do escritório", - "Phone call" : "Chamada telefônica", - "Sick day" : "Dia ruim", - "Special occasion" : "Ocasião especial", - "Travel" : "Viagem", - "Vacation" : "Férias", + "Export {name}" : "Exportar {name}", "Midnight on the day the event starts" : "Meia-noite do dia em que o evento começa", - "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n dia antes do evento às {formattedHourMinute}","%n dias antes do evento às {formattedHourMinute}"], - "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n semana antes do evento às {formattedHourMinute}","%n semanas antes do evento às {formattedHourMinute}"], + "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n dia antes do evento às {formattedHourMinute}","%n dias antes do evento às {formattedHourMinute}","%n dias antes do evento às {formattedHourMinute}"], + "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n semana antes do evento às {formattedHourMinute}","%n semanas antes do evento às {formattedHourMinute}","%n semanas antes do evento às {formattedHourMinute}"], "on the day of the event at {formattedHourMinute}" : "no dia do evento às {formattedHourMinute}", "at the event's start" : "no início do evento", "at the event's end" : "no fim do evento", @@ -268,91 +457,117 @@ "Weekly" : "Semanalmente", "Monthly" : "Mensalmente", "Yearly" : "Anualmente", - "_Every %n day_::_Every %n days_" : ["A cada %n dia","A cada %n dias"], - "_Every %n week_::_Every %n weeks_" : ["A cada %n semana","A cada %n semanas"], - "_Every %n month_::_Every %n months_" : ["A cada %n mês","A cada %n meses"], - "_Every %n year_::_Every %n years_" : ["A cada %n ano","A cada %n anos"], - "_on {weekday}_::_on {weekdays}_" : ["em {weekday}","em {weekdays}"], - "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["no dia {dayOfMonthList}","nos dias {dayOfMonthList}"], + "_Every %n day_::_Every %n days_" : ["A cada %n dia","A cada %n dias","A cada %n dias"], + "_Every %n week_::_Every %n weeks_" : ["A cada %n semana","A cada %n semanas","A cada %n semanas"], + "_Every %n month_::_Every %n months_" : ["A cada %n mês","A cada %n meses","A cada %n meses"], + "_Every %n year_::_Every %n years_" : ["A cada %n ano","A cada %n anos","A cada %n anos"], + "_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 {ordinalNumber} {byDaySet}" : "em {monthNames} no {ordinalNumber} {byDaySet}", "until {untilDate}" : "até {untilDate}", - "_%n time_::_%n times_" : ["%n vez","%n vezes"], + "_%n time_::_%n times_" : ["%n vez","%n vezes","%n vezes"], "Untitled event" : "Evento sem título", "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óxima", - "prev year" : "ano passado", - "next year" : "ano que vem", - "today" : "hoje", - "list" : "listar", "W" : "S", - "all-day" : "dia inteiro", "%n more" : "%n mais", "No events to display" : "Não há mais eventos a mostrar", - "_+%n more_::_+%n more_" : ["mais +%n","mais +%n"], + "_+%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", "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", "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.", - "Location" : "Localização", "Add a location" : "Adicionar uma localização", - "Description" : "Descrição", "Add a description" : "Adicionar uma descrição", "Status" : "Status", "Confirmed" : "Confirmado", - "Tentative" : "Talvez", "Canceled" : "Cancelado", "Confirmation about the overall status of the event." : "Confirmação sobre o status geral do evento.", "Show as" : "Mostrar como", "Take this event into account when calculating free-busy information." : "Leve esse evento em consideração ao calcular informações de disponibilidade.", - "Free" : "Livre", "Categories" : "Categorias", "Categories help you to structure and organize your events." : "As categorias ajudam a estruturar e organizar seus eventos.", "Search or add categories" : "Pesquisar ou adicionar categorias", "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.", + "Error while sharing file" : "Erro ao compartilhar arquivo", + "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", "Chat room for event" : "Sala de bato-papo para evento", + "An error occurred, unable to delete the calendar." : "Erro ao excluir o calendário.", "Imported {filename}" : "Importado {filename}", + "This is an event reminder." : "Este é um lembrete de evento.", "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", - "Present" : "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", - "Review" : "Revisar", "Office" : "Escritório", "Contributor week" : "Semana do colaborador", - "Party" : "Festa", - "Celebration" : "Comemoração", "Mail" : "Correspondência", "Soccer" : "Futebol", "Football" : "Futebol americano", "Gaming" : "Jogo", - "Play" : "Jogar", - "Game" : "Jogo", "Drive" : "Dirigir", + "Driving" : "Dirigindo", "Bicycle" : "Bicicleta", "Cycle" : "Bicicleta", + "Cycling" : "Ciclismo", "Biking" : "Ciclismo", + "Bike" : "Bicicleta", "Podcast" : "Podcast", "Basketball" : "Basquete", "Fishing" : "Pesca", @@ -363,10 +578,12 @@ "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", @@ -377,7 +594,10 @@ "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", @@ -396,20 +616,27 @@ "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", - "Global" : "Global" -},"pluralForm" :"nplurals=2; plural=(n > 1);" + "Appointment not found" : "Agendamento não encontrado", + "User not found" : "Usuário não encontrado" +},"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 b77f298d07..4dc69122f7 100644 --- a/l10n/pt_PT.js +++ b/l10n/pt_PT.js @@ -1,17 +1,39 @@ OC.L10N.register( "calendar", { - "User-Session unexpectedly expired" : "A sessão do utilizador expirou inexplicavelmente", + "User-Session unexpectedly expired" : "Sessão do usuário 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", - "Successfully sent email to " : "Email enviado com sucesso", + "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", + "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", + "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 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:", + "Comment:" : "Comentário:", + "You have a new appointment booking \"%s\" from %s" : "Tem uma nova reserva de marcação \"%s\" de %s", + "Anniversary" : "Aniversário", + "Miscellaneous" : "Diversos", + "Personal" : "Pessoal", "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", @@ -20,74 +42,207 @@ OC.L10N.register( "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", "List" : "Lista", - "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", - "Download" : "Transferir", + "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", + "Shared with you by" : "Partilhado consigo por", + "Edit and share calendar" : "Editar e partilhar calendário", + "Edit calendar" : "Editar calendário", + "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", + "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 ...", + "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://)", + "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", "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.", + "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", + "Empty trash bin" : "Esvaziar a reciclagem", + "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?", + "Could not update calendar order." : "Não foi possível atualizar a ordenação do calendário.", + "Copy internal link" : "Copiar ligação interna", "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 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", + "can edit" : "pode editar", + "Unshare with {displayName}" : "Cancelar partilha com {displayName}", "Share with users or groups" : "Partilhe com os utilizadores ou grupos", "No users or groups" : "Sem utilizadores ou grupos", - "can edit" : "pode editar", - "+ New calendar" : "+ Novo calendário", - "New calendar" : "Novo calendário", - "Creating calendar …" : "A criar o calendário …", + "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", - "_Import calendar_::_Import calendars_" : ["Importar calendário","Importar calendários"], + "_Import calendar_::_Import calendars_" : ["Importar calendário","Importar calendários","Importar calendários"], + "{filename} could not be parsed" : "{filename} não pôde ser processado", + "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", "Views" : "Vistas", "Day view" : "Vista diária", "Week view" : "Vista semanal", "Month view" : "Vista mensal", + "List view" : "Vista em lista", "Actions" : "Ações", "Create event" : "Criar evento", "Show shortcuts" : "Mostrar atalhos de teclado", + "Editor" : "Editor", + "Close editor" : "Fechar editor", + "Save edited event" : "Gravar evento editado", + "Delete edited event" : "Apagar evento editado", + "Duplicate event" : "Duplicar evento", "Enable birthday calendar" : "Ativar calendário de aniversários", "Show tasks in calendar" : "Mostrar tarefas no calendário", "Enable simplified editor" : "Ativar editor simplificado", "Show weekends" : "Mostrar fins-de-semana", "Show week numbers" : "Mostrar o número das semanas", - "Settings & import" : "Definições & importar", + "Time increments" : "Incrementos de tempo", + "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." : "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", + "0 minutes" : "0 minutos", + "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", + "Appointment name" : "Nome da marcação", + "Location" : "Localizaçã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 as reuniões são permitidas", + "to" : "Para", + "No times set" : "Nenhum horário definido", + "Add" : "Adicionar", + "Monday" : "Segunda", + "Tuesday" : "Terça", + "Wednesday" : "Quarta", + "Thursday" : "Quinta", + "Friday" : "Sexta", + "Saturday" : "Sábado", + "Sunday" : "Domingo", + "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", + "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", + "before at" : "antes em", "Notification" : "Notificação", "Email" : "E-mail", + "Audio notification" : "Notificação de áudio", + "Other notification" : "Outras notificações", + "Relative to event" : "Relativo ao evento", + "On date" : "Na data", + "Edit time" : "Editar horário", + "Save time" : "Gravar horário", + "Remove reminder" : "Apagar lembrete", + "on" : "em", + "at" : "às", "+ Add reminder" : "+ Adicionar lembrete", - "_second_::_seconds_" : ["segundo","segundos"], - "_minute_::_minutes_" : ["minuto","minutos"], - "_hour_::_hours_" : ["hora","horas"], - "_day_::_days_" : ["dia","dias"], - "_week_::_weeks_" : ["semana","semanas"], - "No reminders yet" : "Sem lembretes ainda", + "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"], + "Delete file" : "Apagar ficheiro", + "Choose a file to add as attachment" : "Escolha um ficheiro para adicionar como anexo", + "Invitation accepted" : "Convite aceite", + "Available" : "Disponível", + "Suggested" : "Sugerido", + "Participation marked as tentative" : "Participação marcada como tentativa", + "Accepted {organizerName}'s invitation" : "Aceite convite de {organizerName}", + "Not available" : "Indisponível", + "Invitation declined" : "Convite recusado", + "Checking availability" : "A verificar disponibilidade", + "Invitation sent" : "Convite enviado", + "Free" : "Livre", "Busy" : "Ocupado", + "Out of office" : "Fora do escritório", "Unknown" : "Desconhecido", - "{name} accepted your invitation." : "{name} aceitou o seu convite.", - "{name} accepted {organizerName}'s invitation." : "{name} aceitou o convite de {organizerName}.", - "Send e-mail" : "Enviar e-mail", + "Accept" : "Aceitar", + "Decline" : "Recusar", + "Tentative" : "Tentativa", + "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.", + "Send email" : "Enviar e-mail", "All day" : "Todo o dia", + "Repeat" : "Repetir", "never" : "nunca", "after" : "depois", "first" : "primeiro", @@ -96,44 +251,64 @@ OC.L10N.register( "fifth" : "quinto", "second to last" : "do segundo ao último", "last" : "ultimo", - "Repeat" : "Repetir", "Repeat every" : "Repetir a cada", "By day of the month" : "Por dia do mês", "On the" : "No", - "_month_::_months_" : ["mês","meses"], - "_year_::_years_" : ["ano","anos"], - "Monday" : "Segunda", + "_month_::_months_" : ["mês","meses","meses"], + "_year_::_years_" : ["ano","anos","anos"], "weekday" : "dia da semana", "weekend day" : "dia do fim-de-semana", - "Summary" : "Resumo", + "available" : "disponível", "More" : "Mais", - "Save" : "Guardar", - "Update" : "Atualizar", - "Personal" : "Pessoal", + "Pick a date" : "Escolha uma data", + "Global" : "Global", + "Subscribed" : "Subscrito", + "Subscribe" : "Subscrever", "Details" : "Detalhes", "Attendees" : "Participantes", - "Reminders" : "Lembretes", + "Resources" : "Recursos", "Close" : "Fechar", - "Anniversary" : "Aniversário", "Week {number} of {year}" : "Semana {number} do {year}", "Daily" : "Diariamente", "Weekly" : "Semanalmente", - "next year" : "Próximo ano", - "today" : "hoje", + "Other" : "Outro", "When shared show full event" : "Quando partilhado, mostrar evento completo", "When shared show only busy" : "Quando partilhado, mostrar apenas ocupados", "When shared hide this event" : "Quando partilhado, ocultar este evento", - "Location" : "Localização:", - "Description" : "Descrição", "Status" : "Estado", "Confirmed" : "Confirmado", - "Tentative" : "Tentativa", + "Canceled" : "Cancelado", "Categories" : "Categorias", + "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", + "Commuting" : "Em trânsito", "Presentation" : "Apresentação", + "Talk" : "Falar", "Review" : "Rever", "Office" : "Escritório", "Mail" : "Correio", - "Play" : "Reproduzir", - "Global" : "Global" + "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" }, -"nplurals=2; plural=(n != 1);"); +"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 436f829e4c..a3757268b0 100644 --- a/l10n/pt_PT.json +++ b/l10n/pt_PT.json @@ -1,15 +1,37 @@ { "translations": { - "User-Session unexpectedly expired" : "A sessão do utilizador expirou inexplicavelmente", + "User-Session unexpectedly expired" : "Sessão do usuário 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", - "Successfully sent email to " : "Email enviado com sucesso", + "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", + "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", + "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 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:", + "Comment:" : "Comentário:", + "You have a new appointment booking \"%s\" from %s" : "Tem uma nova reserva de marcação \"%s\" de %s", + "Anniversary" : "Aniversário", + "Miscellaneous" : "Diversos", + "Personal" : "Pessoal", "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", @@ -18,74 +40,207 @@ "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", "List" : "Lista", - "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", - "Download" : "Transferir", + "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", + "Shared with you by" : "Partilhado consigo por", + "Edit and share calendar" : "Editar e partilhar calendário", + "Edit calendar" : "Editar calendário", + "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", + "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 ...", + "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://)", + "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", "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.", + "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", + "Empty trash bin" : "Esvaziar a reciclagem", + "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?", + "Could not update calendar order." : "Não foi possível atualizar a ordenação do calendário.", + "Copy internal link" : "Copiar ligação interna", "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 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", + "can edit" : "pode editar", + "Unshare with {displayName}" : "Cancelar partilha com {displayName}", "Share with users or groups" : "Partilhe com os utilizadores ou grupos", "No users or groups" : "Sem utilizadores ou grupos", - "can edit" : "pode editar", - "+ New calendar" : "+ Novo calendário", - "New calendar" : "Novo calendário", - "Creating calendar …" : "A criar o calendário …", + "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", - "_Import calendar_::_Import calendars_" : ["Importar calendário","Importar calendários"], + "_Import calendar_::_Import calendars_" : ["Importar calendário","Importar calendários","Importar calendários"], + "{filename} could not be parsed" : "{filename} não pôde ser processado", + "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", "Views" : "Vistas", "Day view" : "Vista diária", "Week view" : "Vista semanal", "Month view" : "Vista mensal", + "List view" : "Vista em lista", "Actions" : "Ações", "Create event" : "Criar evento", "Show shortcuts" : "Mostrar atalhos de teclado", + "Editor" : "Editor", + "Close editor" : "Fechar editor", + "Save edited event" : "Gravar evento editado", + "Delete edited event" : "Apagar evento editado", + "Duplicate event" : "Duplicar evento", "Enable birthday calendar" : "Ativar calendário de aniversários", "Show tasks in calendar" : "Mostrar tarefas no calendário", "Enable simplified editor" : "Ativar editor simplificado", "Show weekends" : "Mostrar fins-de-semana", "Show week numbers" : "Mostrar o número das semanas", - "Settings & import" : "Definições & importar", + "Time increments" : "Incrementos de tempo", + "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." : "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", + "0 minutes" : "0 minutos", + "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", + "Appointment name" : "Nome da marcação", + "Location" : "Localizaçã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 as reuniões são permitidas", + "to" : "Para", + "No times set" : "Nenhum horário definido", + "Add" : "Adicionar", + "Monday" : "Segunda", + "Tuesday" : "Terça", + "Wednesday" : "Quarta", + "Thursday" : "Quinta", + "Friday" : "Sexta", + "Saturday" : "Sábado", + "Sunday" : "Domingo", + "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", + "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", + "before at" : "antes em", "Notification" : "Notificação", "Email" : "E-mail", + "Audio notification" : "Notificação de áudio", + "Other notification" : "Outras notificações", + "Relative to event" : "Relativo ao evento", + "On date" : "Na data", + "Edit time" : "Editar horário", + "Save time" : "Gravar horário", + "Remove reminder" : "Apagar lembrete", + "on" : "em", + "at" : "às", "+ Add reminder" : "+ Adicionar lembrete", - "_second_::_seconds_" : ["segundo","segundos"], - "_minute_::_minutes_" : ["minuto","minutos"], - "_hour_::_hours_" : ["hora","horas"], - "_day_::_days_" : ["dia","dias"], - "_week_::_weeks_" : ["semana","semanas"], - "No reminders yet" : "Sem lembretes ainda", + "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"], + "Delete file" : "Apagar ficheiro", + "Choose a file to add as attachment" : "Escolha um ficheiro para adicionar como anexo", + "Invitation accepted" : "Convite aceite", + "Available" : "Disponível", + "Suggested" : "Sugerido", + "Participation marked as tentative" : "Participação marcada como tentativa", + "Accepted {organizerName}'s invitation" : "Aceite convite de {organizerName}", + "Not available" : "Indisponível", + "Invitation declined" : "Convite recusado", + "Checking availability" : "A verificar disponibilidade", + "Invitation sent" : "Convite enviado", + "Free" : "Livre", "Busy" : "Ocupado", + "Out of office" : "Fora do escritório", "Unknown" : "Desconhecido", - "{name} accepted your invitation." : "{name} aceitou o seu convite.", - "{name} accepted {organizerName}'s invitation." : "{name} aceitou o convite de {organizerName}.", - "Send e-mail" : "Enviar e-mail", + "Accept" : "Aceitar", + "Decline" : "Recusar", + "Tentative" : "Tentativa", + "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.", + "Send email" : "Enviar e-mail", "All day" : "Todo o dia", + "Repeat" : "Repetir", "never" : "nunca", "after" : "depois", "first" : "primeiro", @@ -94,44 +249,64 @@ "fifth" : "quinto", "second to last" : "do segundo ao último", "last" : "ultimo", - "Repeat" : "Repetir", "Repeat every" : "Repetir a cada", "By day of the month" : "Por dia do mês", "On the" : "No", - "_month_::_months_" : ["mês","meses"], - "_year_::_years_" : ["ano","anos"], - "Monday" : "Segunda", + "_month_::_months_" : ["mês","meses","meses"], + "_year_::_years_" : ["ano","anos","anos"], "weekday" : "dia da semana", "weekend day" : "dia do fim-de-semana", - "Summary" : "Resumo", + "available" : "disponível", "More" : "Mais", - "Save" : "Guardar", - "Update" : "Atualizar", - "Personal" : "Pessoal", + "Pick a date" : "Escolha uma data", + "Global" : "Global", + "Subscribed" : "Subscrito", + "Subscribe" : "Subscrever", "Details" : "Detalhes", "Attendees" : "Participantes", - "Reminders" : "Lembretes", + "Resources" : "Recursos", "Close" : "Fechar", - "Anniversary" : "Aniversário", "Week {number} of {year}" : "Semana {number} do {year}", "Daily" : "Diariamente", "Weekly" : "Semanalmente", - "next year" : "Próximo ano", - "today" : "hoje", + "Other" : "Outro", "When shared show full event" : "Quando partilhado, mostrar evento completo", "When shared show only busy" : "Quando partilhado, mostrar apenas ocupados", "When shared hide this event" : "Quando partilhado, ocultar este evento", - "Location" : "Localização:", - "Description" : "Descrição", "Status" : "Estado", "Confirmed" : "Confirmado", - "Tentative" : "Tentativa", + "Canceled" : "Cancelado", "Categories" : "Categorias", + "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", + "Commuting" : "Em trânsito", "Presentation" : "Apresentação", + "Talk" : "Falar", "Review" : "Rever", "Office" : "Escritório", "Mail" : "Correio", - "Play" : "Reproduzir", - "Global" : "Global" -},"pluralForm" :"nplurals=2; plural=(n != 1);" + "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" +},"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 f80be3acbd..6a480a7a33 100644 --- a/l10n/ro.js +++ b/l10n/ro.js @@ -1,83 +1,397 @@ OC.L10N.register( "calendar", { + "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«", "Unexpected error sending email. Please contact your administrator." : "Eroare neașteptată la trimiterea emailului. Vă rog contactați-vă administratorul.", - "Successfully sent email to " : "Email trimis cu succes la ", + "Successfully sent email to %1$s" : "Email trimis cu succes la %1$s", "Hello," : "Salut,", "We wanted to inform you that %s has published the calendar »%s«." : "Vă informăm că %sa publicat calendarul »%s«.", "Open »%s«" : "Accesează »%s«", "Cheers!" : "Noroc!", + "Upcoming events" : "Evenimente viitoare", "Calendar" : "Calendar", + "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", + "Dear %s, please confirm your booking" : "Dragă %s, te rog să confirmi rezervarea ta", + "Confirm" : "Confirmă", + "This confirmation link expires in %s hours." : "Acest link de confirmare expira în %s ore. ", + "Date:" : "Data:", + "Where:" : "Unde:", + "Anniversary" : "Aniversare", + "Personal" : "Personal", + "Vacation" : "Vacanță", "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 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", "Today" : "Astăzi", "Day" : "Zi", "Week" : "Săptămâna", "Month" : "Luna", - "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", - "Download" : "Descarcă", - "Unshare from me" : "Anulare partajarea cu mine", + "Year" : "An", + "List" : "Listă", + "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", + "An error occurred, unable to change visibility of the calendar." : "A apărut o eroare, nu se poate schimba vizibilitatea calendarului.", + "_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"], + "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://)", + "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ă", + "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.", + "Trash bin" : "Coș de gunoi", + "Name" : "Nume", + "Deleted" : "Șters", + "Restore" : "Restaurare", + "Delete permanently" : "Șterge permanent", + "Empty trash bin" : "Golește coșul de gunoi", + "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 ?", + "Could not update calendar order." : "Nu s-a putut actualiza ordinea calendarului.", + "Copy internal link" : "Copiază linkul intern", "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 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", + "can edit" : "poate edita", + "Unshare with {displayName}" : "Retrage cu {displayName}", + "An error occurred, unable to change the permission of the share." : "A apărut o eroare, nu se poate schimba permisiunile fişierelor partajate.", "Share with users or groups" : "Partajează cu utilizatori sau grupuri", "No users or groups" : "Nu sunt utilizatori sau grupuri", - "can edit" : "poate edita", - "New calendar" : "Calendar nou", + "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"], + "{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", + "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", + "Views" : "Mod de viziualizare", + "Day view" : "Vizualizare pe zi", + "Week view" : "Vizualizare pe săptămână", + "Month view" : "Vizualizare pe lună", + "List view" : "Vizualizare sub formă de listă", "Actions" : "Acțiuni", + "Create event" : "Creează eveniment", + "Show shortcuts" : "Arată scurtături", + "Enable birthday calendar" : "Activează calendarul cu zile de naştere", + "Show tasks in calendar" : "Arată sarcinile în calendar", + "Enable simplified editor" : "Activează editorul simplificat", + "Show weekends" : "Arată weekend-uri", "Show week numbers" : "Afișați numerele săptămânilor", - "Settings & import" : "Setări și import", + "Time increments" : "Incremente de timp", + "Default reminder" : "Memento implicit", + "Copy primary CalDAV address" : "Copiază adresa primară CalDAV", + "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"], + "_{duration} day_::_{duration} days_" : ["{duration} zi","{duration} zile","{duration} de zile"], + "_{duration} week_::_{duration} weeks_" : ["{duration} săptămână","{duration} săptămâni","{duration} de săptămâni"], + "_{duration} month_::_{duration} months_" : ["{duration} lună","{duration} luni","{duration} de luni"], + "_{duration} year_::_{duration} years_" : ["{duration} an","{duration} ani","{duration} ani"], + "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", + "Location" : "Locație", + "Description" : "Descriere", + "Visibility" : "Vizibil", + "Duration" : "Durată", + "Increments" : "Incremente", + "Additional calendars to check for conflicts" : "Calendarele adiționale să fie verificate pentru conflicte ", + "Pick time ranges where appointments are allowed" : "Alege intervale de timp în cadrul cărora programările sunt permise", + "to" : "către", + "Delete slot" : "Șterge slotul", + "No times set" : "Nici-un timp setat", + "Add" : "Adaugă", + "Monday" : "Luni", + "Tuesday" : "Marți", + "Wednesday" : "Miercuri", + "Thursday" : "Joi", + "Friday" : "Vineri", + "Saturday" : "Sâmbătă", + "Sunday" : "Duminică", + "Add time before and after the event" : "Adaugă un interval de timp înainte și după eveniment", + "Before the event" : "Înainte și după", + "After the event" : "După eveniment", + "Planning restrictions" : "Planifică retricții", + "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", + "Update" : "Actualizare", + "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", + "before at" : "Înainte de la", + "Notification" : "Notificări", "Email" : "Email", + "Audio notification" : "Notificări audio", + "Other notification" : "Alte notificări", + "Relative to event" : "Raportat la eveniment", + "On date" : "Pe data", + "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"], + "Delete file" : "Șterge fișier", + "Available" : "Disponibil", + "Not available" : "Nu este disponibil", + "Availability of attendees, resources and rooms" : "Disponibilitatea participanților, resurse și camere", + "{organizer} (organizer)" : "{organizer} (organizer)", + "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", + "No attendees yet" : "Nu exista participați încă", + "Error creating Talk room" : "Camera Talk nu a putut fi creată", + "Send email" : "Trimite email-ul", + "Chairperson" : "Președinte", + "Required participant" : "Participanți necesari", + "Optional participant" : "Participanți opționali", + "Remove attendee" : "Elimină participant", + "(organizer)" : "(organizator)", + "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}", + "Repeat" : "Repetă", + "End repeat" : "Încheie seria", + "Select to end repeat" : "Selectează pentru a încheia seria", "never" : "niciodată", + "on date" : "la data ", "after" : "după", - "Repeat" : "Repetă", - "Monday" : "Luni", + "first" : "primul", + "third" : "al treilea", + "fourth" : "al patrulea", + "fifth" : "al cincilea", + "second to last" : "penultimul", + "last" : "ultimul", + "Repeat every" : "Se repetă la fiecare", + "By day of the month" : "după ziua lunii", + "On the" : "Pe", + "_month_::_months_" : ["lună","luni","luni"], + "_year_::_years_" : ["an","ani","ani"], + "Suggestions" : "Sugestii", + "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", + "Room type" : "Tipul de cameră", + "Any" : "Toate", + "Minimum seating capacity" : "Capacitatea minimă", "More" : "Mai mult", - "Save" : "Salvează", - "Update" : "Actualizare", - "Personal" : "Personal", + "Update this occurrence" : "Actualizați această ședință", + "Public calendar does not exist" : "Calendarul public nu există", + "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ă", + "Global" : "Global", + "Subscribe" : "Abonare", + "Time:" : "Timp:", + "Booked for:" : "Rezervat pentru:", "Details" : "Detalii", "Attendees" : "Participanți", - "Reminders" : "Mementouri", "Close" : "Închide", - "Anniversary" : "Aniversare", + "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}"], + "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n săptămână înainte de evenimentul de la {formattedHourMinute}","%n săptămânii înainte de evenimentul de la {formattedHourMinute}","%n de săptămânii înainte de evenimentul de la {formattedHourMinute}"], + "on the day of the event at {formattedHourMinute}" : "în ziua evenimentului de la {formattedHourMinute}", + "at the event's start" : "La începutul evenimentului", + "at the event's end" : "la finalul evenimentului", + "{time} before the event starts" : "{time} înainte ca evenimentul să înceapă", + "{time} before the event ends" : "{time} înainte de finalul evenimentului", + "{time} after the event starts" : "{time} după ce evenimentul începe", + "{time} after the event ends" : "{time} după ce evenimentul se termină", + "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", - "next year" : "anul viitor", - "today" : "astăzi", + "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 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}", + "until {untilDate}" : "până {untilDate}", + "_%n time_::_%n times_" : ["%n zi","%n zile","%n de zile"], + "Untitled event" : "Eveniment fără titlu", + "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.", + "W" : "W", + "%n more" : "%n mai mult", + "No events to display" : "Nu sunt evenimente de afișat", + "_+%n more_::_+%n more_" : ["+%n în plus","+%n în plus","+%n în plus"], + "No events" : "Niciun eveniment", + "Create a new event or change the visible time-range" : "Creează un eveniment nou sau schimbă intervalul de timp", + "It might have been deleted, or there was a typo in a link" : "Probail a fost șters, sau a fost o greașeală în linkul primit", + "It might have been deleted, or there was a typo in the link" : "Probail a fost șters, sau a fost o greașeală în linkul primit", + "Meeting room" : "Sală de ședințe", + "Lecture hall" : "Sala de lectură", + "Seminar room" : "Sală de seminar", + "Other" : "Altele", + "When shared show" : "Cănd se partajează mai jos", "When shared show full event" : "Arată tot evenimentul la partajare", "When shared show only busy" : "Arată doar ocupat la partajare", "When shared hide this event" : "Ascunde evenimentul la partajare", - "Location" : "Locație", - "Description" : "Descriere", + "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", - "Tentative" : "Tentativă", + "Canceled" : "Anulat", + "Confirmation about the overall status of the event." : "Confirmarea statusului evenimentului.", + "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", + "An error occurred, unable to delete the calendar." : "A apărut o eroare, nu se poate șterge calendarul.", + "Commuting" : "În deplasare", + "Talk" : "Discuție", + "Movie" : "Film", "Mail" : "Mail", - "Play" : "Redă", - "Global" : "Global" + "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", + "Appointment not found" : "Programarea nu a fost găsită", + "User not found" : "Utilizatorul nu a fost găsit" }, "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 32a40357e5..4fc363ee26 100644 --- a/l10n/ro.json +++ b/l10n/ro.json @@ -1,81 +1,395 @@ { "translations": { + "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«", "Unexpected error sending email. Please contact your administrator." : "Eroare neașteptată la trimiterea emailului. Vă rog contactați-vă administratorul.", - "Successfully sent email to " : "Email trimis cu succes la ", + "Successfully sent email to %1$s" : "Email trimis cu succes la %1$s", "Hello," : "Salut,", "We wanted to inform you that %s has published the calendar »%s«." : "Vă informăm că %sa publicat calendarul »%s«.", "Open »%s«" : "Accesează »%s«", "Cheers!" : "Noroc!", + "Upcoming events" : "Evenimente viitoare", "Calendar" : "Calendar", + "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", + "Dear %s, please confirm your booking" : "Dragă %s, te rog să confirmi rezervarea ta", + "Confirm" : "Confirmă", + "This confirmation link expires in %s hours." : "Acest link de confirmare expira în %s ore. ", + "Date:" : "Data:", + "Where:" : "Unde:", + "Anniversary" : "Aniversare", + "Personal" : "Personal", + "Vacation" : "Vacanță", "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 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", "Today" : "Astăzi", "Day" : "Zi", "Week" : "Săptămâna", "Month" : "Luna", - "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", - "Download" : "Descarcă", - "Unshare from me" : "Anulare partajarea cu mine", + "Year" : "An", + "List" : "Listă", + "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", + "An error occurred, unable to change visibility of the calendar." : "A apărut o eroare, nu se poate schimba vizibilitatea calendarului.", + "_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"], + "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://)", + "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ă", + "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.", + "Trash bin" : "Coș de gunoi", + "Name" : "Nume", + "Deleted" : "Șters", + "Restore" : "Restaurare", + "Delete permanently" : "Șterge permanent", + "Empty trash bin" : "Golește coșul de gunoi", + "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 ?", + "Could not update calendar order." : "Nu s-a putut actualiza ordinea calendarului.", + "Copy internal link" : "Copiază linkul intern", "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 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", + "can edit" : "poate edita", + "Unshare with {displayName}" : "Retrage cu {displayName}", + "An error occurred, unable to change the permission of the share." : "A apărut o eroare, nu se poate schimba permisiunile fişierelor partajate.", "Share with users or groups" : "Partajează cu utilizatori sau grupuri", "No users or groups" : "Nu sunt utilizatori sau grupuri", - "can edit" : "poate edita", - "New calendar" : "Calendar nou", + "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"], + "{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", + "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", + "Views" : "Mod de viziualizare", + "Day view" : "Vizualizare pe zi", + "Week view" : "Vizualizare pe săptămână", + "Month view" : "Vizualizare pe lună", + "List view" : "Vizualizare sub formă de listă", "Actions" : "Acțiuni", + "Create event" : "Creează eveniment", + "Show shortcuts" : "Arată scurtături", + "Enable birthday calendar" : "Activează calendarul cu zile de naştere", + "Show tasks in calendar" : "Arată sarcinile în calendar", + "Enable simplified editor" : "Activează editorul simplificat", + "Show weekends" : "Arată weekend-uri", "Show week numbers" : "Afișați numerele săptămânilor", - "Settings & import" : "Setări și import", + "Time increments" : "Incremente de timp", + "Default reminder" : "Memento implicit", + "Copy primary CalDAV address" : "Copiază adresa primară CalDAV", + "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"], + "_{duration} day_::_{duration} days_" : ["{duration} zi","{duration} zile","{duration} de zile"], + "_{duration} week_::_{duration} weeks_" : ["{duration} săptămână","{duration} săptămâni","{duration} de săptămâni"], + "_{duration} month_::_{duration} months_" : ["{duration} lună","{duration} luni","{duration} de luni"], + "_{duration} year_::_{duration} years_" : ["{duration} an","{duration} ani","{duration} ani"], + "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", + "Location" : "Locație", + "Description" : "Descriere", + "Visibility" : "Vizibil", + "Duration" : "Durată", + "Increments" : "Incremente", + "Additional calendars to check for conflicts" : "Calendarele adiționale să fie verificate pentru conflicte ", + "Pick time ranges where appointments are allowed" : "Alege intervale de timp în cadrul cărora programările sunt permise", + "to" : "către", + "Delete slot" : "Șterge slotul", + "No times set" : "Nici-un timp setat", + "Add" : "Adaugă", + "Monday" : "Luni", + "Tuesday" : "Marți", + "Wednesday" : "Miercuri", + "Thursday" : "Joi", + "Friday" : "Vineri", + "Saturday" : "Sâmbătă", + "Sunday" : "Duminică", + "Add time before and after the event" : "Adaugă un interval de timp înainte și după eveniment", + "Before the event" : "Înainte și după", + "After the event" : "După eveniment", + "Planning restrictions" : "Planifică retricții", + "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", + "Update" : "Actualizare", + "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", + "before at" : "Înainte de la", + "Notification" : "Notificări", "Email" : "Email", + "Audio notification" : "Notificări audio", + "Other notification" : "Alte notificări", + "Relative to event" : "Raportat la eveniment", + "On date" : "Pe data", + "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"], + "Delete file" : "Șterge fișier", + "Available" : "Disponibil", + "Not available" : "Nu este disponibil", + "Availability of attendees, resources and rooms" : "Disponibilitatea participanților, resurse și camere", + "{organizer} (organizer)" : "{organizer} (organizer)", + "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", + "No attendees yet" : "Nu exista participați încă", + "Error creating Talk room" : "Camera Talk nu a putut fi creată", + "Send email" : "Trimite email-ul", + "Chairperson" : "Președinte", + "Required participant" : "Participanți necesari", + "Optional participant" : "Participanți opționali", + "Remove attendee" : "Elimină participant", + "(organizer)" : "(organizator)", + "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}", + "Repeat" : "Repetă", + "End repeat" : "Încheie seria", + "Select to end repeat" : "Selectează pentru a încheia seria", "never" : "niciodată", + "on date" : "la data ", "after" : "după", - "Repeat" : "Repetă", - "Monday" : "Luni", + "first" : "primul", + "third" : "al treilea", + "fourth" : "al patrulea", + "fifth" : "al cincilea", + "second to last" : "penultimul", + "last" : "ultimul", + "Repeat every" : "Se repetă la fiecare", + "By day of the month" : "după ziua lunii", + "On the" : "Pe", + "_month_::_months_" : ["lună","luni","luni"], + "_year_::_years_" : ["an","ani","ani"], + "Suggestions" : "Sugestii", + "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", + "Room type" : "Tipul de cameră", + "Any" : "Toate", + "Minimum seating capacity" : "Capacitatea minimă", "More" : "Mai mult", - "Save" : "Salvează", - "Update" : "Actualizare", - "Personal" : "Personal", + "Update this occurrence" : "Actualizați această ședință", + "Public calendar does not exist" : "Calendarul public nu există", + "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ă", + "Global" : "Global", + "Subscribe" : "Abonare", + "Time:" : "Timp:", + "Booked for:" : "Rezervat pentru:", "Details" : "Detalii", "Attendees" : "Participanți", - "Reminders" : "Mementouri", "Close" : "Închide", - "Anniversary" : "Aniversare", + "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}"], + "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n săptămână înainte de evenimentul de la {formattedHourMinute}","%n săptămânii înainte de evenimentul de la {formattedHourMinute}","%n de săptămânii înainte de evenimentul de la {formattedHourMinute}"], + "on the day of the event at {formattedHourMinute}" : "în ziua evenimentului de la {formattedHourMinute}", + "at the event's start" : "La începutul evenimentului", + "at the event's end" : "la finalul evenimentului", + "{time} before the event starts" : "{time} înainte ca evenimentul să înceapă", + "{time} before the event ends" : "{time} înainte de finalul evenimentului", + "{time} after the event starts" : "{time} după ce evenimentul începe", + "{time} after the event ends" : "{time} după ce evenimentul se termină", + "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", - "next year" : "anul viitor", - "today" : "astăzi", + "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 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}", + "until {untilDate}" : "până {untilDate}", + "_%n time_::_%n times_" : ["%n zi","%n zile","%n de zile"], + "Untitled event" : "Eveniment fără titlu", + "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.", + "W" : "W", + "%n more" : "%n mai mult", + "No events to display" : "Nu sunt evenimente de afișat", + "_+%n more_::_+%n more_" : ["+%n în plus","+%n în plus","+%n în plus"], + "No events" : "Niciun eveniment", + "Create a new event or change the visible time-range" : "Creează un eveniment nou sau schimbă intervalul de timp", + "It might have been deleted, or there was a typo in a link" : "Probail a fost șters, sau a fost o greașeală în linkul primit", + "It might have been deleted, or there was a typo in the link" : "Probail a fost șters, sau a fost o greașeală în linkul primit", + "Meeting room" : "Sală de ședințe", + "Lecture hall" : "Sala de lectură", + "Seminar room" : "Sală de seminar", + "Other" : "Altele", + "When shared show" : "Cănd se partajează mai jos", "When shared show full event" : "Arată tot evenimentul la partajare", "When shared show only busy" : "Arată doar ocupat la partajare", "When shared hide this event" : "Ascunde evenimentul la partajare", - "Location" : "Locație", - "Description" : "Descriere", + "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", - "Tentative" : "Tentativă", + "Canceled" : "Anulat", + "Confirmation about the overall status of the event." : "Confirmarea statusului evenimentului.", + "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", + "An error occurred, unable to delete the calendar." : "A apărut o eroare, nu se poate șterge calendarul.", + "Commuting" : "În deplasare", + "Talk" : "Discuție", + "Movie" : "Film", "Mail" : "Mail", - "Play" : "Redă", - "Global" : "Global" + "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", + "Appointment not found" : "Programarea nu a fost găsită", + "User not found" : "Utilizatorul nu a fost găsit" },"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 45c3da66e1..37b5c446d1 100644 --- a/l10n/ru.js +++ b/l10n/ru.js @@ -1,59 +1,137 @@ OC.L10N.register( "calendar", { - "User-Session unexpectedly expired" : "Сеанс пользователя неожиданно завершён", + "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 " : "Письмо успешно отправлено по адресу", + "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" : "Приближающиеся события", + "More events" : "Следующие события", + "No more events today" : "На сегодня больше нет событий", + "No upcoming events" : "Приближающиеся события отсуствуют", + "%1$s with %2$s" : "%1$s с %2$s", "Calendar" : "Календарь", - "A Calendar app for Nextcloud" : "Календарь для Nextcloud", + "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" : "Подтвердить", + "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) забронировал(а) встречу с вами.", + "Anniversary" : "Годовщина", + "Appointment" : "Встреча", + "Business" : "Работа", + "Education" : "Образование", + "Holiday" : "Отпуск", + "Meeting" : "Встреча", + "Miscellaneous" : "Разное", + "Non-working hours" : "Не рабочие часы", + "Not in office" : "Не в офисе", + "Personal" : "Личный", + "Phone call" : "Телефонный звонок", + "Sick day" : "Больничный", + "Special occasion" : "Особый случай", + "Travel" : "Путешествие", + "Vacation" : "Отпуск", + "Custom Categories" : "Пользовательские категории", + "Collaborative Tags" : "Метки совместной работы", + "Standard Categories" : "Стандартные категории", + "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).", "Previous day" : "Предыдущий день", "Previous week" : "Предыдущая неделя", + "Previous year" : "Предыдущий год", "Previous month" : "Предыдущий месяц", "Next day" : "Следующий день", "Next week" : "Следующая неделя", + "Next year" : "Следующий год", "Next month" : "Следующий месяц", - "+ New event" : "+ Создать событие", + "Event" : "Событие", + "Create new event" : "Создать событие", "Today" : "Сегодня", "Day" : "День", "Week" : "Неделя", "Month" : "Месяц", + "Year" : "Год", "List" : "Список", - "Untitled calendar" : "Календарь без названия", - "Edit name" : "Изменить название", - "Saving name …" : "Сохранение названия…", - "Edit color" : "Изменить цвет", - "Saving color …" : "Сохранение цвета…", - "Copy private link" : "Скопировать закрытую ссылку", - "Download" : "Скачать", - "Unshare from me" : "Отписаться", + "Preview" : "Предварительный просмотр", + "Copy link" : "Копировать ссылку", + "Edit" : "Редактировать", "Delete" : "Удалить", + "Appointment link was copied to clipboard" : "Ссылка на эту встречу скопирована в буфер обмена", + "Appointment link could not be copied to clipboard" : "Не удалось скопировать в буфер обмена ссылку на эту встречу", + "Add new" : "Добавить новое", + "Untitled calendar" : "Календарь без названия", + "Shared with you by" : "Получено от", + "Edit and share calendar" : "Редактировать и делиться календарем", + "Edit calendar" : "Редактировать календарь", + "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." : "Не удалось изменить цвет календаря.", "_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} секунды"], + "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" : "Добавить общий календарь праздников", + "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://", + "Copy subscription link" : "Скопировать ссылку на подписку", + "Copying link …" : "Копирование ссылки…", + "Copied link" : "Ссылка скопирована", + "Could not copy link" : "Не удалось скопировать ссылку", + "Export" : "Экспорт", + "Calendar link copied to clipboard." : "Ссылка на календарь скопирована в буфер обмена.", + "Calendar link could not be copied to clipboard." : "Не удалось скопировать ссылку на календарь в буфер обмена.", + "Trash bin" : "Корзина", + "Loading deleted items." : "Загрузка удалённых объектов…", + "You do not have any deleted items." : "Нет ни одного удалённого объекта.", + "Name" : "Название", + "Deleted" : "Удалено", + "Restore" : "Восстановить", + "Delete permanently" : "Удалить безвозвратно", + "Empty trash bin" : "Очистить корзину", + "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?" : "Вы действительно хотите очистить корзину ?", + "_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." : "Не удалось обновить порядок календарей.", + "Internal link" : "Внутренняя ссылка", + "A private link that can be used with external clients" : "Частная ссылка, которую можно использовать с внешними клиентами", + "Copy internal link" : "Копировать внутреннюю ссылку", "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" : "Код скопирован", @@ -65,32 +143,32 @@ OC.L10N.register( "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" : "Пользователи или группы отсутствуют", - "can edit" : "разрешить редактировать", + "can edit" : "может ред.", "Unshare with {displayName}" : "Отменить общий доступ для {displayName}", - "An error occurred, unable to change the unshare the calendar." : "Произошла ошибка, не удалось закрыть доступ к календарю.", + "An error occurred while unsharing 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://)" : "Введите верный URL: адрес должен начинаться с http://, https://, webcal:// или webcals://", - "Could not update calendar order." : "Не удалось обновить порядок календарей.", + "Share with users or groups" : "Поделиться с пользователями или группами", + "No users or groups" : "Пользователи или группы отсутствуют", + "Calendar name …" : "Название календаря ...", + "Share calendar" : "Поделиться календарем", + "Unshare from me" : "Отписаться", + "Save" : "Сохранить", + "Failed to save calendar name and color" : "Не удалось сохранить имя и цвет календаря", "Import calendars" : "Импортировать календари", "Please select a calendar to import into …" : "Выберите календарь для импорта…", "Filename" : "Имя файла", "Calendar to import into" : "Календарь для импорта", "Cancel" : "Отмена", "_Import calendar_::_Import calendars_" : ["Импорт календаря","Импорт календарей","Импорт календарей","Импорт календарей"], - "{filename} is an unsupported file-type" : "Файл {filename} неподдерживаемого типа", + "Default attachments location" : "Расположение сохранения вложений по умолчанию", + "Select the default location for attachments" : "Выберите расположение для сохранения вложений по умолчанию", + "Invalid location selected" : "Указано недействительное расположение", + "Attachments folder successfully saved." : "Параметры расположения вложений сохранены.", + "Error on saving attachments folder." : "Не удалось задать папку для хранения вложений.", "{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 событий","Импортировано %n события"], + "_Successfully imported %n event_::_Successfully imported %n events_" : ["Событие импортировано","Импортировано %n события","Импортировано %n событий","Импортировано %n событий"], "Automatic" : "Автоматически", "Automatic ({detected})" : "Автоматически ({detected})", "New setting was not saved successfully." : "Не удалось сохранить параметры.", @@ -103,21 +181,83 @@ 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" : "Дублировать событие", "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 reminder" : "Напоминание по умолчанию", "Copy primary CalDAV address" : "Скопировать основной адрес CalDAV", "Copy iOS/macOS CalDAV address" : "Скопировать адрес CalDAV для iOS/macOS", + "Personal availability settings" : "Личные настройки доступности", "Show keyboard shortcuts" : "Показать горячие клавиши клавиатуры", - "Settings & import" : "Параметры и импорт", + "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} минуты","{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 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" : "Вторник", + "Wednesday" : "Среда", + "Thursday" : "Четверг", + "Friday" : "Пятница", + "Saturday" : "Суббота", + "Sunday" : "Воскресенье", + "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" : "Редактировать встречу", + "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" : "Напоминание", "before at" : "ранее в", "Notification" : "Уведомление", "Email" : "Эл. почта", @@ -125,61 +265,85 @@ OC.L10N.register( "Other notification" : "Другое уведомление", "Relative to event" : "Относительно события", "On date" : "В указанную дату", - "Edit time" : "Изменено", - "Save time" : "Сохранено", + "Edit time" : "Редактировать время", + "Save time" : "Сохранить время", "Remove reminder" : "Удалить напоминание", "on" : "в", "at" : "в", "+ Add reminder" : "+ Создать напоминание", + "Add reminder" : "Добавить напоминание", "_second_::_seconds_" : ["секунда","секунды","секунд","секунды"], "_minute_::_minutes_" : ["минута","минуты","минут","минуты"], "_hour_::_hours_" : ["час","часа","часов","часы"], "_day_::_days_" : ["день","дня","дней","дни"], "_week_::_weeks_" : ["неделя","недель","недель","недели"], - "No reminders yet" : "Ещё нет ни одного напоминания", + "No attachments" : "Нет ни одного вложения", + "Add from Files" : "Добавить из файлов", + "Upload from device" : "Загрузить с устройства", + "Delete file" : "Удалить файл", + "Choose a file to add as attachment" : "Выбрать файл для вложения", + "Choose a file to share as a link" : "Выберите файл для публикации ссылкой", + "Attachment {name} already exist!" : "Файл вложения «{name}» уже существует.", + "_{count} attachment_::_{count} attachments_" : ["{count} вложение","{count} вложения","{count} вложений","{count} вложений"], + "Invitation accepted" : "Приглашение принято", + "Available" : "Доступный", + "Suggested" : "Предложенный", + "Participation marked as tentative" : "Участие обозначено как «под вопросом»", + "Accepted {organizerName}'s invitation" : "Принято приглашение от {organizerName}", + "Not available" : "Не доступен", + "Invitation declined" : "Приглашение отклонено", + "Declined {organizerName}'s invitation" : "Отклонено приглашение от {organizerName}", + "Invitation is delegated" : "Приглашение делегировано", + "Checking availability" : "Проверка доступности", + "Invitation sent" : "Приглашение отправлено", + "Has not responded to {organizerName}'s invitation yet" : "Ответ на приглашение от {organizerName} ещё не отправлен", "Availability of attendees, resources and rooms" : "Доступность участников, ресурсов и комнат", + "{organizer} (organizer)" : "{organizer} (организатор)", + "Free" : "Свободен", "Busy (tentative)" : "Занят (под вопросом)", "Busy" : "Занят", "Out of office" : "Вне офиса", "Unknown" : "Неизвестно", - "{name} accepted your invitation." : "{name} принял(а) ваше приглашение.", - "{name} accepted {organizerName}'s invitation." : "{name} принял(а) приглашение {organizerName}.", - "{name} declined your invitation." : "{name} отклонил(а) ваше приглашение.", - "{name} declined {organizerName}'s invitation." : "{name} отклонил(а) приглашение {organizerName}.", - "{name} has delegated their invitation." : "{name} перепоручил(а) своё приглашение.", - "{name} marked their participation as tentative." : "{name} обозначил(а) своё участие как «под вопросом».", - "{name} did not respond to your invitation yet." : "{name} ещё не ответил(а) на ваше приглашение. ", - "{name} did not respond to {organizerName}'s invitation yet." : "{name} ещё не ответил(а) на приглашение {organizerName}.", + "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" : "Показать занятое время", + "No attendees yet" : "Ещё нет участников", "Successfully appended link to talk room to description." : "Ссылка на комнату приложения Talk добавлена в описание.", "Error creating Talk room" : "Не удалось создать комнату в приложении Talk.", - "Send e-mail" : "Отправить сообщение эл. почты", + "Send email" : "Отправить сообщение", "Chairperson" : "Председатель", "Required participant" : "Обязательный участник", "Optional participant" : "Необязательный участник", "Non-participant" : "Не участвует", "Remove attendee" : "Удалить участника", - "Search for e-mails, users, contacts, resources or rooms" : "Поиск адресов эл.почты, пользователей, контактов, ресурсов и комнат", + "Search for emails, users or contacts" : "Поиск по адресам эл. почты, пользователям и контактам", "No match found" : "Соответствий не найдено", - "No attendees 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" : "Весь день", - "Can not 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 {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" : "никогда", "on date" : "в указанную дату", "after" : "после", "_time_::_times_" : ["раз","раз","раз","раз"], - "This event is the recurrence-exception of a recurrence-set. You can not 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" : "четвёртый", @@ -187,25 +351,37 @@ OC.L10N.register( "second to last" : "предпоследний", "last" : "последний", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Изменение правила повторения повлияет только на это и все будущие повторения события.", - "Repeat" : "Повтор", "Repeat every" : "Повторять каждые", "By day of the month" : "В указанные дни месяца", "On the" : "По", "_month_::_months_" : ["месяц","месяца","месяцев","месяца"], "_year_::_years_" : ["год","года","лет","года"], - "Monday" : "Понедельник", "weekday" : "рабочий день", "weekend day" : "выходной день", - "Summary" : "Итого", + "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" : "Предложения", + "No rooms or resources yet" : "Комнаты или ресурсы пока не назначены", + "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" : "недоступен", + "Room type" : "Тип комнаты", + "Any" : "Любой", + "Minimum seating capacity" : "Минимальная вместимость", "More" : "Больше", - "Save" : "Сохранить", - "Update" : "Обновить", "Update this occurrence" : "Обновить это повторение", "Update this and all future" : "Обновить это и все будущие повторния", "Public calendar does not exist" : "Общедоступный календарь не существует", "Maybe the share was deleted or has expired?" : "Возможно общий ресурс был удалён или истёк срок действия доступа.", - "Please select a timezone:" : "Выберите часовой пояс:", + "Please select a time zone:" : "Выберите часовой пояс:", "Pick a time" : "Выберите время", "Pick a date" : "Выберите дату", "from {formattedDate}" : "с {formattedDate}", @@ -217,41 +393,52 @@ OC.L10N.register( "{formattedDate} at {formattedTime}" : "{formattedDate} в {formattedTime}", "Please enter a valid date" : "Введите верную дату", "Please enter a valid date and time" : "Введите верную дату и время", - "Type to search timezone" : "Поиск часового пояса", - "Personal" : "Личный", - "The automatic timezone detection determined your timezone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your timezone manually in the calendar settings." : "Автоматическое обнаружение часового пояса определило ваш часовой пояс как UTC.\nСкорее всего, это результат ограничений безопасности вашего веб-браузера.\nПожалуйста, установите часовой пояс вручную в настройках календаря.", - "Your configured timezone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your timezone in the settings and report this issue." : "В качестве часового пояса будет использоваться UTC, так как не удалось найти соответствие заданному часовому поясу ({timezoneId}).\nИзмените часовой пояс в параметрах приложения и сообщите разработчикам об этой ошибке.", - "No more events today" : "На сегодня больше нет событий", - "No upcoming events" : "Приближающиеся события отсуствуют", + "Type to search time zone" : "Начните вводить название часового поиска", + "Global" : "Общие", + "Public holiday calendars" : "Общие календари праздников", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Общие календари праздников предоставляются Thunderbird. Данные календаря будут загружены с {website}", + "By {authors}" : "{authors}", + "Subscribed" : "Подписано", + "Subscribe" : "Подписаться", + "Holidays in {region}" : "Праздники в {region}", + "An error occurred, unable to create the public holiday calendar." : "Произошла ошибка, не удалось создать общий календарь праздников.", + "Select 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}", + "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. Пожалуйста, измените свой часовой пояс в настройках и сообщите об этой проблеме.", "Create a new event" : "Создать событие", "[Today]" : "[Сегодня]", "[Tomorrow]" : "[Завтра]", "[Yesterday]" : "[Вчера]", "[Last] dddd" : "[Last] dddd", "Event does not exist" : "Событие не существует", + "Duplicate" : "Дублировать", "Delete this occurrence" : "Удалить это повторение", "Delete this and all future" : "Удалить это и все будущие повторения", "Details" : "Подробности", + "Managing shared access" : "Управление общим доступом ", + "Deny access" : "Закрыть доступ", + "Invite" : "Приглашение", "Attendees" : "Участники", - "Reminders" : "Напоминания", + "Resources" : "Ресурсы", + "_User requires access to your file_::_Users require access to your file_" : ["Пользователю требуется доступ к вашему файлу","Пользователям требуется доступ к вашему файлу","Пользователям требуется доступ к вашему файлу","Пользователям требуется доступ к вашему файлу"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Вложение, требующие общего доступа","Вложения, требующие общего доступа","Вложения, требующие общего доступа","Вложения, требующие общего доступа"], "Close" : "Закрыть", "Show more details" : "Подробные сведения", "Subscribe to {name}" : "Подписаться на {name}", - "Download {name}" : "Скачать {name}", - "Anniversary" : "Годовщина", - "Appointment" : "Встреча", - "Business" : "Работа", - "Education" : "Образование", - "Holiday" : "Отпуск", - "Meeting" : "Встреча", - "Miscellaneous" : "Разное", - "Non-working hours" : "Не рабочие часы", - "Not in office" : "Не в офисе", - "Phone call" : "Телефонный звонок", - "Sick day" : "Больничный", - "Special occasion" : "Особый случай", - "Travel" : "Путешествие", - "Vacation" : "Отпуск", + "Export {name}" : "Экспортировать {name}", "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}"], @@ -284,14 +471,7 @@ OC.L10N.register( "Untitled event" : "Событие без названия", "Untitled task" : "Задача без названия", "Please ask your administrator to enable the Tasks App." : "Попросите администратора сервера активировать приложение «Задачи».", - "prev" : "пред.", - "next" : "след.", - "prev year" : "пред. год", - "next year" : "в следующем году", - "today" : "сегодня", - "list" : "список", "W" : "Н", - "all-day" : "весь день", "%n more" : "и ещё %n", "No events to display" : "Отсутствуют события для показа", "_+%n more_::_+%n more_" : ["+ ещё %n","+ ещё %n","+ ещё %n","+ ещё %n"], @@ -299,62 +479,95 @@ OC.L10N.register( "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" : "Комната для семинаров", + "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." : "Видимость этого события в опубликованных календарях. ", - "Location" : "Местоположение", "Add a location" : "Добавить местоположение", - "Description" : "Описание", "Add a description" : "Добавить описание", "Status" : "Состояние", "Confirmed" : "Подтверждено", - "Tentative" : "Под вопросом", "Canceled" : "Отменена", "Confirmation about the overall status of the event." : "Подтверждение об общем статусе события.", "Show as" : "Показать как", "Take this event into account when calculating free-busy information." : "Учитывать это событие при учёте свободного времени.", - "Free" : "Свободен", "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" : "Произошла ошибка при получении информации о файле", "Chat room for event" : "Комната в приложении Talk для этого события", + "An error occurred, unable to delete the calendar." : "Произошла ошибка, не удалось удалить календарь.", "Imported {filename}" : "Файл {filename} импортирован", + "This is an event reminder." : "Это напоминание о событии.", "Meditation" : "Медитация", "Relaxing" : "Расслабляющий", "Relax" : "Расслабление", + "Break" : "Перерыв", + "Commute" : "Поездка", + "Commuting" : "Перемещения", + "Shuttle" : "Шаттл", + "Invoice" : "Счет-фактура", + "Finance" : "Финансы", + "Bank" : "Банк", + "Money" : "Деньги", + "Wedding" : "Свадьба", + "Dog" : "Собака", + "Concert" : "Концерт", + "Festival" : "Фестиваль", + "Theater" : "Театр", + "Theatre" : "Театр", "Presentation" : "Презентация", - "Present" : "Настоящее время", + "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" : "Ректроспектива", - "Review" : "Обзор", "Office" : "Офис", "Contributor week" : "Неделя участия", - "Party" : "Вечеринка", - "Celebration" : "Празднование", "Mail" : "Почта", "Soccer" : "Футбол", "Football" : "Американский футбол", "Gaming" : "Видео игры", - "Play" : "Воспр.", - "Game" : "Игра", "Drive" : "Езда", + "Driving" : "Вождение", "Bicycle" : "Езда на велосипеде", "Cycle" : "Велосипед", + "Cycling" : "Езда на велосипеде", "Biking" : "Езда на мотоцикле", + "Bike" : "Bike", "Podcast" : "Подкаст", "Basketball" : "Баскетбол", "Fishing" : "Рыбалка", @@ -365,10 +578,12 @@ OC.L10N.register( "Museum" : "Музей", "Pilates" : "Пилатес", "Park" : "Парк", + "Walk" : "Прогулка", "Studying" : "Учёба", "Doctor" : "Врач", "Health" : "Здоровье", "Dentist" : "Стоматология", + "Hospital" : "Больница", "Interview" : "Собеседование", "Training" : "Тренировка", "Practice" : "Практика", @@ -379,7 +594,10 @@ OC.L10N.register( "Gym" : "Тренажёрный зал", "Barber" : "Парикмахер", "Haircut" : "Стрижка", + "Hairdresser" : "Парикмахер", "Exam" : "Экзамен", + "Written test" : "Письменный тест", + "Oral test" : "Устный тест", "Working" : "Работа", "New Years Eve" : "Сочельник", "NYE" : "Новый год", @@ -398,20 +616,27 @@ OC.L10N.register( "Conference" : "Конференция", "Pizza" : "Пицца", "Travelling" : "Путешествие", + "Trip" : "Поездка", "Journey" : "Поездка", "Collaborate" : "Совместная работа", "Pair" : "Пара", "Lecture" : "Лекция", "Seminar" : "Семинар", + "Teaching" : "Обучение", "Photograph" : "Фотограф", + "Party" : "Вечеринка", + "Celebration" : "Празднование", "Celebrate" : "Празднование", + "Birthday" : "День рождения", "Shopping" : "Покупки", + "Groceries" : "Бакалея", "Skate" : "Роликовые коньки", "Skateboard" : "Скейтборд", "Wine tasting" : "Дегустация вина", "Golf" : "Гольф", "Dinner" : "Ужин", "Lunch" : "Обед", - "Global" : "Общие" + "Appointment not found" : "Встреча не найдена", + "User not found" : "Пользователь не найден" }, "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 58afa28bbb..6ac23dd7c6 100644 --- a/l10n/ru.json +++ b/l10n/ru.json @@ -1,57 +1,135 @@ { "translations": { - "User-Session unexpectedly expired" : "Сеанс пользователя неожиданно завершён", + "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 " : "Письмо успешно отправлено по адресу", + "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" : "Приближающиеся события", + "More events" : "Следующие события", + "No more events today" : "На сегодня больше нет событий", + "No upcoming events" : "Приближающиеся события отсуствуют", + "%1$s with %2$s" : "%1$s с %2$s", "Calendar" : "Календарь", - "A Calendar app for Nextcloud" : "Календарь для Nextcloud", + "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" : "Подтвердить", + "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) забронировал(а) встречу с вами.", + "Anniversary" : "Годовщина", + "Appointment" : "Встреча", + "Business" : "Работа", + "Education" : "Образование", + "Holiday" : "Отпуск", + "Meeting" : "Встреча", + "Miscellaneous" : "Разное", + "Non-working hours" : "Не рабочие часы", + "Not in office" : "Не в офисе", + "Personal" : "Личный", + "Phone call" : "Телефонный звонок", + "Sick day" : "Больничный", + "Special occasion" : "Особый случай", + "Travel" : "Путешествие", + "Vacation" : "Отпуск", + "Custom Categories" : "Пользовательские категории", + "Collaborative Tags" : "Метки совместной работы", + "Standard Categories" : "Стандартные категории", + "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).", "Previous day" : "Предыдущий день", "Previous week" : "Предыдущая неделя", + "Previous year" : "Предыдущий год", "Previous month" : "Предыдущий месяц", "Next day" : "Следующий день", "Next week" : "Следующая неделя", + "Next year" : "Следующий год", "Next month" : "Следующий месяц", - "+ New event" : "+ Создать событие", + "Event" : "Событие", + "Create new event" : "Создать событие", "Today" : "Сегодня", "Day" : "День", "Week" : "Неделя", "Month" : "Месяц", + "Year" : "Год", "List" : "Список", - "Untitled calendar" : "Календарь без названия", - "Edit name" : "Изменить название", - "Saving name …" : "Сохранение названия…", - "Edit color" : "Изменить цвет", - "Saving color …" : "Сохранение цвета…", - "Copy private link" : "Скопировать закрытую ссылку", - "Download" : "Скачать", - "Unshare from me" : "Отписаться", + "Preview" : "Предварительный просмотр", + "Copy link" : "Копировать ссылку", + "Edit" : "Редактировать", "Delete" : "Удалить", + "Appointment link was copied to clipboard" : "Ссылка на эту встречу скопирована в буфер обмена", + "Appointment link could not be copied to clipboard" : "Не удалось скопировать в буфер обмена ссылку на эту встречу", + "Add new" : "Добавить новое", + "Untitled calendar" : "Календарь без названия", + "Shared with you by" : "Получено от", + "Edit and share calendar" : "Редактировать и делиться календарем", + "Edit calendar" : "Редактировать календарь", + "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." : "Не удалось изменить цвет календаря.", "_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} секунды"], + "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" : "Добавить общий календарь праздников", + "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://", + "Copy subscription link" : "Скопировать ссылку на подписку", + "Copying link …" : "Копирование ссылки…", + "Copied link" : "Ссылка скопирована", + "Could not copy link" : "Не удалось скопировать ссылку", + "Export" : "Экспорт", + "Calendar link copied to clipboard." : "Ссылка на календарь скопирована в буфер обмена.", + "Calendar link could not be copied to clipboard." : "Не удалось скопировать ссылку на календарь в буфер обмена.", + "Trash bin" : "Корзина", + "Loading deleted items." : "Загрузка удалённых объектов…", + "You do not have any deleted items." : "Нет ни одного удалённого объекта.", + "Name" : "Название", + "Deleted" : "Удалено", + "Restore" : "Восстановить", + "Delete permanently" : "Удалить безвозвратно", + "Empty trash bin" : "Очистить корзину", + "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?" : "Вы действительно хотите очистить корзину ?", + "_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." : "Не удалось обновить порядок календарей.", + "Internal link" : "Внутренняя ссылка", + "A private link that can be used with external clients" : "Частная ссылка, которую можно использовать с внешними клиентами", + "Copy internal link" : "Копировать внутреннюю ссылку", "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" : "Код скопирован", @@ -63,32 +141,32 @@ "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" : "Пользователи или группы отсутствуют", - "can edit" : "разрешить редактировать", + "can edit" : "может ред.", "Unshare with {displayName}" : "Отменить общий доступ для {displayName}", - "An error occurred, unable to change the unshare the calendar." : "Произошла ошибка, не удалось закрыть доступ к календарю.", + "An error occurred while unsharing 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://)" : "Введите верный URL: адрес должен начинаться с http://, https://, webcal:// или webcals://", - "Could not update calendar order." : "Не удалось обновить порядок календарей.", + "Share with users or groups" : "Поделиться с пользователями или группами", + "No users or groups" : "Пользователи или группы отсутствуют", + "Calendar name …" : "Название календаря ...", + "Share calendar" : "Поделиться календарем", + "Unshare from me" : "Отписаться", + "Save" : "Сохранить", + "Failed to save calendar name and color" : "Не удалось сохранить имя и цвет календаря", "Import calendars" : "Импортировать календари", "Please select a calendar to import into …" : "Выберите календарь для импорта…", "Filename" : "Имя файла", "Calendar to import into" : "Календарь для импорта", "Cancel" : "Отмена", "_Import calendar_::_Import calendars_" : ["Импорт календаря","Импорт календарей","Импорт календарей","Импорт календарей"], - "{filename} is an unsupported file-type" : "Файл {filename} неподдерживаемого типа", + "Default attachments location" : "Расположение сохранения вложений по умолчанию", + "Select the default location for attachments" : "Выберите расположение для сохранения вложений по умолчанию", + "Invalid location selected" : "Указано недействительное расположение", + "Attachments folder successfully saved." : "Параметры расположения вложений сохранены.", + "Error on saving attachments folder." : "Не удалось задать папку для хранения вложений.", "{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 событий","Импортировано %n события"], + "_Successfully imported %n event_::_Successfully imported %n events_" : ["Событие импортировано","Импортировано %n события","Импортировано %n событий","Импортировано %n событий"], "Automatic" : "Автоматически", "Automatic ({detected})" : "Автоматически ({detected})", "New setting was not saved successfully." : "Не удалось сохранить параметры.", @@ -101,21 +179,83 @@ "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" : "Дублировать событие", "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 reminder" : "Напоминание по умолчанию", "Copy primary CalDAV address" : "Скопировать основной адрес CalDAV", "Copy iOS/macOS CalDAV address" : "Скопировать адрес CalDAV для iOS/macOS", + "Personal availability settings" : "Личные настройки доступности", "Show keyboard shortcuts" : "Показать горячие клавиши клавиатуры", - "Settings & import" : "Параметры и импорт", + "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} минуты","{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 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" : "Вторник", + "Wednesday" : "Среда", + "Thursday" : "Четверг", + "Friday" : "Пятница", + "Saturday" : "Суббота", + "Sunday" : "Воскресенье", + "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" : "Редактировать встречу", + "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" : "Напоминание", "before at" : "ранее в", "Notification" : "Уведомление", "Email" : "Эл. почта", @@ -123,61 +263,85 @@ "Other notification" : "Другое уведомление", "Relative to event" : "Относительно события", "On date" : "В указанную дату", - "Edit time" : "Изменено", - "Save time" : "Сохранено", + "Edit time" : "Редактировать время", + "Save time" : "Сохранить время", "Remove reminder" : "Удалить напоминание", "on" : "в", "at" : "в", "+ Add reminder" : "+ Создать напоминание", + "Add reminder" : "Добавить напоминание", "_second_::_seconds_" : ["секунда","секунды","секунд","секунды"], "_minute_::_minutes_" : ["минута","минуты","минут","минуты"], "_hour_::_hours_" : ["час","часа","часов","часы"], "_day_::_days_" : ["день","дня","дней","дни"], "_week_::_weeks_" : ["неделя","недель","недель","недели"], - "No reminders yet" : "Ещё нет ни одного напоминания", + "No attachments" : "Нет ни одного вложения", + "Add from Files" : "Добавить из файлов", + "Upload from device" : "Загрузить с устройства", + "Delete file" : "Удалить файл", + "Choose a file to add as attachment" : "Выбрать файл для вложения", + "Choose a file to share as a link" : "Выберите файл для публикации ссылкой", + "Attachment {name} already exist!" : "Файл вложения «{name}» уже существует.", + "_{count} attachment_::_{count} attachments_" : ["{count} вложение","{count} вложения","{count} вложений","{count} вложений"], + "Invitation accepted" : "Приглашение принято", + "Available" : "Доступный", + "Suggested" : "Предложенный", + "Participation marked as tentative" : "Участие обозначено как «под вопросом»", + "Accepted {organizerName}'s invitation" : "Принято приглашение от {organizerName}", + "Not available" : "Не доступен", + "Invitation declined" : "Приглашение отклонено", + "Declined {organizerName}'s invitation" : "Отклонено приглашение от {organizerName}", + "Invitation is delegated" : "Приглашение делегировано", + "Checking availability" : "Проверка доступности", + "Invitation sent" : "Приглашение отправлено", + "Has not responded to {organizerName}'s invitation yet" : "Ответ на приглашение от {organizerName} ещё не отправлен", "Availability of attendees, resources and rooms" : "Доступность участников, ресурсов и комнат", + "{organizer} (organizer)" : "{organizer} (организатор)", + "Free" : "Свободен", "Busy (tentative)" : "Занят (под вопросом)", "Busy" : "Занят", "Out of office" : "Вне офиса", "Unknown" : "Неизвестно", - "{name} accepted your invitation." : "{name} принял(а) ваше приглашение.", - "{name} accepted {organizerName}'s invitation." : "{name} принял(а) приглашение {organizerName}.", - "{name} declined your invitation." : "{name} отклонил(а) ваше приглашение.", - "{name} declined {organizerName}'s invitation." : "{name} отклонил(а) приглашение {organizerName}.", - "{name} has delegated their invitation." : "{name} перепоручил(а) своё приглашение.", - "{name} marked their participation as tentative." : "{name} обозначил(а) своё участие как «под вопросом».", - "{name} did not respond to your invitation yet." : "{name} ещё не ответил(а) на ваше приглашение. ", - "{name} did not respond to {organizerName}'s invitation yet." : "{name} ещё не ответил(а) на приглашение {organizerName}.", + "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" : "Показать занятое время", + "No attendees yet" : "Ещё нет участников", "Successfully appended link to talk room to description." : "Ссылка на комнату приложения Talk добавлена в описание.", "Error creating Talk room" : "Не удалось создать комнату в приложении Talk.", - "Send e-mail" : "Отправить сообщение эл. почты", + "Send email" : "Отправить сообщение", "Chairperson" : "Председатель", "Required participant" : "Обязательный участник", "Optional participant" : "Необязательный участник", "Non-participant" : "Не участвует", "Remove attendee" : "Удалить участника", - "Search for e-mails, users, contacts, resources or rooms" : "Поиск адресов эл.почты, пользователей, контактов, ресурсов и комнат", + "Search for emails, users or contacts" : "Поиск по адресам эл. почты, пользователям и контактам", "No match found" : "Соответствий не найдено", - "No attendees 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" : "Весь день", - "Can not 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 {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" : "никогда", "on date" : "в указанную дату", "after" : "после", "_time_::_times_" : ["раз","раз","раз","раз"], - "This event is the recurrence-exception of a recurrence-set. You can not 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" : "четвёртый", @@ -185,25 +349,37 @@ "second to last" : "предпоследний", "last" : "последний", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Изменение правила повторения повлияет только на это и все будущие повторения события.", - "Repeat" : "Повтор", "Repeat every" : "Повторять каждые", "By day of the month" : "В указанные дни месяца", "On the" : "По", "_month_::_months_" : ["месяц","месяца","месяцев","месяца"], "_year_::_years_" : ["год","года","лет","года"], - "Monday" : "Понедельник", "weekday" : "рабочий день", "weekend day" : "выходной день", - "Summary" : "Итого", + "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" : "Предложения", + "No rooms or resources yet" : "Комнаты или ресурсы пока не назначены", + "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" : "недоступен", + "Room type" : "Тип комнаты", + "Any" : "Любой", + "Minimum seating capacity" : "Минимальная вместимость", "More" : "Больше", - "Save" : "Сохранить", - "Update" : "Обновить", "Update this occurrence" : "Обновить это повторение", "Update this and all future" : "Обновить это и все будущие повторния", "Public calendar does not exist" : "Общедоступный календарь не существует", "Maybe the share was deleted or has expired?" : "Возможно общий ресурс был удалён или истёк срок действия доступа.", - "Please select a timezone:" : "Выберите часовой пояс:", + "Please select a time zone:" : "Выберите часовой пояс:", "Pick a time" : "Выберите время", "Pick a date" : "Выберите дату", "from {formattedDate}" : "с {formattedDate}", @@ -215,41 +391,52 @@ "{formattedDate} at {formattedTime}" : "{formattedDate} в {formattedTime}", "Please enter a valid date" : "Введите верную дату", "Please enter a valid date and time" : "Введите верную дату и время", - "Type to search timezone" : "Поиск часового пояса", - "Personal" : "Личный", - "The automatic timezone detection determined your timezone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your timezone manually in the calendar settings." : "Автоматическое обнаружение часового пояса определило ваш часовой пояс как UTC.\nСкорее всего, это результат ограничений безопасности вашего веб-браузера.\nПожалуйста, установите часовой пояс вручную в настройках календаря.", - "Your configured timezone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your timezone in the settings and report this issue." : "В качестве часового пояса будет использоваться UTC, так как не удалось найти соответствие заданному часовому поясу ({timezoneId}).\nИзмените часовой пояс в параметрах приложения и сообщите разработчикам об этой ошибке.", - "No more events today" : "На сегодня больше нет событий", - "No upcoming events" : "Приближающиеся события отсуствуют", + "Type to search time zone" : "Начните вводить название часового поиска", + "Global" : "Общие", + "Public holiday calendars" : "Общие календари праздников", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Общие календари праздников предоставляются Thunderbird. Данные календаря будут загружены с {website}", + "By {authors}" : "{authors}", + "Subscribed" : "Подписано", + "Subscribe" : "Подписаться", + "Holidays in {region}" : "Праздники в {region}", + "An error occurred, unable to create the public holiday calendar." : "Произошла ошибка, не удалось создать общий календарь праздников.", + "Select 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}", + "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. Пожалуйста, измените свой часовой пояс в настройках и сообщите об этой проблеме.", "Create a new event" : "Создать событие", "[Today]" : "[Сегодня]", "[Tomorrow]" : "[Завтра]", "[Yesterday]" : "[Вчера]", "[Last] dddd" : "[Last] dddd", "Event does not exist" : "Событие не существует", + "Duplicate" : "Дублировать", "Delete this occurrence" : "Удалить это повторение", "Delete this and all future" : "Удалить это и все будущие повторения", "Details" : "Подробности", + "Managing shared access" : "Управление общим доступом ", + "Deny access" : "Закрыть доступ", + "Invite" : "Приглашение", "Attendees" : "Участники", - "Reminders" : "Напоминания", + "Resources" : "Ресурсы", + "_User requires access to your file_::_Users require access to your file_" : ["Пользователю требуется доступ к вашему файлу","Пользователям требуется доступ к вашему файлу","Пользователям требуется доступ к вашему файлу","Пользователям требуется доступ к вашему файлу"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Вложение, требующие общего доступа","Вложения, требующие общего доступа","Вложения, требующие общего доступа","Вложения, требующие общего доступа"], "Close" : "Закрыть", "Show more details" : "Подробные сведения", "Subscribe to {name}" : "Подписаться на {name}", - "Download {name}" : "Скачать {name}", - "Anniversary" : "Годовщина", - "Appointment" : "Встреча", - "Business" : "Работа", - "Education" : "Образование", - "Holiday" : "Отпуск", - "Meeting" : "Встреча", - "Miscellaneous" : "Разное", - "Non-working hours" : "Не рабочие часы", - "Not in office" : "Не в офисе", - "Phone call" : "Телефонный звонок", - "Sick day" : "Больничный", - "Special occasion" : "Особый случай", - "Travel" : "Путешествие", - "Vacation" : "Отпуск", + "Export {name}" : "Экспортировать {name}", "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}"], @@ -282,14 +469,7 @@ "Untitled event" : "Событие без названия", "Untitled task" : "Задача без названия", "Please ask your administrator to enable the Tasks App." : "Попросите администратора сервера активировать приложение «Задачи».", - "prev" : "пред.", - "next" : "след.", - "prev year" : "пред. год", - "next year" : "в следующем году", - "today" : "сегодня", - "list" : "список", "W" : "Н", - "all-day" : "весь день", "%n more" : "и ещё %n", "No events to display" : "Отсутствуют события для показа", "_+%n more_::_+%n more_" : ["+ ещё %n","+ ещё %n","+ ещё %n","+ ещё %n"], @@ -297,62 +477,95 @@ "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" : "Комната для семинаров", + "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." : "Видимость этого события в опубликованных календарях. ", - "Location" : "Местоположение", "Add a location" : "Добавить местоположение", - "Description" : "Описание", "Add a description" : "Добавить описание", "Status" : "Состояние", "Confirmed" : "Подтверждено", - "Tentative" : "Под вопросом", "Canceled" : "Отменена", "Confirmation about the overall status of the event." : "Подтверждение об общем статусе события.", "Show as" : "Показать как", "Take this event into account when calculating free-busy information." : "Учитывать это событие при учёте свободного времени.", - "Free" : "Свободен", "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" : "Произошла ошибка при получении информации о файле", "Chat room for event" : "Комната в приложении Talk для этого события", + "An error occurred, unable to delete the calendar." : "Произошла ошибка, не удалось удалить календарь.", "Imported {filename}" : "Файл {filename} импортирован", + "This is an event reminder." : "Это напоминание о событии.", "Meditation" : "Медитация", "Relaxing" : "Расслабляющий", "Relax" : "Расслабление", + "Break" : "Перерыв", + "Commute" : "Поездка", + "Commuting" : "Перемещения", + "Shuttle" : "Шаттл", + "Invoice" : "Счет-фактура", + "Finance" : "Финансы", + "Bank" : "Банк", + "Money" : "Деньги", + "Wedding" : "Свадьба", + "Dog" : "Собака", + "Concert" : "Концерт", + "Festival" : "Фестиваль", + "Theater" : "Театр", + "Theatre" : "Театр", "Presentation" : "Презентация", - "Present" : "Настоящее время", + "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" : "Ректроспектива", - "Review" : "Обзор", "Office" : "Офис", "Contributor week" : "Неделя участия", - "Party" : "Вечеринка", - "Celebration" : "Празднование", "Mail" : "Почта", "Soccer" : "Футбол", "Football" : "Американский футбол", "Gaming" : "Видео игры", - "Play" : "Воспр.", - "Game" : "Игра", "Drive" : "Езда", + "Driving" : "Вождение", "Bicycle" : "Езда на велосипеде", "Cycle" : "Велосипед", + "Cycling" : "Езда на велосипеде", "Biking" : "Езда на мотоцикле", + "Bike" : "Bike", "Podcast" : "Подкаст", "Basketball" : "Баскетбол", "Fishing" : "Рыбалка", @@ -363,10 +576,12 @@ "Museum" : "Музей", "Pilates" : "Пилатес", "Park" : "Парк", + "Walk" : "Прогулка", "Studying" : "Учёба", "Doctor" : "Врач", "Health" : "Здоровье", "Dentist" : "Стоматология", + "Hospital" : "Больница", "Interview" : "Собеседование", "Training" : "Тренировка", "Practice" : "Практика", @@ -377,7 +592,10 @@ "Gym" : "Тренажёрный зал", "Barber" : "Парикмахер", "Haircut" : "Стрижка", + "Hairdresser" : "Парикмахер", "Exam" : "Экзамен", + "Written test" : "Письменный тест", + "Oral test" : "Устный тест", "Working" : "Работа", "New Years Eve" : "Сочельник", "NYE" : "Новый год", @@ -396,20 +614,27 @@ "Conference" : "Конференция", "Pizza" : "Пицца", "Travelling" : "Путешествие", + "Trip" : "Поездка", "Journey" : "Поездка", "Collaborate" : "Совместная работа", "Pair" : "Пара", "Lecture" : "Лекция", "Seminar" : "Семинар", + "Teaching" : "Обучение", "Photograph" : "Фотограф", + "Party" : "Вечеринка", + "Celebration" : "Празднование", "Celebrate" : "Празднование", + "Birthday" : "День рождения", "Shopping" : "Покупки", + "Groceries" : "Бакалея", "Skate" : "Роликовые коньки", "Skateboard" : "Скейтборд", "Wine tasting" : "Дегустация вина", "Golf" : "Гольф", "Dinner" : "Ужин", "Lunch" : "Обед", - "Global" : "Общие" + "Appointment not found" : "Встреча не найдена", + "User not found" : "Пользователь не найден" },"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 e75d995d52..59d7af8dbb 100644 --- a/l10n/sc.js +++ b/l10n/sc.js @@ -1,111 +1,439 @@ OC.L10N.register( "calendar", { + "User-Session unexpectedly expired" : "Sessione utente iscadida in manera no prevìdida", + "Provided email-address is not valid" : "S'indiritzu de posta eletrònica frunidu no est bàlidu.", + "%s has published the calendar »%s«" : "%s at publicadu su calendàriu »%s«", + "Unexpected error sending email. Please contact your administrator." : "Errore non prevìdidu imbiende su messàgiu de posta eletrònica. Cuntata s'amministratzione.", + "Successfully sent email to %1$s" : "Messàgiu de posta eletrònica imbiadu in manera curreta a %1$s", "Hello," : "Salude,", + "We wanted to inform you that %s has published the calendar »%s«." : "T'informamus chi %s at publicadu su calendàriu »%s«.", "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", "Calendar" : "Calendàriu", + "Appointments" : "Apuntamentos", + "Confirm" : "Cunfirma", + "Date:" : "Data:", + "Where:" : "Ue:", + "Anniversary" : "Anniversàriu", + "Appointment" : "Apuntamentu", + "Business" : "Afàrios", + "Education" : "Educatzione", + "Holiday" : "Vacàntzias", + "Meeting" : "Atòbiu", + "Miscellaneous" : "Vàriu", + "Non-working hours" : "Oras chena traballu", + "Not in office" : "No est in ofìtziu", + "Personal" : "Personale", + "Phone call" : "Mutida de telèfonu", + "Sick day" : "Die de maladia", + "Special occasion" : "Ocasione ispetziale", + "Travel" : "Viàgiu", + "Vacation" : "Ausèntzia", "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", - "+ New event" : "+ Eventu nou", "Today" : "Oe", "Day" : "Die", "Week" : "Chida", "Month" : "Mese", + "Year" : "Annu", "List" : "Lista", - "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", - "Download" : "Iscàrriga", - "Unshare from me" : "Annulla sa cumpartzidura cun me", + "Preview" : "Anteprima", + "Copy link" : "Còpia ligòngiu", + "Edit" : "Modìfica", "Delete" : "Cantzella", - "An error occurred, unable to change visibility of the calendar." : "Ddoe at àpidu un'errore, no at fatu a cambiare sa visibilidade de su calendàriu.", - "An error occurred, unable to delete the calendar." : "Ddoe at àpidu un'errore, no at fatu a cantzellare su calendàriu.", + "Untitled calendar" : "Calendàriu chene tìtulu", + "Shared with you by" : "Cumpartzidu cun tegus dae", + "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.", + "_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"], + "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://)", + "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", "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." : "Ddoe at àpidu un'errore, no at fatu a torrare a numenare su calendàriu.", - "An error occurred, unable to change the calendar's color." : "Ddoe at àpidu un'errore, no at fatu a cambiare su colore de su calendàriu.", - "_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 {tempus} 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 {tempus} segundos"], + "Trash bin" : " Àliga", + "Name" : "Nùmene", + "Deleted" : "Cantzelladu", + "Restore" : "Riprìstina", + "Delete permanently" : "Cantzella in manera permanente", + "Empty trash bin" : "Bòida s'àliga", + "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", + "Could not update calendar order." : "No at fatu a agiornare s'òrdne 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." : "Ddoe at àpidu un'errore, no at fatu a publicare su calendàriu.", - "An error occurred, unable to send email." : "Ddoe at àpidu un'errore, no at fatu a imbiare su messàgiu de posta.", + "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", + "can edit" : "podet modificare", + "Unshare with {displayName}" : "Annulla sa cumpartzidura cun {displayName}", + "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.", "Share with users or groups" : "Cumpartzi cun utentes o grupos", "No users or groups" : "Peruna utèntzia o grupu", - "can edit" : "podet modificare", - "Unshare with {displayName}" : "Annulla sa cumpartzidura cun {ammustraNùmene}", - "An error occurred, unable to change the unshare the calendar." : "Ddoe 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." : "Ddoe 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 …", - "Creating subscription …" : "Creende sutascritzione …", - "An error occurred, unable to create the calendar." : "Ddoe 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://)", - "Could not update calendar order." : "No at fatu a agiornare s'òrdne de su calendàriu.", + "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", "Calendar to import into" : "Calendàriu de importare in", - "Cancel" : "Cantzella", + "Cancel" : "Annulla", "_Import calendar_::_Import calendars_" : ["Importa calendàriu","Importa calendàrios"], - "{filename} is an unsupported file-type" : "{nùmene archìviu} est una genia de archìviu non suportada", + "{filename} could not be parsed" : "No at fatu a analizare {filename} ", "No valid files found, aborting import" : "Perunu archìviu vàlidu agatadu, annullende s'importatzione", + "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 ({rilevadu})", + "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", "Navigation" : "Navigatzione", "Previous period" : "Tempus in antis", "Next period" : "Tempus imbeniente", "Views" : "Visualizatziones", + "Day view" : "Bista de sa die", + "Week view" : "Bista de sa chida", + "Month view" : "Bista de su mese", + "List view" : "Bista de s'elencu", "Actions" : "Atziones", "Create event" : "Crea eventu", + "Show shortcuts" : "Mustra curtziadòrgios", + "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", + "Show weekends" : "Mustra fines de chida", + "Show week numbers" : "Mustra nùmeru de chidas", + "Time increments" : "Crèschidas de tempus", + "Default reminder" : "Promemòria predefinidu", + "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.", + "Location" : "Positzione", + "Description" : "Descritzione", + "Visibility" : "Visibilidade", + "Duration" : "Durata", + "to" : "a", + "Add" : "Agiunghe", + "Monday" : "Lunis", + "Tuesday" : "Martis", + "Wednesday" : "Mércuris", + "Thursday" : "Giòbia", + "Friday" : "Chenàbura", + "Saturday" : "Sàbudu", + "Sunday" : "Domìnigu", + "Update" : "Agiorna", + "Your email address" : "Indiritzu tuo de posta eletrònica", + "before at" : "antis de is", "Notification" : "Notìfica", "Email" : "Posta eletrònica", + "Audio notification" : "Notìfica àudio", + "Other notification" : "Àtera notìfica", + "Relative to event" : "Relativu a s'eventu", + "On date" : "In data", + "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"], - "No reminders yet" : "Ancora perunu apuntu", + "Delete file" : "Cantzella archìviu", + "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", + "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)", + "Free" : "Lìberu", + "Busy (tentative)" : "Ocupadu (intentu)", "Busy" : "Faghende cosa", + "Out of office" : "Foras de serbìtziu", "Unknown" : "Non connotu", - "{name} accepted your invitation." : "{nùmene} at atzetadu s'invitu tuo.", - "{name} declined your invitation." : "{nùmene} at refudadu s'invitu tuo.", + "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", + "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].", "Remove color" : "Boga colore", "Event title" : "Tìtulu de s'eventu", "All day" : "Totu sa die", - "from {startDate}" : "dae {dieCumintzu}", - "to {endDate}" : "a {dieFine}", + "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}", + "Repeat" : "Repiti", + "End repeat" : "Acabba ripetitzione", + "Select to end repeat" : "Seletziona pro acabbare sa ripetitzione", "never" : "mai", - "Save" : "Sarva", + "on date" : "in data", + "after" : "a pustis", + "_time_::_times_" : ["borta","bortas"], + "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", + "_month_::_months_" : ["mese","meses"], + "_year_::_years_" : ["Annos","annos"], + "weekday" : "die de fatu", + "weekend day" : "die de fine de chida", + "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", + "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", + "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}", + "from {formattedDate} at {formattedTime}" : "dae {formattedDate} a is {formattedTime}", + "to {formattedDate} at {formattedTime}" : "a {formattedDate} a is {formattedTime}", + "on {formattedDate} at {formattedTime}" : "su {formattedDate} a is {formattedTime}", + "{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", + "Type to search time zone" : "Iscrire pro chircare fusu oràriu", + "Global" : "Globale", + "Subscribed" : "Sutaiscritu", + "Subscribe" : "Sutaiscrie", + "Time:" : "Tempus:", + "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.", + "Create a new event" : "Crea un'eventu nou", + "[Today]" : "[Oe]", + "[Tomorrow]" : "[Cras]", + "[Yesterday]" : "[Eris]", + "[Last] dddd" : "[Ùrtimu] dddd", + "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", + "Invite" : "Invita", + "Attendees" : "Partetzipantes", + "Resources" : "Risorsas", "Close" : "Serra", - "Description" : "Descritzione", + "Show more details" : "Mustra àteros detàllios", + "Subscribe to {name}" : "Sutaiscrie a {name}", + "Midnight on the day the event starts" : "Mesunotte de sa die in ue s'eventu cumintzat", + "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n die in antis de s'eventu a is {formattedHourMinute}","%n dies in antis de s'eventu a is {formattedHourMinute}"], + "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n die in antis de s'eventu a is {formattedHourMinute}","%n chidas in antis de s'eventu a is {formattedHourMinute}"], + "on the day of the event at {formattedHourMinute}" : "sa die de s'eventu a is {formattedHourMinute}", + "at the event's start" : "a su cumintzu de s'eventu", + "at the event's end" : "a sa fine de s'eventu", + "{time} before the event starts" : "{time} antis de su cumintzu de s'eventu", + "{time} before the event ends" : "{time} antis de sa fine de s'eventu", + "{time} after the event starts" : "{time} pustis de su cumintzu de s'eventu", + "{time} after the event ends" : "{time} pustis de sa fine de s'eventu", + "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", + "Yearly" : "Ogni annu", + "_Every %n day_::_Every %n days_" : ["Cada %n die","Cada %n dies"], + "_Every %n week_::_Every %n weeks_" : ["Cada %n chida","Cada %n chidas"], + "_Every %n month_::_Every %n months_" : ["Cada %n mese","Cada %n meses"], + "_Every %n year_::_Every %n years_" : ["Cada %n annu","Cada %n annos"], + "_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", + "Untitled task" : "Atividade chene tìtulu", + "Please ask your administrator to enable the Tasks App." : "Pedi a s'amministratzione de ativare sa Task App.", + "W" : "C", + "%n more" : "%n in prus", + "No events to display" : "Perunu eventu de mustrare", + "_+%n more_::_+%n more_" : ["+%n àteru","+%n àteros"], + "No events" : "Perunu eventu", + "Create a new event or change the visible time-range" : "Crea un'eventu nou o càmbia s'intervallu de tempus visìbile", + "It might have been deleted, or there was a typo in a link" : "Fortzis est istadu cantzelladu, o b'at àpidu un'errore de digitatzione in unu ligòngiu", + "It might have been deleted, or there was a typo in the link" : "Fortzis est istadu cantzelladu, o b'at àpidu un'errore de digitatzione in suligòngiu", + "Other" : "Àteru", + "When shared show" : "Cando si cumpartzit, mustra•ddu", + "When shared show full event" : "Cando si cumpartzit mustra totu s'eventu", + "When shared show only busy" : "Cando si cumpartzit, mustra isceti ocupadu", + "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" : "Cantzelladu" + "Canceled" : "Annulladu", + "Confirmation about the overall status of the event." : "Cunfirma subra s'istadu generale de s'eventu.", + "Show as" : "Mustra comente", + "Take this event into account when calculating free-busy information." : "Cunsìdera custu eventu cando si càrculant is informatziones lìberu-ocupadu.", + "Categories" : "Categorias", + "Categories help you to structure and organize your events." : "Is categorias t'agiudant a istruturare e organizare is eventos tuos.", + "Search or add categories" : "Chirca o agiunghe categorias", + "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.", + "Error while sharing file" : "Errore in sa cumpartzidura de s'archìviu", + "Chat room for event" : "Aposentu pro is tzarradas de s'eventu", + "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" }, "nplurals=2; plural=(n != 1);"); diff --git a/l10n/sc.json b/l10n/sc.json index 3e1d6350b7..fa684d3915 100644 --- a/l10n/sc.json +++ b/l10n/sc.json @@ -1,109 +1,437 @@ { "translations": { + "User-Session unexpectedly expired" : "Sessione utente iscadida in manera no prevìdida", + "Provided email-address is not valid" : "S'indiritzu de posta eletrònica frunidu no est bàlidu.", + "%s has published the calendar »%s«" : "%s at publicadu su calendàriu »%s«", + "Unexpected error sending email. Please contact your administrator." : "Errore non prevìdidu imbiende su messàgiu de posta eletrònica. Cuntata s'amministratzione.", + "Successfully sent email to %1$s" : "Messàgiu de posta eletrònica imbiadu in manera curreta a %1$s", "Hello," : "Salude,", + "We wanted to inform you that %s has published the calendar »%s«." : "T'informamus chi %s at publicadu su calendàriu »%s«.", "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", "Calendar" : "Calendàriu", + "Appointments" : "Apuntamentos", + "Confirm" : "Cunfirma", + "Date:" : "Data:", + "Where:" : "Ue:", + "Anniversary" : "Anniversàriu", + "Appointment" : "Apuntamentu", + "Business" : "Afàrios", + "Education" : "Educatzione", + "Holiday" : "Vacàntzias", + "Meeting" : "Atòbiu", + "Miscellaneous" : "Vàriu", + "Non-working hours" : "Oras chena traballu", + "Not in office" : "No est in ofìtziu", + "Personal" : "Personale", + "Phone call" : "Mutida de telèfonu", + "Sick day" : "Die de maladia", + "Special occasion" : "Ocasione ispetziale", + "Travel" : "Viàgiu", + "Vacation" : "Ausèntzia", "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", - "+ New event" : "+ Eventu nou", "Today" : "Oe", "Day" : "Die", "Week" : "Chida", "Month" : "Mese", + "Year" : "Annu", "List" : "Lista", - "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", - "Download" : "Iscàrriga", - "Unshare from me" : "Annulla sa cumpartzidura cun me", + "Preview" : "Anteprima", + "Copy link" : "Còpia ligòngiu", + "Edit" : "Modìfica", "Delete" : "Cantzella", - "An error occurred, unable to change visibility of the calendar." : "Ddoe at àpidu un'errore, no at fatu a cambiare sa visibilidade de su calendàriu.", - "An error occurred, unable to delete the calendar." : "Ddoe at àpidu un'errore, no at fatu a cantzellare su calendàriu.", + "Untitled calendar" : "Calendàriu chene tìtulu", + "Shared with you by" : "Cumpartzidu cun tegus dae", + "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.", + "_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"], + "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://)", + "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", "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." : "Ddoe at àpidu un'errore, no at fatu a torrare a numenare su calendàriu.", - "An error occurred, unable to change the calendar's color." : "Ddoe at àpidu un'errore, no at fatu a cambiare su colore de su calendàriu.", - "_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 {tempus} 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 {tempus} segundos"], + "Trash bin" : " Àliga", + "Name" : "Nùmene", + "Deleted" : "Cantzelladu", + "Restore" : "Riprìstina", + "Delete permanently" : "Cantzella in manera permanente", + "Empty trash bin" : "Bòida s'àliga", + "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", + "Could not update calendar order." : "No at fatu a agiornare s'òrdne 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." : "Ddoe at àpidu un'errore, no at fatu a publicare su calendàriu.", - "An error occurred, unable to send email." : "Ddoe at àpidu un'errore, no at fatu a imbiare su messàgiu de posta.", + "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", + "can edit" : "podet modificare", + "Unshare with {displayName}" : "Annulla sa cumpartzidura cun {displayName}", + "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.", "Share with users or groups" : "Cumpartzi cun utentes o grupos", "No users or groups" : "Peruna utèntzia o grupu", - "can edit" : "podet modificare", - "Unshare with {displayName}" : "Annulla sa cumpartzidura cun {ammustraNùmene}", - "An error occurred, unable to change the unshare the calendar." : "Ddoe 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." : "Ddoe 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 …", - "Creating subscription …" : "Creende sutascritzione …", - "An error occurred, unable to create the calendar." : "Ddoe 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://)", - "Could not update calendar order." : "No at fatu a agiornare s'òrdne de su calendàriu.", + "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", "Calendar to import into" : "Calendàriu de importare in", - "Cancel" : "Cantzella", + "Cancel" : "Annulla", "_Import calendar_::_Import calendars_" : ["Importa calendàriu","Importa calendàrios"], - "{filename} is an unsupported file-type" : "{nùmene archìviu} est una genia de archìviu non suportada", + "{filename} could not be parsed" : "No at fatu a analizare {filename} ", "No valid files found, aborting import" : "Perunu archìviu vàlidu agatadu, annullende s'importatzione", + "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 ({rilevadu})", + "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", "Navigation" : "Navigatzione", "Previous period" : "Tempus in antis", "Next period" : "Tempus imbeniente", "Views" : "Visualizatziones", + "Day view" : "Bista de sa die", + "Week view" : "Bista de sa chida", + "Month view" : "Bista de su mese", + "List view" : "Bista de s'elencu", "Actions" : "Atziones", "Create event" : "Crea eventu", + "Show shortcuts" : "Mustra curtziadòrgios", + "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", + "Show weekends" : "Mustra fines de chida", + "Show week numbers" : "Mustra nùmeru de chidas", + "Time increments" : "Crèschidas de tempus", + "Default reminder" : "Promemòria predefinidu", + "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.", + "Location" : "Positzione", + "Description" : "Descritzione", + "Visibility" : "Visibilidade", + "Duration" : "Durata", + "to" : "a", + "Add" : "Agiunghe", + "Monday" : "Lunis", + "Tuesday" : "Martis", + "Wednesday" : "Mércuris", + "Thursday" : "Giòbia", + "Friday" : "Chenàbura", + "Saturday" : "Sàbudu", + "Sunday" : "Domìnigu", + "Update" : "Agiorna", + "Your email address" : "Indiritzu tuo de posta eletrònica", + "before at" : "antis de is", "Notification" : "Notìfica", "Email" : "Posta eletrònica", + "Audio notification" : "Notìfica àudio", + "Other notification" : "Àtera notìfica", + "Relative to event" : "Relativu a s'eventu", + "On date" : "In data", + "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"], - "No reminders yet" : "Ancora perunu apuntu", + "Delete file" : "Cantzella archìviu", + "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", + "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)", + "Free" : "Lìberu", + "Busy (tentative)" : "Ocupadu (intentu)", "Busy" : "Faghende cosa", + "Out of office" : "Foras de serbìtziu", "Unknown" : "Non connotu", - "{name} accepted your invitation." : "{nùmene} at atzetadu s'invitu tuo.", - "{name} declined your invitation." : "{nùmene} at refudadu s'invitu tuo.", + "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", + "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].", "Remove color" : "Boga colore", "Event title" : "Tìtulu de s'eventu", "All day" : "Totu sa die", - "from {startDate}" : "dae {dieCumintzu}", - "to {endDate}" : "a {dieFine}", + "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}", + "Repeat" : "Repiti", + "End repeat" : "Acabba ripetitzione", + "Select to end repeat" : "Seletziona pro acabbare sa ripetitzione", "never" : "mai", - "Save" : "Sarva", + "on date" : "in data", + "after" : "a pustis", + "_time_::_times_" : ["borta","bortas"], + "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", + "_month_::_months_" : ["mese","meses"], + "_year_::_years_" : ["Annos","annos"], + "weekday" : "die de fatu", + "weekend day" : "die de fine de chida", + "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", + "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", + "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}", + "from {formattedDate} at {formattedTime}" : "dae {formattedDate} a is {formattedTime}", + "to {formattedDate} at {formattedTime}" : "a {formattedDate} a is {formattedTime}", + "on {formattedDate} at {formattedTime}" : "su {formattedDate} a is {formattedTime}", + "{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", + "Type to search time zone" : "Iscrire pro chircare fusu oràriu", + "Global" : "Globale", + "Subscribed" : "Sutaiscritu", + "Subscribe" : "Sutaiscrie", + "Time:" : "Tempus:", + "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.", + "Create a new event" : "Crea un'eventu nou", + "[Today]" : "[Oe]", + "[Tomorrow]" : "[Cras]", + "[Yesterday]" : "[Eris]", + "[Last] dddd" : "[Ùrtimu] dddd", + "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", + "Invite" : "Invita", + "Attendees" : "Partetzipantes", + "Resources" : "Risorsas", "Close" : "Serra", - "Description" : "Descritzione", + "Show more details" : "Mustra àteros detàllios", + "Subscribe to {name}" : "Sutaiscrie a {name}", + "Midnight on the day the event starts" : "Mesunotte de sa die in ue s'eventu cumintzat", + "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n die in antis de s'eventu a is {formattedHourMinute}","%n dies in antis de s'eventu a is {formattedHourMinute}"], + "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n die in antis de s'eventu a is {formattedHourMinute}","%n chidas in antis de s'eventu a is {formattedHourMinute}"], + "on the day of the event at {formattedHourMinute}" : "sa die de s'eventu a is {formattedHourMinute}", + "at the event's start" : "a su cumintzu de s'eventu", + "at the event's end" : "a sa fine de s'eventu", + "{time} before the event starts" : "{time} antis de su cumintzu de s'eventu", + "{time} before the event ends" : "{time} antis de sa fine de s'eventu", + "{time} after the event starts" : "{time} pustis de su cumintzu de s'eventu", + "{time} after the event ends" : "{time} pustis de sa fine de s'eventu", + "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", + "Yearly" : "Ogni annu", + "_Every %n day_::_Every %n days_" : ["Cada %n die","Cada %n dies"], + "_Every %n week_::_Every %n weeks_" : ["Cada %n chida","Cada %n chidas"], + "_Every %n month_::_Every %n months_" : ["Cada %n mese","Cada %n meses"], + "_Every %n year_::_Every %n years_" : ["Cada %n annu","Cada %n annos"], + "_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", + "Untitled task" : "Atividade chene tìtulu", + "Please ask your administrator to enable the Tasks App." : "Pedi a s'amministratzione de ativare sa Task App.", + "W" : "C", + "%n more" : "%n in prus", + "No events to display" : "Perunu eventu de mustrare", + "_+%n more_::_+%n more_" : ["+%n àteru","+%n àteros"], + "No events" : "Perunu eventu", + "Create a new event or change the visible time-range" : "Crea un'eventu nou o càmbia s'intervallu de tempus visìbile", + "It might have been deleted, or there was a typo in a link" : "Fortzis est istadu cantzelladu, o b'at àpidu un'errore de digitatzione in unu ligòngiu", + "It might have been deleted, or there was a typo in the link" : "Fortzis est istadu cantzelladu, o b'at àpidu un'errore de digitatzione in suligòngiu", + "Other" : "Àteru", + "When shared show" : "Cando si cumpartzit, mustra•ddu", + "When shared show full event" : "Cando si cumpartzit mustra totu s'eventu", + "When shared show only busy" : "Cando si cumpartzit, mustra isceti ocupadu", + "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" : "Cantzelladu" + "Canceled" : "Annulladu", + "Confirmation about the overall status of the event." : "Cunfirma subra s'istadu generale de s'eventu.", + "Show as" : "Mustra comente", + "Take this event into account when calculating free-busy information." : "Cunsìdera custu eventu cando si càrculant is informatziones lìberu-ocupadu.", + "Categories" : "Categorias", + "Categories help you to structure and organize your events." : "Is categorias t'agiudant a istruturare e organizare is eventos tuos.", + "Search or add categories" : "Chirca o agiunghe categorias", + "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.", + "Error while sharing file" : "Errore in sa cumpartzidura de s'archìviu", + "Chat room for event" : "Aposentu pro is tzarradas de s'eventu", + "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" },"pluralForm" :"nplurals=2; plural=(n != 1);" } \ No newline at end of file diff --git a/l10n/si.js b/l10n/si.js index c51eb7c0d7..4d8a5e807d 100644 --- a/l10n/si.js +++ b/l10n/si.js @@ -3,10 +3,14 @@ OC.L10N.register( { "User-Session unexpectedly expired" : "පරිශීලක-සැසිය අනපේක්ෂිත ලෙස කල් ඉකුත් විය", "Provided email-address is not valid" : "සපයා ඇති විද්‍යුත් තැපැල් ලිපිනය වලංගු නොවේ", - "Successfully sent email to " : "වෙත සාර්ථකව විද්‍යුත් තැපෑල යවන ලදි", "Hello," : "ආයුබෝවන්,", "Cheers!" : "ජයවේවා!", "Calendar" : "දින දර්ශනය", + "Confirm" : "තහවුරු කරන්න", + "Date:" : "දිනය:", + "Where:" : "කොහේද:", + "Anniversary" : "සංවත්සරය", + "Personal" : "පුද්ගලික", "A Calendar app for Nextcloud" : "නෙක්ස්ට් ක්ලවුඩ් සඳහා දින දර්ශන යෙදුමකි", "Previous day" : "පසුගිය දිනය", "Previous week" : "පසුගිය සතිය", @@ -18,31 +22,44 @@ 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" : "පුද්. සබැඳිය පිටපත් කරන්න", - "Download" : "බාගන්න", + "Name" : "නම", + "Restore" : "ප්‍රතිෂ්ථාපනය", + "Save" : "සුරකින්න", "Filename" : "ගොනු නාමය", "Cancel" : "අවලංගු කරන්න", "Actions" : "ක්‍රියාමාර්ග", + "Location" : "ස්ථානය", + "Description" : "විස්තරය", + "Duration" : "කාල සීමාව", + "Add" : "එකතු කරන්න", + "Monday" : "සඳුදා", + "Tuesday" : "අඟහරුවාදා", + "Wednesday" : "බදාදා", + "Thursday" : "බ්‍රහස්පතින්දා", + "Friday" : "සිකුරාදා", + "Saturday" : "සෙනසුරාදා", + "Sunday" : "ඉරිදා", + "Update" : "යාවත්කාල", "Email" : "විද්‍යුත් තැපෑල", + "Available" : "ඇත", "Busy" : "කාර්යබහුලයි", "Unknown" : "නොදන්නා", - "Monday" : "සඳුදා", - "Summary" : "සාරාංශය", + "Accept" : "පිළිගන්න", + "Decline" : "ප්‍රතික්ෂේප", "More" : "තව", - "Save" : "සුරකින්න", - "Update" : "යාවත්කාල", - "Personal" : "පුද්ගලික", + "Time:" : "වේලාව:", "Details" : "විස්තර", "Close" : "වසන්න", - "Anniversary" : "සංවත්සරය", - "today" : "අද", - "Location" : "ස්ථානය", - "Description" : "විස්තරය" + "Daily" : "දිනපතා", + "Weekly" : "සතිපතා", + "Other" : "වෙනත්", + "Mail" : "තැපෑල", + "Birthday" : "උපන් දිනය" }, "nplurals=2; plural=(n != 1);"); diff --git a/l10n/si.json b/l10n/si.json index f8a6fdcde8..e8d7e0fbf9 100644 --- a/l10n/si.json +++ b/l10n/si.json @@ -1,10 +1,14 @@ { "translations": { "User-Session unexpectedly expired" : "පරිශීලක-සැසිය අනපේක්ෂිත ලෙස කල් ඉකුත් විය", "Provided email-address is not valid" : "සපයා ඇති විද්‍යුත් තැපැල් ලිපිනය වලංගු නොවේ", - "Successfully sent email to " : "වෙත සාර්ථකව විද්‍යුත් තැපෑල යවන ලදි", "Hello," : "ආයුබෝවන්,", "Cheers!" : "ජයවේවා!", "Calendar" : "දින දර්ශනය", + "Confirm" : "තහවුරු කරන්න", + "Date:" : "දිනය:", + "Where:" : "කොහේද:", + "Anniversary" : "සංවත්සරය", + "Personal" : "පුද්ගලික", "A Calendar app for Nextcloud" : "නෙක්ස්ට් ක්ලවුඩ් සඳහා දින දර්ශන යෙදුමකි", "Previous day" : "පසුගිය දිනය", "Previous week" : "පසුගිය සතිය", @@ -16,31 +20,44 @@ "Day" : "දිනය", "Week" : "සතිය", "Month" : "මාසය", + "Year" : "වර්ෂය", "List" : "ලැයිස්තුව", + "Preview" : "පෙරදසුන", + "Copy link" : "සබැඳිය පිටපත් කරන්න", + "Edit" : "සංස්කරණය", "Untitled calendar" : "නිර්ණාමික දින දර්ශනය", - "Edit name" : "නම සංස්කරණය", - "Saving name …" : "සුරැකීමේ වර්ණය …", - "Edit color" : "වර්ණය සංස්කරණය", - "Saving color …" : "සුරැකීමේ වර්ණය …", - "Copy private link" : "පුද්. සබැඳිය පිටපත් කරන්න", - "Download" : "බාගන්න", + "Name" : "නම", + "Restore" : "ප්‍රතිෂ්ථාපනය", + "Save" : "සුරකින්න", "Filename" : "ගොනු නාමය", "Cancel" : "අවලංගු කරන්න", "Actions" : "ක්‍රියාමාර්ග", + "Location" : "ස්ථානය", + "Description" : "විස්තරය", + "Duration" : "කාල සීමාව", + "Add" : "එකතු කරන්න", + "Monday" : "සඳුදා", + "Tuesday" : "අඟහරුවාදා", + "Wednesday" : "බදාදා", + "Thursday" : "බ්‍රහස්පතින්දා", + "Friday" : "සිකුරාදා", + "Saturday" : "සෙනසුරාදා", + "Sunday" : "ඉරිදා", + "Update" : "යාවත්කාල", "Email" : "විද්‍යුත් තැපෑල", + "Available" : "ඇත", "Busy" : "කාර්යබහුලයි", "Unknown" : "නොදන්නා", - "Monday" : "සඳුදා", - "Summary" : "සාරාංශය", + "Accept" : "පිළිගන්න", + "Decline" : "ප්‍රතික්ෂේප", "More" : "තව", - "Save" : "සුරකින්න", - "Update" : "යාවත්කාල", - "Personal" : "පුද්ගලික", + "Time:" : "වේලාව:", "Details" : "විස්තර", "Close" : "වසන්න", - "Anniversary" : "සංවත්සරය", - "today" : "අද", - "Location" : "ස්ථානය", - "Description" : "විස්තරය" + "Daily" : "දිනපතා", + "Weekly" : "සතිපතා", + "Other" : "වෙනත්", + "Mail" : "තැපෑල", + "Birthday" : "උපන් දිනය" },"pluralForm" :"nplurals=2; plural=(n != 1);" } \ No newline at end of file diff --git a/l10n/si_LK.js b/l10n/si_LK.js deleted file mode 100644 index 4746db575b..0000000000 --- a/l10n/si_LK.js +++ /dev/null @@ -1,34 +0,0 @@ -OC.L10N.register( - "calendar", - { - "Calendar" : "දිනදසුන", - "Today" : "අද", - "Week" : "සතිය", - "Month" : "මාසය", - "Download" : "බාන්න", - "Delete" : "මකා දමන්න", - "Share link" : "Share link", - "can edit" : "සංස්කරණය කළ හැක", - "New calendar" : "නව දින දර්ශනය", - "Cancel" : "එපා", - "Email" : "විද්‍යුත් තැපෑල", - "Unknown" : "නොදනී", - "never" : "කවදාවත්", - "Repeat" : "පුනරාවර්ථන", - "Monday" : "සඳුදා", - "More" : "වැඩි", - "Save" : "සුරකින්න", - "Update" : "යාවත්කාල කිරීම", - "Personal" : "පෞද්ගලික", - "Details" : "විස්තර", - "Attendees" : "කැටුව යන්නන්", - "Close" : "වසන්න", - "Daily" : "දිනපතා", - "Weekly" : "සතිපතා", - "today" : "අද", - "Location" : "ස්ථානය", - "Description" : "විස්තරය", - "Mail" : "තැපෑල", - "Play" : "ධාවනය" -}, -"nplurals=2; plural=(n != 1);"); diff --git a/l10n/si_LK.json b/l10n/si_LK.json deleted file mode 100644 index e9c7d94e51..0000000000 --- a/l10n/si_LK.json +++ /dev/null @@ -1,32 +0,0 @@ -{ "translations": { - "Calendar" : "දිනදසුන", - "Today" : "අද", - "Week" : "සතිය", - "Month" : "මාසය", - "Download" : "බාන්න", - "Delete" : "මකා දමන්න", - "Share link" : "Share link", - "can edit" : "සංස්කරණය කළ හැක", - "New calendar" : "නව දින දර්ශනය", - "Cancel" : "එපා", - "Email" : "විද්‍යුත් තැපෑල", - "Unknown" : "නොදනී", - "never" : "කවදාවත්", - "Repeat" : "පුනරාවර්ථන", - "Monday" : "සඳුදා", - "More" : "වැඩි", - "Save" : "සුරකින්න", - "Update" : "යාවත්කාල කිරීම", - "Personal" : "පෞද්ගලික", - "Details" : "විස්තර", - "Attendees" : "කැටුව යන්නන්", - "Close" : "වසන්න", - "Daily" : "දිනපතා", - "Weekly" : "සතිපතා", - "today" : "අද", - "Location" : "ස්ථානය", - "Description" : "විස්තරය", - "Mail" : "තැපෑල", - "Play" : "ධාවනය" -},"pluralForm" :"nplurals=2; plural=(n != 1);" -} \ No newline at end of file diff --git a/l10n/sk.js b/l10n/sk.js index c7f02171e5..a5fa317e19 100644 --- a/l10n/sk.js +++ b/l10n/sk.js @@ -5,54 +5,114 @@ OC.L10N.register( "Provided email-address is not valid" : "Zadaná adresa e-mailu nie je platná", "%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 " : "E-mail bol úspešne odoslaný na", + "Successfully sent email to %1$s" : "E-mail bol úspešne odoslaný pre %1$s", "Hello," : "Ahoj,", "We wanted to inform you that %s has published the calendar »%s«." : "Chceme vás upozorniť, že používateľ %s zverejnil kalendár %s", "Open »%s«" : "Otvoriť »%s«", "Cheers!" : "Pekný deň!", "Upcoming events" : "Nadchádzajúce udalosti", + "More events" : "Viac udalostí", + "No more events today" : "Dnes žiadne ďalšie udalosti", + "No upcoming events" : "Žiadne nadchádzajúce udalosti", "Calendar" : "Kalendár", + "Appointments" : "Stretnutia", + "Schedule appointment \"%s\"" : "Naplánovať stretnutie \"%s\"", + "Schedule an appointment" : "Naplánovať stretnutie", + "Prepare for %s" : "Pripraviť na %s", + "Follow up for %s" : "Sledovať pre %s", + "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ť", + "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 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:", + "Where:" : "Kde:", + "Anniversary" : "Výročie", + "Appointment" : "Stretnutie", + "Business" : "Služobné", + "Education" : "Výuka", + "Holiday" : "Sviatok", + "Meeting" : "Porada", + "Miscellaneous" : "Rôzne", + "Non-working hours" : "Mimopracovné hodiny", + "Not in office" : "Mimo kancelárie", + "Personal" : "Osobné", + "Phone call" : "Telefonát", + "Sick day" : "Práceneschopnosť", + "Special occasion" : "Špeciálna príležitosť", + "Travel" : "Cestovanie", + "Vacation" : "Dovolenka", "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).", "Previous day" : "Predchádzajúci deň", "Previous week" : "Predchádzajúci týždeň", "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ť", + "Event" : "Udalosť", "Today" : "Dnes", "Day" : "Deň", "Week" : "Týždeň", "Month" : "Mesiac", + "Year" : "Rok", "List" : "Zoznam", - "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", - "Download" : "Sťahovanie", - "Unshare from me" : "Zrušiť zdieľanie so mnou", + "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", + "Shared with you by" : "Sprístupnené vám používateľom", + "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.", "_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"], + "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://)", + "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", + "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.", + "Trash bin" : "Kôš", + "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 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 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ôš?", + "_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ť.", + "Copy internal link" : "Kopírovať interný odkaz", "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", @@ -64,32 +124,24 @@ OC.L10N.register( "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", - "New calendar" : "Nový kalendár", - "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://)", - "Could not update calendar order." : "Poradie kalendára sa nepodarilo aktualizovať.", + "Share with users or groups" : "Sprístupniť používateľom alebo skupinám", + "No users or groups" : "Žiadni používatelia alebo skupiny", + "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"], - "{filename} is an unsupported file-type" : "{filename} nie je podporovaný typ súboru", + "Invalid location selected" : "Bolo vybrané neplatné umiestnenie", "{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í."], + "_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í"], "Automatic" : "Automaticky", "Automatic ({detected})" : "Automaticky ({detected})", "New setting was not saved successfully." : "Nové nastavenie nebolo možné uložiť.", @@ -102,21 +154,79 @@ OC.L10N.register( "Day view" : "Denné zobrazenie", "Week view" : "Týždenné zobrazenie", "Month view" : "Mesačné zobrazenie", + "List view" : "Zobraziť ako zoznam", "Actions" : "Akcie", "Create event" : "Vytvoriť udalosť", "Show shortcuts" : "Zobraziť skratky", + "Editor" : "Editor", + "Close editor" : "Zavrieť editor", + "Save edited event" : "Uložiť upravenú udalosť", + "Delete edited event" : "Zmazať upravenú udalosť", + "Duplicate event" : "Duplicitná udalosť", "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", "Show weekends" : "Zobraziť víkendy", "Show week numbers" : "Zobraziť čísla týždňov", + "Time increments" : "Časové prírastky", + "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", - "Settings & import" : "Nastavenia a import", + "Calendar settings" : "Nastavenia kalendára", + "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é", + "_{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"], + "_{duration} day_::_{duration} days_" : ["{duration} deň","{duration} dni","{duration} dní","{duration} dní"], + "_{duration} week_::_{duration} weeks_" : ["{duration} týždeň","{duration} týždne","{duration} týždňov","{duration} týždňov"], + "_{duration} month_::_{duration} months_" : ["{duration} mesiac","{duration} mesiace","{duration} mesiacov","{duration} mesiacov"], + "_{duration} year_::_{duration} years_" : ["{duration} rok","{duration} roky","{duration} rokov","{duration} rokov"], + "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 name" : "Názov stretnutia", + "Location" : "Umiestnenie", + "Description" : "Popis", + "Visibility" : "Viditeľnosť", + "Duration" : "Trvanie", + "Increments" : "Prírastky", + "Additional calendars to check for conflicts" : "Ďalšie kalendáre pre kontrolu konfliktov", + "Pick time ranges where appointments are allowed" : "Vyberte časové rozsahy, v ktorých sú povolené stretnutia", + "to" : "do", + "Delete slot" : "Odstrániť slot", + "No times set" : "Nie sú nastavené žiadne časy", + "Add" : "Pridať", + "Monday" : "Pondelok", + "Tuesday" : "Utorok", + "Wednesday" : "Streda", + "Thursday" : "Štvrtok", + "Friday" : "Piatok", + "Saturday" : "Sobota", + "Sunday" : "Nedeľa", + "Add time before and after the event" : "Pridajte čas pred a po udalosti", + "Before the event" : "Pred udalosťou", + "After the event" : "Po udalosti", + "Planning restrictions" : "Obmedzenia plánovania", + "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", + "Update" : "Aktualizovať", + "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", + "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", "before at" : "pred o", "Notification" : "Hlásenie", "Email" : "E-mail", @@ -130,54 +240,77 @@ OC.L10N.register( "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"], - "No reminders yet" : "Žiadne pripomienky", + "Add from Files" : "Pridať zo Súborov", + "Upload from device" : "Nahrať zo zariadenia", + "Delete file" : "Zmazať súbor", + "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", + "_{count} attachment_::_{count} attachments_" : ["{count} príloha","{count} prílohy","{count} príloh","{count} prílohy"], + "Invitation accepted" : "Pozvánka prijatá", + "Available" : "Dostupné", + "Suggested" : "Navrhované", + "Participation marked as tentative" : "Účasť označená ako predbežná", + "Accepted {organizerName}'s invitation" : "Prijaté pozvanie od {organizerName}", + "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á", + "Checking availability" : "Kontrolujem dostupnosť", + "Invitation sent" : "Pozvánka odoslaná", + "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í", + "{organizer} (organizer)" : "{organizer} (organizátor)", + "Free" : "Voľný", "Busy (tentative)" : "Zaneprázdnený (predbežne)", "Busy" : "Zaneprázdnený", "Out of office" : "Mimo kancelárie", "Unknown" : "Neznámy", - "{name} accepted your invitation." : "{name} prijal vaše pozvanie.", - "{name} accepted {organizerName}'s invitation." : "{name} prijal pozvanie od {organizerName}.", - "{name} declined your invitation." : "{name} zamietol vaše pozvanie.", - "{name} declined {organizerName}'s invitation." : "{name} zamietol pozvanie od {organizerName}.", - "{name} has delegated their invitation." : "{name} delegoval ich pozvanie.", - "{name} marked their participation as tentative." : "Používateľ {name} označil svoju účasť ako predbežnú.", - "{name} did not respond to your invitation yet." : "{name} zatiaľ neodpovedal na vaše pozvanie.", - "{name} did not respond to {organizerName}'s invitation yet." : "{name} zatiaľ neodpovedal na pozvanie od {organizerName}.", + "Accept" : "Prijať", + "Decline" : "Odmietnuť", + "Tentative" : "Neistý", + "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", + "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 e-mail" : "Poslať e-mail", + "Send email" : "Odoslať email", "Chairperson" : "Predseda", "Required participant" : "Požadovaná účasť", "Optional participant" : "Nepovinná účasť", "Non-participant" : "Bez účasti", "Remove attendee" : "Odstrániť účastníka", - "Search for e-mails, users, contacts, resources or rooms" : "Vyhľadať emaily, užívateľov, kontakty, zdroje alebo miestnosti ", + "Search for emails, users or contacts" : "Vyhľadať emaily, užívateľov alebo kontakty", "No match found" : "Nenašla sa žiadna zhoda", - "No attendees yet" : "Zatiaľ žiadni účastníci", "(organizer)" : "(organizátor)", + "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ň", - "Can not modify all-day setting for events that are part of a recurrence-set." : "Pri opakovaných udalostiach nie je možné meniť niektoré nastavenia.", + "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}", + "Repeat" : "Opakovať", "End repeat" : "Koniec opakovania", "Select to end repeat" : "Vyberte koniec opakovania", "never" : "nikdy", "on date" : "dňa", "after" : "po", "_time_::_times_" : ["krát","krát","krát","krát"], - "This event is the recurrence-exception of a recurrence-set. You can not add a recurrence-rule to it." : "Táto udalosť je výnimkou v opakovanej udalosti. Nie je možné k nej pridať opakovanie.", + "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é", @@ -185,25 +318,37 @@ OC.L10N.register( "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" : "Opakovať", "Repeat every" : "Opakovať každý", "By day of the month" : "Podľa dňa v mesiaci", "On the" : "V", "_month_::_months_" : ["mesiac","mesiace","mesiacov","mesiacov"], "_year_::_years_" : ["rok","roky","rokov","rokov"], - "Monday" : "Pondelok", "weekday" : "deň v týždni", "weekend day" : "deň cez víkend", - "Summary" : "Súhrn", + "No recurrence" : "Žiadne nové", "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", + "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é", + "Room type" : "Typ miestnosti", + "Any" : "Akékoľvek", + "Minimum seating capacity" : "Minimálna kapacita miest na sedenie", "More" : "Viac", - "Save" : "Uložiť", - "Update" : "Aktualizovať", "Update this occurrence" : "Aktualizovať tento výskyt", "Update this and all future" : "Aktualizovať tento a všetky budúce", "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 timezone:" : "Vyberte časovú zónu:", + "Please select a time zone:" : "Prosím vyberte časovú zónu:", "Pick a time" : "Vyberte čas", "Pick a date" : "Vyberte dátum", "from {formattedDate}" : "od {formattedDate}", @@ -215,38 +360,43 @@ 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", - "Type to search timezone" : "Písaním nájdete časovú zónu", - "Personal" : "Osobné", - "The automatic timezone detection determined your timezone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your timezone 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 timezone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your timezone 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 upcoming events" : "Žiadne nadchádzajúce udalosti", + "Type to search time zone" : "Písaním nájdete časovú zónu", + "Global" : "Globálne", + "Subscribed" : "Prihlásený na odber", + "Subscribe" : "Odoberať", + "Select 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ý", + "Appointment Details:" : "Podrobnosti o stretnutí", + "Time:" : "Čas:", + "Booked for:" : "Rezervované na:", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "Ďakujem. Vaša rezervácia od {startDate} do {endDate} bola potvrdená.", + "Book another appointment:" : "Rezervovať ďalšie stretnutie:", + "See all available slots" : "Zobraziť všetky dostupné sloty", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "Časový úsek pre vaše stretnutie od {startDate} do {endDate} už nie je k dispozícii.", + "Please book a different slot:" : "Prosím rezervujte si iný slot:", + "Book an appointment with {name}" : "Rezervovať stretnutie s názvom {name}", + "No public appointments found for {name}" : "Nenašli sa žiadne verejné stretnutia pre {name}", + "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.", "Create a new event" : "Vytvoriť novú udalosť", "[Today]" : "[Dnes]", "[Tomorrow]" : "[Zajtra]", "[Yesterday]" : "[Včera]", + "[Last] dddd" : "[Posledné] dddd", + "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", + "Invite" : "Pozvať", "Attendees" : "Účastníci", - "Reminders" : "Pripomienky", + "Resources" : "Zdroje", "Close" : "Zavrieť", "Show more details" : "Zobraziť ďalšie podrobnosti", "Subscribe to {name}" : "Prihlásiť sa na odber {name}", - "Download {name}" : "Prevziať", - "Anniversary" : "Výročie", - "Appointment" : "Stretnutie", - "Business" : "Služobné", - "Education" : "Výuka", - "Holiday" : "Sviatok", - "Meeting" : "Porada", - "Miscellaneous" : "Rôzne", - "Non-working hours" : "Mimopracovné hodiny", - "Not in office" : "Mimo kancelárie", - "Phone call" : "Telefonát", - "Sick day" : "Práceneschopnosť", - "Special occasion" : "Špeciálna príležitosť", - "Travel" : "Cestovanie", - "Vacation" : "Dovolenka", + "Export {name}" : "Exportovať {name}", "Midnight on the day the event starts" : "Najbližšia polnoc pred začiatkom udalosti", "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n deň pred udalosťou o {formattedHourMinute}","%n dni pred udalosťou o {formattedHourMinute}","%n dní pred udalosťou o {formattedHourMinute}","%n dní pred udalosťou o {formattedHourMinute}"], "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n týždeň pred udalosťou o {formattedHourMinute}","%n týždne pred udalosťou o {formattedHourMinute}","%n týždňov pred udalosťou o {formattedHourMinute}","%n týždňov pred udalosťou o {formattedHourMinute}"], @@ -279,66 +429,99 @@ OC.L10N.register( "Untitled event" : "Udalosť bez názvu", "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.", - "next year" : "budúci rok", - "today" : "dnes", + "W" : "T", + "%n more" : "%n ďalších", + "No events to display" : "Žiadne udalosti k zobrazeniu", "_+%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", + "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ť", + "Lecture hall" : "Školiaca miestnosť", + "Seminar room" : "Seminárna miestnosť", + "Other" : "Iné", "When shared show" : "Pri zdieľaní zobraziť", "When shared show full event" : "Pri zdieľaní zobraziť udalosť úplne", "When shared show only busy" : "Pri zdieľaní zobraziť len zaneprázdnený", "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.", - "Location" : "Umiestnenie", "Add a location" : "Zadajte umiestnenie", - "Description" : "Popis", "Add a description" : "Zadajte popis", "Status" : "Stav", "Confirmed" : "Potvrdené", - "Tentative" : "Neistý", "Canceled" : "Zrušené", "Confirmation about the overall status of the event." : "Potvrdenie o celkovom stave udalosti.", "Show as" : "Zobrazovať ako", "Take this event into account when calculating free-busy information." : "Zohľadniť túto udalosť pri určovaní zaneprázdnených/voľných hodín. ", - "Free" : "Voľný", "Categories" : "Kategórie", "Categories help you to structure and organize your events." : "Kategórie pomáhajú udržiavať prehľad v udalostiach a štruktúrovať ich.", "Search or add categories" : "Hľadať alebo pridať kategórie", "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.", + "Error while sharing file" : "Pri zdieľaní súboru došlo k chybe", "Chat room for event" : "Chatová miestnosť 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", - "Present" : "Prezentovať", + "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", - "Review" : "Preskúmať", "Office" : "Kancelária", "Contributor week" : "Týždeň prispievateľov", - "Party" : "Párty", - "Celebration" : "Oslava", "Mail" : "Pošta", "Soccer" : "futbal", "Football" : "Futbal", "Gaming" : "Hranie", - "Play" : "Hrať sa", - "Game" : "Hra", "Drive" : "Šoférovať", + "Driving" : "Šoférovanie", "Bicycle" : "Bicykel", "Cycle" : "Bicyklovať", + "Cycling" : "Byciklovanie", "Biking" : "Bicyklovanie", + "Bike" : "Bycikel", "Podcast" : "Podcast", "Basketball" : "Basketbal", "Fishing" : "Rybačka", @@ -349,10 +532,12 @@ OC.L10N.register( "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", @@ -363,7 +548,10 @@ OC.L10N.register( "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", @@ -382,20 +570,27 @@ OC.L10N.register( "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", - "Global" : "Globálne" + "Appointment not found" : "Stretnutie nebolo nájdené", + "User not found" : "Užívateľ nebol nájdený" }, "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 72f24c2194..92ab16c1f2 100644 --- a/l10n/sk.json +++ b/l10n/sk.json @@ -3,54 +3,114 @@ "Provided email-address is not valid" : "Zadaná adresa e-mailu nie je platná", "%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 " : "E-mail bol úspešne odoslaný na", + "Successfully sent email to %1$s" : "E-mail bol úspešne odoslaný pre %1$s", "Hello," : "Ahoj,", "We wanted to inform you that %s has published the calendar »%s«." : "Chceme vás upozorniť, že používateľ %s zverejnil kalendár %s", "Open »%s«" : "Otvoriť »%s«", "Cheers!" : "Pekný deň!", "Upcoming events" : "Nadchádzajúce udalosti", + "More events" : "Viac udalostí", + "No more events today" : "Dnes žiadne ďalšie udalosti", + "No upcoming events" : "Žiadne nadchádzajúce udalosti", "Calendar" : "Kalendár", + "Appointments" : "Stretnutia", + "Schedule appointment \"%s\"" : "Naplánovať stretnutie \"%s\"", + "Schedule an appointment" : "Naplánovať stretnutie", + "Prepare for %s" : "Pripraviť na %s", + "Follow up for %s" : "Sledovať pre %s", + "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ť", + "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 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:", + "Where:" : "Kde:", + "Anniversary" : "Výročie", + "Appointment" : "Stretnutie", + "Business" : "Služobné", + "Education" : "Výuka", + "Holiday" : "Sviatok", + "Meeting" : "Porada", + "Miscellaneous" : "Rôzne", + "Non-working hours" : "Mimopracovné hodiny", + "Not in office" : "Mimo kancelárie", + "Personal" : "Osobné", + "Phone call" : "Telefonát", + "Sick day" : "Práceneschopnosť", + "Special occasion" : "Špeciálna príležitosť", + "Travel" : "Cestovanie", + "Vacation" : "Dovolenka", "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).", "Previous day" : "Predchádzajúci deň", "Previous week" : "Predchádzajúci týždeň", "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ť", + "Event" : "Udalosť", "Today" : "Dnes", "Day" : "Deň", "Week" : "Týždeň", "Month" : "Mesiac", + "Year" : "Rok", "List" : "Zoznam", - "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", - "Download" : "Sťahovanie", - "Unshare from me" : "Zrušiť zdieľanie so mnou", + "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", + "Shared with you by" : "Sprístupnené vám používateľom", + "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.", "_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"], + "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://)", + "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", + "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.", + "Trash bin" : "Kôš", + "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 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 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ôš?", + "_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ť.", + "Copy internal link" : "Kopírovať interný odkaz", "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", @@ -62,32 +122,24 @@ "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", - "New calendar" : "Nový kalendár", - "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://)", - "Could not update calendar order." : "Poradie kalendára sa nepodarilo aktualizovať.", + "Share with users or groups" : "Sprístupniť používateľom alebo skupinám", + "No users or groups" : "Žiadni používatelia alebo skupiny", + "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"], - "{filename} is an unsupported file-type" : "{filename} nie je podporovaný typ súboru", + "Invalid location selected" : "Bolo vybrané neplatné umiestnenie", "{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í."], + "_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í"], "Automatic" : "Automaticky", "Automatic ({detected})" : "Automaticky ({detected})", "New setting was not saved successfully." : "Nové nastavenie nebolo možné uložiť.", @@ -100,21 +152,79 @@ "Day view" : "Denné zobrazenie", "Week view" : "Týždenné zobrazenie", "Month view" : "Mesačné zobrazenie", + "List view" : "Zobraziť ako zoznam", "Actions" : "Akcie", "Create event" : "Vytvoriť udalosť", "Show shortcuts" : "Zobraziť skratky", + "Editor" : "Editor", + "Close editor" : "Zavrieť editor", + "Save edited event" : "Uložiť upravenú udalosť", + "Delete edited event" : "Zmazať upravenú udalosť", + "Duplicate event" : "Duplicitná udalosť", "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", "Show weekends" : "Zobraziť víkendy", "Show week numbers" : "Zobraziť čísla týždňov", + "Time increments" : "Časové prírastky", + "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", - "Settings & import" : "Nastavenia a import", + "Calendar settings" : "Nastavenia kalendára", + "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é", + "_{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"], + "_{duration} day_::_{duration} days_" : ["{duration} deň","{duration} dni","{duration} dní","{duration} dní"], + "_{duration} week_::_{duration} weeks_" : ["{duration} týždeň","{duration} týždne","{duration} týždňov","{duration} týždňov"], + "_{duration} month_::_{duration} months_" : ["{duration} mesiac","{duration} mesiace","{duration} mesiacov","{duration} mesiacov"], + "_{duration} year_::_{duration} years_" : ["{duration} rok","{duration} roky","{duration} rokov","{duration} rokov"], + "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 name" : "Názov stretnutia", + "Location" : "Umiestnenie", + "Description" : "Popis", + "Visibility" : "Viditeľnosť", + "Duration" : "Trvanie", + "Increments" : "Prírastky", + "Additional calendars to check for conflicts" : "Ďalšie kalendáre pre kontrolu konfliktov", + "Pick time ranges where appointments are allowed" : "Vyberte časové rozsahy, v ktorých sú povolené stretnutia", + "to" : "do", + "Delete slot" : "Odstrániť slot", + "No times set" : "Nie sú nastavené žiadne časy", + "Add" : "Pridať", + "Monday" : "Pondelok", + "Tuesday" : "Utorok", + "Wednesday" : "Streda", + "Thursday" : "Štvrtok", + "Friday" : "Piatok", + "Saturday" : "Sobota", + "Sunday" : "Nedeľa", + "Add time before and after the event" : "Pridajte čas pred a po udalosti", + "Before the event" : "Pred udalosťou", + "After the event" : "Po udalosti", + "Planning restrictions" : "Obmedzenia plánovania", + "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", + "Update" : "Aktualizovať", + "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", + "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", "before at" : "pred o", "Notification" : "Hlásenie", "Email" : "E-mail", @@ -128,54 +238,77 @@ "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"], - "No reminders yet" : "Žiadne pripomienky", + "Add from Files" : "Pridať zo Súborov", + "Upload from device" : "Nahrať zo zariadenia", + "Delete file" : "Zmazať súbor", + "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", + "_{count} attachment_::_{count} attachments_" : ["{count} príloha","{count} prílohy","{count} príloh","{count} prílohy"], + "Invitation accepted" : "Pozvánka prijatá", + "Available" : "Dostupné", + "Suggested" : "Navrhované", + "Participation marked as tentative" : "Účasť označená ako predbežná", + "Accepted {organizerName}'s invitation" : "Prijaté pozvanie od {organizerName}", + "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á", + "Checking availability" : "Kontrolujem dostupnosť", + "Invitation sent" : "Pozvánka odoslaná", + "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í", + "{organizer} (organizer)" : "{organizer} (organizátor)", + "Free" : "Voľný", "Busy (tentative)" : "Zaneprázdnený (predbežne)", "Busy" : "Zaneprázdnený", "Out of office" : "Mimo kancelárie", "Unknown" : "Neznámy", - "{name} accepted your invitation." : "{name} prijal vaše pozvanie.", - "{name} accepted {organizerName}'s invitation." : "{name} prijal pozvanie od {organizerName}.", - "{name} declined your invitation." : "{name} zamietol vaše pozvanie.", - "{name} declined {organizerName}'s invitation." : "{name} zamietol pozvanie od {organizerName}.", - "{name} has delegated their invitation." : "{name} delegoval ich pozvanie.", - "{name} marked their participation as tentative." : "Používateľ {name} označil svoju účasť ako predbežnú.", - "{name} did not respond to your invitation yet." : "{name} zatiaľ neodpovedal na vaše pozvanie.", - "{name} did not respond to {organizerName}'s invitation yet." : "{name} zatiaľ neodpovedal na pozvanie od {organizerName}.", + "Accept" : "Prijať", + "Decline" : "Odmietnuť", + "Tentative" : "Neistý", + "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", + "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 e-mail" : "Poslať e-mail", + "Send email" : "Odoslať email", "Chairperson" : "Predseda", "Required participant" : "Požadovaná účasť", "Optional participant" : "Nepovinná účasť", "Non-participant" : "Bez účasti", "Remove attendee" : "Odstrániť účastníka", - "Search for e-mails, users, contacts, resources or rooms" : "Vyhľadať emaily, užívateľov, kontakty, zdroje alebo miestnosti ", + "Search for emails, users or contacts" : "Vyhľadať emaily, užívateľov alebo kontakty", "No match found" : "Nenašla sa žiadna zhoda", - "No attendees yet" : "Zatiaľ žiadni účastníci", "(organizer)" : "(organizátor)", + "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ň", - "Can not modify all-day setting for events that are part of a recurrence-set." : "Pri opakovaných udalostiach nie je možné meniť niektoré nastavenia.", + "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}", + "Repeat" : "Opakovať", "End repeat" : "Koniec opakovania", "Select to end repeat" : "Vyberte koniec opakovania", "never" : "nikdy", "on date" : "dňa", "after" : "po", "_time_::_times_" : ["krát","krát","krát","krát"], - "This event is the recurrence-exception of a recurrence-set. You can not add a recurrence-rule to it." : "Táto udalosť je výnimkou v opakovanej udalosti. Nie je možné k nej pridať opakovanie.", + "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é", @@ -183,25 +316,37 @@ "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" : "Opakovať", "Repeat every" : "Opakovať každý", "By day of the month" : "Podľa dňa v mesiaci", "On the" : "V", "_month_::_months_" : ["mesiac","mesiace","mesiacov","mesiacov"], "_year_::_years_" : ["rok","roky","rokov","rokov"], - "Monday" : "Pondelok", "weekday" : "deň v týždni", "weekend day" : "deň cez víkend", - "Summary" : "Súhrn", + "No recurrence" : "Žiadne nové", "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", + "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é", + "Room type" : "Typ miestnosti", + "Any" : "Akékoľvek", + "Minimum seating capacity" : "Minimálna kapacita miest na sedenie", "More" : "Viac", - "Save" : "Uložiť", - "Update" : "Aktualizovať", "Update this occurrence" : "Aktualizovať tento výskyt", "Update this and all future" : "Aktualizovať tento a všetky budúce", "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 timezone:" : "Vyberte časovú zónu:", + "Please select a time zone:" : "Prosím vyberte časovú zónu:", "Pick a time" : "Vyberte čas", "Pick a date" : "Vyberte dátum", "from {formattedDate}" : "od {formattedDate}", @@ -213,38 +358,43 @@ "{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", - "Type to search timezone" : "Písaním nájdete časovú zónu", - "Personal" : "Osobné", - "The automatic timezone detection determined your timezone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your timezone 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 timezone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your timezone 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 upcoming events" : "Žiadne nadchádzajúce udalosti", + "Type to search time zone" : "Písaním nájdete časovú zónu", + "Global" : "Globálne", + "Subscribed" : "Prihlásený na odber", + "Subscribe" : "Odoberať", + "Select 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ý", + "Appointment Details:" : "Podrobnosti o stretnutí", + "Time:" : "Čas:", + "Booked for:" : "Rezervované na:", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "Ďakujem. Vaša rezervácia od {startDate} do {endDate} bola potvrdená.", + "Book another appointment:" : "Rezervovať ďalšie stretnutie:", + "See all available slots" : "Zobraziť všetky dostupné sloty", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "Časový úsek pre vaše stretnutie od {startDate} do {endDate} už nie je k dispozícii.", + "Please book a different slot:" : "Prosím rezervujte si iný slot:", + "Book an appointment with {name}" : "Rezervovať stretnutie s názvom {name}", + "No public appointments found for {name}" : "Nenašli sa žiadne verejné stretnutia pre {name}", + "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.", "Create a new event" : "Vytvoriť novú udalosť", "[Today]" : "[Dnes]", "[Tomorrow]" : "[Zajtra]", "[Yesterday]" : "[Včera]", + "[Last] dddd" : "[Posledné] dddd", + "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", + "Invite" : "Pozvať", "Attendees" : "Účastníci", - "Reminders" : "Pripomienky", + "Resources" : "Zdroje", "Close" : "Zavrieť", "Show more details" : "Zobraziť ďalšie podrobnosti", "Subscribe to {name}" : "Prihlásiť sa na odber {name}", - "Download {name}" : "Prevziať", - "Anniversary" : "Výročie", - "Appointment" : "Stretnutie", - "Business" : "Služobné", - "Education" : "Výuka", - "Holiday" : "Sviatok", - "Meeting" : "Porada", - "Miscellaneous" : "Rôzne", - "Non-working hours" : "Mimopracovné hodiny", - "Not in office" : "Mimo kancelárie", - "Phone call" : "Telefonát", - "Sick day" : "Práceneschopnosť", - "Special occasion" : "Špeciálna príležitosť", - "Travel" : "Cestovanie", - "Vacation" : "Dovolenka", + "Export {name}" : "Exportovať {name}", "Midnight on the day the event starts" : "Najbližšia polnoc pred začiatkom udalosti", "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n deň pred udalosťou o {formattedHourMinute}","%n dni pred udalosťou o {formattedHourMinute}","%n dní pred udalosťou o {formattedHourMinute}","%n dní pred udalosťou o {formattedHourMinute}"], "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n týždeň pred udalosťou o {formattedHourMinute}","%n týždne pred udalosťou o {formattedHourMinute}","%n týždňov pred udalosťou o {formattedHourMinute}","%n týždňov pred udalosťou o {formattedHourMinute}"], @@ -277,66 +427,99 @@ "Untitled event" : "Udalosť bez názvu", "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.", - "next year" : "budúci rok", - "today" : "dnes", + "W" : "T", + "%n more" : "%n ďalších", + "No events to display" : "Žiadne udalosti k zobrazeniu", "_+%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", + "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ť", + "Lecture hall" : "Školiaca miestnosť", + "Seminar room" : "Seminárna miestnosť", + "Other" : "Iné", "When shared show" : "Pri zdieľaní zobraziť", "When shared show full event" : "Pri zdieľaní zobraziť udalosť úplne", "When shared show only busy" : "Pri zdieľaní zobraziť len zaneprázdnený", "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.", - "Location" : "Umiestnenie", "Add a location" : "Zadajte umiestnenie", - "Description" : "Popis", "Add a description" : "Zadajte popis", "Status" : "Stav", "Confirmed" : "Potvrdené", - "Tentative" : "Neistý", "Canceled" : "Zrušené", "Confirmation about the overall status of the event." : "Potvrdenie o celkovom stave udalosti.", "Show as" : "Zobrazovať ako", "Take this event into account when calculating free-busy information." : "Zohľadniť túto udalosť pri určovaní zaneprázdnených/voľných hodín. ", - "Free" : "Voľný", "Categories" : "Kategórie", "Categories help you to structure and organize your events." : "Kategórie pomáhajú udržiavať prehľad v udalostiach a štruktúrovať ich.", "Search or add categories" : "Hľadať alebo pridať kategórie", "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.", + "Error while sharing file" : "Pri zdieľaní súboru došlo k chybe", "Chat room for event" : "Chatová miestnosť 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", - "Present" : "Prezentovať", + "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", - "Review" : "Preskúmať", "Office" : "Kancelária", "Contributor week" : "Týždeň prispievateľov", - "Party" : "Párty", - "Celebration" : "Oslava", "Mail" : "Pošta", "Soccer" : "futbal", "Football" : "Futbal", "Gaming" : "Hranie", - "Play" : "Hrať sa", - "Game" : "Hra", "Drive" : "Šoférovať", + "Driving" : "Šoférovanie", "Bicycle" : "Bicykel", "Cycle" : "Bicyklovať", + "Cycling" : "Byciklovanie", "Biking" : "Bicyklovanie", + "Bike" : "Bycikel", "Podcast" : "Podcast", "Basketball" : "Basketbal", "Fishing" : "Rybačka", @@ -347,10 +530,12 @@ "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", @@ -361,7 +546,10 @@ "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", @@ -380,20 +568,27 @@ "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", - "Global" : "Globálne" + "Appointment not found" : "Stretnutie nebolo nájdené", + "User not found" : "Užívateľ nebol nájdený" },"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 22f812e220..772e1155e1 100644 --- a/l10n/sl.js +++ b/l10n/sl.js @@ -5,13 +5,43 @@ OC.L10N.register( "Provided email-address is not valid" : "Podan elektronski naslov ni veljaven naslov", "%s has published the calendar »%s«" : "%s objavi koledar » %s «", "Unexpected error sending email. Please contact your administrator." : "Prišlo je do napake med pošiljanjem elektronskega sporočila. Stopite v stik s skrbnikom sistema.", - "Successfully sent email to " : "Sporočilo je uspešno poslano na", + "Successfully sent email to %1$s" : "Sporočilo je uspešno poslano na %1$s", "Hello," : "Pozdravljeni,", "We wanted to inform you that %s has published the calendar »%s«." : "obveščamo vas, da je uporabnik %s objavil koledar »%s«.", "Open »%s«" : "Odpri »%s«", "Cheers!" : "Lep pozdrav!", "Upcoming events" : "Prihajajoči dogodki", + "More events" : "Več dogodkov", + "No more events today" : "Danes ni več načrtovanih dogodkov", + "No upcoming events" : "Ni prihajajočih dogodkov", "Calendar" : "Koledar", + "Appointments" : "Sestanki", + "Schedule appointment \"%s\"" : "Načrtovanje sestanka »%s«", + "Schedule an appointment" : "Načrtovanje sestanka", + "Prepare for %s" : "Pripravi za %s", + "Dear %s, please confirm your booking" : "%s, prosim potrdite rezervacijo", + "Confirm" : "Potrdi", + "This confirmation link expires in %s hours." : "Potrditvena povezava poteče po %s urah.", + "Appointment for:" : "Sestanek:", + "Date:" : "Datum:", + "Where:" : "Kje:", + "Comment:" : "Opomba", + "Anniversary" : "Obletnica", + "Appointment" : "Sestanek", + "Business" : "Posel", + "Education" : "Izobraževanje", + "Holiday" : "Praznik", + "Meeting" : "Srečanje", + "Miscellaneous" : "Razno", + "Non-working hours" : "Nedeloven dan", + "Not in office" : "Službena odsotnost", + "Personal" : "Osebno", + "Phone call" : "Telefonski klic", + "Sick day" : "Bolniška odsotnost", + "Special occasion" : "Poseben dogodek", + "Travel" : "Potovanje", + "Vacation" : "Dopust", + "Collaborative Tags" : "Sodelovalne oznake", "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", @@ -19,41 +49,69 @@ OC.L10N.register( "Previous month" : "Predhodni mesec", "Next day" : "Naslednji dan", "Next week" : "Naslednji teden", + "Next year" : "Naslednje leto", "Next month" : "Naslednji mesec", - "+ New event" : "+ Nov dogodek", + "Event" : "Dogodek", "Today" : "Danes", "Day" : "Dan", "Week" : "Teden", "Month" : "Mesec", + "Year" : "Leto", "List" : "Seznam", - "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", - "Download" : "Prejmi", - "Unshare from me" : "Prekini souporabo", + "Preview" : "Predogled", + "Copy link" : "Kopiraj povezavo", + "Edit" : "Uredi", "Delete" : "Izbriši", + "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.", + "Add new" : "Dodaj novo", + "Untitled calendar" : "Neimenovan koledar", + "Shared with you by" : "Souporabo omogoča", + "Edit calendar" : "Uredi koledar", + "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.", "_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"], + "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://)", + "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", + "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.", + "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", + "Empty trash bin" : "Izprazni smeti", + "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 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?", + "_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", + "Internal link" : "Notranja povezava", + "Copy internal link" : "Kopiraj krajevno povezavo", "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", @@ -65,32 +123,26 @@ OC.L10N.register( "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", "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", - "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://)", - "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", + "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"], - "{filename} is an unsupported file-type" : "Datoteka {filename} ni podprte vrste", + "Invalid location selected" : "Izbrano je neveljavno mesto", "{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", "Import partially failed. Imported {accepted} out of {total}." : "Uvoz je delno spodletel. Uvoženih je {accepted} od skupno {total}.", - "_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."], + "_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."], "Automatic" : "Samodejno", "Automatic ({detected})" : "Samodejno ({detected})", "New setting was not saved successfully." : "Novih nastavitev ni bilo mogoče shraniti.", @@ -103,21 +155,78 @@ OC.L10N.register( "Day view" : "Dnevni pogled", "Week view" : "Tedenski pogled", "Month view" : "Mesečni pogled", + "List view" : "Seznamski pogled", "Actions" : "Dejanja", "Create event" : "Ustvari dogodek", "Show shortcuts" : "Pokaži tipkovne bližnjice", + "Editor" : "Urejevalnik", + "Close editor" : "Zapri urejevalnik", + "Save edited event" : "Shrani spremenjen dogodek", + "Delete edited event" : "Izbriši spremenjen dogodek", + "Duplicate event" : "Podvoji dogodek", "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", "Show weekends" : "Pokaži vikende", "Show week numbers" : "Pokaži številke tednov", + "Time increments" : "Časovno povečevanje", + "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", - "Settings & import" : "Nastavitve in uvoz", + "Calendar settings" : "Nastavitve koledarja", + "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", + "Location" : "Mesto", + "Description" : "Opis", + "Visibility" : "Vidnost", + "Duration" : "Trajanje", + "Increments" : "Časovno povečevanje", + "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 termin", + "No times set" : "Ni določenih obdobij", + "Add" : "Dodaj", + "Monday" : "ponedeljek", + "Tuesday" : "torek", + "Wednesday" : "sreda", + "Thursday" : "četrtek", + "Friday" : "petek", + "Saturday" : "sobota", + "Sunday" : "nedelja", + "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", + "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. ", + "Create appointment" : "Ustvari sestanek", + "Edit appointment" : "Uredi sestanek", + "Update" : "Posodobi", + "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", + "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.", + "Book the appointment" : "Zabeležite si sestanek", + "Reminder" : "Opomnik", "before at" : "prej ob", "Notification" : "Obvestilo", "Email" : "Elektronsko sporočilo", @@ -131,55 +240,79 @@ OC.L10N.register( "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"], - "No reminders yet" : "Ni še vpisanih opomnikov", + "No attachments" : "Ni prilog", + "Add from Files" : "Izbor iz datotek", + "Upload from device" : "Pošlji z naprave", + "Delete file" : "Izbriši datoteko", + "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!", + "_{count} attachment_::_{count} attachments_" : ["{count} priloga","{count} prilogi","{count} priloge","{count} prilog"], + "Invitation accepted" : "Vabilo je sprejeto.", + "Available" : "Na voljo", + "Suggested" : "Predlagano", + "Participation marked as tentative" : "Udeležba je označena kot nedorečena", + "Accepted {organizerName}'s invitation" : "Sprejeto vabilo organizatorja: {organizerName}", + "Not available" : "Ni na voljo", + "Invitation declined" : "Vabilo je zavrnjeno.", + "Declined {organizerName}'s invitation" : "Zavrnjeno vabilo organizatorja: {organizerName}", + "Invitation is delegated" : "Povabilo je dodeljeno", + "Checking availability" : "Preverjanje razpoložljivosti", + "Invitation sent" : " Vabilo je poslano.", + "Has not responded to {organizerName}'s invitation yet" : "Še ni odgovora na na vabilo organizatorja: {organizerName}", "Availability of attendees, resources and rooms" : "Razpoložljivost udeležencev, virov in sob", + "{organizer} (organizer)" : "{organizer} (organizator)", + "Free" : "Prosto", "Busy (tentative)" : "Načrtovano delo", "Busy" : "Zasedeno", "Out of office" : "Službena odsotnost", "Unknown" : "Neopredeljeno", - "{name} accepted your invitation." : "{name} sprejme vaše povabilo.", - "{name} accepted {organizerName}'s invitation." : "{name} sprejme povabilo ({organizerName}).", - "{name} declined your invitation." : "{name} zavrne vaše povabilo.", - "{name} declined {organizerName}'s invitation." : "{name} zavrne povabilo ({organizerName}).", - "{name} has delegated their invitation." : "{name} prenese vabilo dogodka.", - "{name} marked their participation as tentative." : "{name} označi prisotnost kot načrtovano, a nedorečeno.", - "{name} did not respond to your invitation yet." : "{name} še nima zabeleženega odziva na vabilo.", - "{name} did not respond to {organizerName}'s invitation yet." : "{name} še nima zabeleženega odziva na vabilo ({organizerName}).", + "Accept" : "Sprejmi", + "Decline" : "Zavrni", + "Tentative" : "V usklajevanju", + "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.", "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 e-mail" : "Pošlji elektronsko sporočilo", + "Send email" : "Pošlji elektronsko sporočilo", "Chairperson" : "Vodja dogodka", "Required participant" : "Nujna udeležba", "Optional participant" : "Udeležba na željo", "Non-participant" : "Neudeležba", "Remove attendee" : "Odstrani udeleženca", - "Search for e-mails, users, contacts, resources or rooms" : "Poišči naslove, uporabnike, stike, vire ali klepetalnice ...", + "Search for emails, users or contacts" : "Poišči elektronske naslove, uporabnike in stike", "No match found" : "Ni najdenih zadetkov", - "No attendees yet" : "Ni še vpisanih udeležencev", "(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", - "Can not 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.", + "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}", + "Repeat" : "Ponovi", "End repeat" : "Končaj:", "Select to end repeat" : "Izbor končanja ponavljanja", "never" : "nikoli", "on date" : "na dan", "after" : "po", "_time_::_times_" : [" ponovitvi"," ponovitvah"," ponovitvah"," ponovitvah"], - "This event is the recurrence-exception of a recurrence-set. You can not add a recurrence-rule to it." : "Ta dogodek ima vpisano izjemo ponavljanja, zato pravila ponovitve ni mogoče dodati.", + "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.", @@ -187,25 +320,37 @@ OC.L10N.register( "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" : "Ponovi", "Repeat every" : "Ponovi na", "By day of the month" : "Na dan v mesecu", "On the" : "Na", "_month_::_months_" : ["mesec","meseca","mesece","mesecev"], "_year_::_years_" : ["leto","leti","leta","let"], - "Monday" : "ponedeljek", "weekday" : "delovni dan", - "weekend day" : "vikend dan", - "Summary" : "Povzetek", + "weekend day" : "vikend", + "No recurrence" : "Brez ponavljanja", "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", + "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", + "Room type" : "Vrsta sobe", + "Any" : "Katerakoli", + "Minimum seating capacity" : "Najmanjša razpoložljivost sedežev", "More" : "Več", - "Save" : "Shrani", - "Update" : "Posodobi", "Update this occurrence" : "Posodobi to pojavitev", "Update this and all future" : "Posodobi to in vse prihodnje pojavitve", "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 timezone:" : "Izbor časovnega pasu:", + "Please select a time zone:" : "Izbor časovnega pasu:", "Pick a time" : "Izbor časa", "Pick a date" : "Izbor datuma", "from {formattedDate}" : "od {formattedDate}", @@ -217,41 +362,44 @@ 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", - "Type to search timezone" : "Vpišite niz za iskanje časovnega pasu", - "Personal" : "Osebno", - "The automatic timezone detection determined your timezone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your timezone 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 timezone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your timezone 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", + "Type to search time zone" : "Vpišite niz za iskanje časovnega pasu", + "Global" : "Splošno", + "Subscribed" : "Naročeno", + "Subscribe" : "Naročilo", + "Select 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:", + "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.", + "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.", "Create a new event" : "Ustvari nov dogodek", "[Today]" : "[Danes]", "[Tomorrow]" : "[Jutri]", "[Yesterday]" : "[Včeraj]", "[Last] dddd" : "[Zadnje] dddd", "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", + "Deny access" : "Zavrni dostop", + "Invite" : "Povabi", "Attendees" : "Udeleženci", - "Reminders" : "Opomniki", + "Resources" : "Viri", "Close" : "Zapri", "Show more details" : "Pokaži več podrobnosti", "Subscribe to {name}" : "Naroči na {name}", - "Download {name}" : "Prejmi {name}", - "Anniversary" : "Obletnica", - "Appointment" : "Sestanek", - "Business" : "Posel", - "Education" : "Izobraževanje", - "Holiday" : "Praznik", - "Meeting" : "Srečanje", - "Miscellaneous" : "Razno", - "Non-working hours" : "Nedeloven dan", - "Not in office" : "Službena odsotnost", - "Phone call" : "Telefonski klic", - "Sick day" : "Bolniška odsotnost", - "Special occasion" : "Poseben dogodek", - "Travel" : "Potovanje", - "Vacation" : "Dopust", + "Export {name}" : "Izvozi {name}", "Midnight on the day the event starts" : "Polnoč na dan začetka dogodka", "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n dan pred dogodkom ob {formattedHourMinute}","%n dni pred dogodkom ob {formattedHourMinute}","%n dni pred dogodkom ob {formattedHourMinute}","%n dni pred dogodkom ob {formattedHourMinute}"], "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n teden pred dogodkom ob {formattedHourMinute}","%n tedna pred dogodkom ob {formattedHourMinute}","%n tedne pred dogodkom ob {formattedHourMinute}","%n tednov pred dogodkom ob {formattedHourMinute}"], @@ -284,14 +432,7 @@ OC.L10N.register( "Untitled event" : "Neimenovan dogodek", "Untitled task" : "Neimenovana naloga", "Please ask your administrator to enable the Tasks App." : "Obvestite skrbnika, da je treba omogočiti program Tasks.", - "prev" : "pred.", - "next" : "nasl.", - "prev year" : "predhodno leto", - "next year" : "naslednje leto", - "today" : "danes", - "list" : "seznam", "W" : "T", - "all-day" : "celodnevno", "%n more" : "%n več", "No events to display" : "Ni dogodkov za prikaz", "_+%n more_::_+%n more_" : ["+%n več","+%n več","+%n več","+%n več"], @@ -299,62 +440,91 @@ OC.L10N.register( "Create a new event or change the visible time-range" : "Ustvarite nov dogodek, ali pa spremenite časovni obseg", "It might have been deleted, or there was a typo in a link" : "Morda je bil izbrisan, ali pa je napaka v zapisu povezave", "It might have been deleted, or there was a typo in the link" : "Morda je bil izbrisan, ali pa je napaka v zapisu povezave", + "Meeting room" : "Soba za sestanke", + "Lecture hall" : "Predavalnica", + "Seminar room" : "Soba za seminarje", + "Other" : "Drugo", "When shared show" : "V souporabi pokaži dogodek", "When shared show full event" : "V souporabi pokaži poln dogodek", "When shared show only busy" : "V souporabi pokaži le, da je zasedeno", "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.", - "Location" : "Mesto", "Add a location" : "Dodaj mesto ...", - "Description" : "Opis", "Add a description" : "Dodaj opis ...", "Status" : "Stanje", "Confirmed" : "Potrjeno", - "Tentative" : "V usklajevanju", - "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.", - "Free" : "Prosto", "Categories" : "Kategorije", "Categories help you to structure and organize your events." : "Kategorije omogočajo pregledno razvrščanje in urejanje dogodkov.", "Search or add categories" : "Poišči oziroma dodaj kategorijo", "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.", + "Error while sharing file" : "Prišlo je do napake med souporabo datoteke", "Chat room for event" : "Klepetalnica za dogodek", + "An error occurred, unable to delete the calendar." : "Prišlo je do napake; ni mogoče izbrisati koledarja.", "Imported {filename}" : "Uvožena datoteka {filename}", + "This is an event reminder." : "To je opomnik dogodka.", "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", - "Present" : "Darilo", + "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", - "Review" : "Pregled", "Office" : "Pisarna", "Contributor week" : "Sodelovalni teden", - "Party" : "Zabava", - "Celebration" : "Praznovanje", "Mail" : "Pošta", "Soccer" : "Nogomet", "Football" : "Ameriški nogomet", "Gaming" : "Igrice", - "Play" : "Igranje", - "Game" : "Igra", "Drive" : "Vožnja", + "Driving" : "Vožnja", "Bicycle" : "Kolo", "Cycle" : "Kolesarjenje", + "Cycling" : "Kolesa", "Biking" : "Kolesarjenje", + "Bike" : "Kolo", "Podcast" : "Podkast", "Basketball" : "Košarka", "Fishing" : "Ribolov", @@ -365,10 +535,12 @@ OC.L10N.register( "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", @@ -379,7 +551,10 @@ OC.L10N.register( "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", @@ -398,20 +573,27 @@ OC.L10N.register( "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", - "Global" : "Splošno" + "Appointment not found" : "Sestanka ni mogoče najti", + "User not found" : "Uporabnika ni mogoče najti" }, "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 a63e815b03..1535caef02 100644 --- a/l10n/sl.json +++ b/l10n/sl.json @@ -3,13 +3,43 @@ "Provided email-address is not valid" : "Podan elektronski naslov ni veljaven naslov", "%s has published the calendar »%s«" : "%s objavi koledar » %s «", "Unexpected error sending email. Please contact your administrator." : "Prišlo je do napake med pošiljanjem elektronskega sporočila. Stopite v stik s skrbnikom sistema.", - "Successfully sent email to " : "Sporočilo je uspešno poslano na", + "Successfully sent email to %1$s" : "Sporočilo je uspešno poslano na %1$s", "Hello," : "Pozdravljeni,", "We wanted to inform you that %s has published the calendar »%s«." : "obveščamo vas, da je uporabnik %s objavil koledar »%s«.", "Open »%s«" : "Odpri »%s«", "Cheers!" : "Lep pozdrav!", "Upcoming events" : "Prihajajoči dogodki", + "More events" : "Več dogodkov", + "No more events today" : "Danes ni več načrtovanih dogodkov", + "No upcoming events" : "Ni prihajajočih dogodkov", "Calendar" : "Koledar", + "Appointments" : "Sestanki", + "Schedule appointment \"%s\"" : "Načrtovanje sestanka »%s«", + "Schedule an appointment" : "Načrtovanje sestanka", + "Prepare for %s" : "Pripravi za %s", + "Dear %s, please confirm your booking" : "%s, prosim potrdite rezervacijo", + "Confirm" : "Potrdi", + "This confirmation link expires in %s hours." : "Potrditvena povezava poteče po %s urah.", + "Appointment for:" : "Sestanek:", + "Date:" : "Datum:", + "Where:" : "Kje:", + "Comment:" : "Opomba", + "Anniversary" : "Obletnica", + "Appointment" : "Sestanek", + "Business" : "Posel", + "Education" : "Izobraževanje", + "Holiday" : "Praznik", + "Meeting" : "Srečanje", + "Miscellaneous" : "Razno", + "Non-working hours" : "Nedeloven dan", + "Not in office" : "Službena odsotnost", + "Personal" : "Osebno", + "Phone call" : "Telefonski klic", + "Sick day" : "Bolniška odsotnost", + "Special occasion" : "Poseben dogodek", + "Travel" : "Potovanje", + "Vacation" : "Dopust", + "Collaborative Tags" : "Sodelovalne oznake", "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", @@ -17,41 +47,69 @@ "Previous month" : "Predhodni mesec", "Next day" : "Naslednji dan", "Next week" : "Naslednji teden", + "Next year" : "Naslednje leto", "Next month" : "Naslednji mesec", - "+ New event" : "+ Nov dogodek", + "Event" : "Dogodek", "Today" : "Danes", "Day" : "Dan", "Week" : "Teden", "Month" : "Mesec", + "Year" : "Leto", "List" : "Seznam", - "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", - "Download" : "Prejmi", - "Unshare from me" : "Prekini souporabo", + "Preview" : "Predogled", + "Copy link" : "Kopiraj povezavo", + "Edit" : "Uredi", "Delete" : "Izbriši", + "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.", + "Add new" : "Dodaj novo", + "Untitled calendar" : "Neimenovan koledar", + "Shared with you by" : "Souporabo omogoča", + "Edit calendar" : "Uredi koledar", + "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.", "_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"], + "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://)", + "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", + "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.", + "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", + "Empty trash bin" : "Izprazni smeti", + "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 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?", + "_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", + "Internal link" : "Notranja povezava", + "Copy internal link" : "Kopiraj krajevno povezavo", "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", @@ -63,32 +121,26 @@ "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", "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", - "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://)", - "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", + "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"], - "{filename} is an unsupported file-type" : "Datoteka {filename} ni podprte vrste", + "Invalid location selected" : "Izbrano je neveljavno mesto", "{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", "Import partially failed. Imported {accepted} out of {total}." : "Uvoz je delno spodletel. Uvoženih je {accepted} od skupno {total}.", - "_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."], + "_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."], "Automatic" : "Samodejno", "Automatic ({detected})" : "Samodejno ({detected})", "New setting was not saved successfully." : "Novih nastavitev ni bilo mogoče shraniti.", @@ -101,21 +153,78 @@ "Day view" : "Dnevni pogled", "Week view" : "Tedenski pogled", "Month view" : "Mesečni pogled", + "List view" : "Seznamski pogled", "Actions" : "Dejanja", "Create event" : "Ustvari dogodek", "Show shortcuts" : "Pokaži tipkovne bližnjice", + "Editor" : "Urejevalnik", + "Close editor" : "Zapri urejevalnik", + "Save edited event" : "Shrani spremenjen dogodek", + "Delete edited event" : "Izbriši spremenjen dogodek", + "Duplicate event" : "Podvoji dogodek", "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", "Show weekends" : "Pokaži vikende", "Show week numbers" : "Pokaži številke tednov", + "Time increments" : "Časovno povečevanje", + "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", - "Settings & import" : "Nastavitve in uvoz", + "Calendar settings" : "Nastavitve koledarja", + "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", + "Location" : "Mesto", + "Description" : "Opis", + "Visibility" : "Vidnost", + "Duration" : "Trajanje", + "Increments" : "Časovno povečevanje", + "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 termin", + "No times set" : "Ni določenih obdobij", + "Add" : "Dodaj", + "Monday" : "ponedeljek", + "Tuesday" : "torek", + "Wednesday" : "sreda", + "Thursday" : "četrtek", + "Friday" : "petek", + "Saturday" : "sobota", + "Sunday" : "nedelja", + "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", + "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. ", + "Create appointment" : "Ustvari sestanek", + "Edit appointment" : "Uredi sestanek", + "Update" : "Posodobi", + "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", + "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.", + "Book the appointment" : "Zabeležite si sestanek", + "Reminder" : "Opomnik", "before at" : "prej ob", "Notification" : "Obvestilo", "Email" : "Elektronsko sporočilo", @@ -129,55 +238,79 @@ "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"], - "No reminders yet" : "Ni še vpisanih opomnikov", + "No attachments" : "Ni prilog", + "Add from Files" : "Izbor iz datotek", + "Upload from device" : "Pošlji z naprave", + "Delete file" : "Izbriši datoteko", + "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!", + "_{count} attachment_::_{count} attachments_" : ["{count} priloga","{count} prilogi","{count} priloge","{count} prilog"], + "Invitation accepted" : "Vabilo je sprejeto.", + "Available" : "Na voljo", + "Suggested" : "Predlagano", + "Participation marked as tentative" : "Udeležba je označena kot nedorečena", + "Accepted {organizerName}'s invitation" : "Sprejeto vabilo organizatorja: {organizerName}", + "Not available" : "Ni na voljo", + "Invitation declined" : "Vabilo je zavrnjeno.", + "Declined {organizerName}'s invitation" : "Zavrnjeno vabilo organizatorja: {organizerName}", + "Invitation is delegated" : "Povabilo je dodeljeno", + "Checking availability" : "Preverjanje razpoložljivosti", + "Invitation sent" : " Vabilo je poslano.", + "Has not responded to {organizerName}'s invitation yet" : "Še ni odgovora na na vabilo organizatorja: {organizerName}", "Availability of attendees, resources and rooms" : "Razpoložljivost udeležencev, virov in sob", + "{organizer} (organizer)" : "{organizer} (organizator)", + "Free" : "Prosto", "Busy (tentative)" : "Načrtovano delo", "Busy" : "Zasedeno", "Out of office" : "Službena odsotnost", "Unknown" : "Neopredeljeno", - "{name} accepted your invitation." : "{name} sprejme vaše povabilo.", - "{name} accepted {organizerName}'s invitation." : "{name} sprejme povabilo ({organizerName}).", - "{name} declined your invitation." : "{name} zavrne vaše povabilo.", - "{name} declined {organizerName}'s invitation." : "{name} zavrne povabilo ({organizerName}).", - "{name} has delegated their invitation." : "{name} prenese vabilo dogodka.", - "{name} marked their participation as tentative." : "{name} označi prisotnost kot načrtovano, a nedorečeno.", - "{name} did not respond to your invitation yet." : "{name} še nima zabeleženega odziva na vabilo.", - "{name} did not respond to {organizerName}'s invitation yet." : "{name} še nima zabeleženega odziva na vabilo ({organizerName}).", + "Accept" : "Sprejmi", + "Decline" : "Zavrni", + "Tentative" : "V usklajevanju", + "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.", "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 e-mail" : "Pošlji elektronsko sporočilo", + "Send email" : "Pošlji elektronsko sporočilo", "Chairperson" : "Vodja dogodka", "Required participant" : "Nujna udeležba", "Optional participant" : "Udeležba na željo", "Non-participant" : "Neudeležba", "Remove attendee" : "Odstrani udeleženca", - "Search for e-mails, users, contacts, resources or rooms" : "Poišči naslove, uporabnike, stike, vire ali klepetalnice ...", + "Search for emails, users or contacts" : "Poišči elektronske naslove, uporabnike in stike", "No match found" : "Ni najdenih zadetkov", - "No attendees yet" : "Ni še vpisanih udeležencev", "(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", - "Can not 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.", + "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}", + "Repeat" : "Ponovi", "End repeat" : "Končaj:", "Select to end repeat" : "Izbor končanja ponavljanja", "never" : "nikoli", "on date" : "na dan", "after" : "po", "_time_::_times_" : [" ponovitvi"," ponovitvah"," ponovitvah"," ponovitvah"], - "This event is the recurrence-exception of a recurrence-set. You can not add a recurrence-rule to it." : "Ta dogodek ima vpisano izjemo ponavljanja, zato pravila ponovitve ni mogoče dodati.", + "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.", @@ -185,25 +318,37 @@ "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" : "Ponovi", "Repeat every" : "Ponovi na", "By day of the month" : "Na dan v mesecu", "On the" : "Na", "_month_::_months_" : ["mesec","meseca","mesece","mesecev"], "_year_::_years_" : ["leto","leti","leta","let"], - "Monday" : "ponedeljek", "weekday" : "delovni dan", - "weekend day" : "vikend dan", - "Summary" : "Povzetek", + "weekend day" : "vikend", + "No recurrence" : "Brez ponavljanja", "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", + "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", + "Room type" : "Vrsta sobe", + "Any" : "Katerakoli", + "Minimum seating capacity" : "Najmanjša razpoložljivost sedežev", "More" : "Več", - "Save" : "Shrani", - "Update" : "Posodobi", "Update this occurrence" : "Posodobi to pojavitev", "Update this and all future" : "Posodobi to in vse prihodnje pojavitve", "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 timezone:" : "Izbor časovnega pasu:", + "Please select a time zone:" : "Izbor časovnega pasu:", "Pick a time" : "Izbor časa", "Pick a date" : "Izbor datuma", "from {formattedDate}" : "od {formattedDate}", @@ -215,41 +360,44 @@ "{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", - "Type to search timezone" : "Vpišite niz za iskanje časovnega pasu", - "Personal" : "Osebno", - "The automatic timezone detection determined your timezone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your timezone 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 timezone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your timezone 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", + "Type to search time zone" : "Vpišite niz za iskanje časovnega pasu", + "Global" : "Splošno", + "Subscribed" : "Naročeno", + "Subscribe" : "Naročilo", + "Select 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:", + "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.", + "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.", "Create a new event" : "Ustvari nov dogodek", "[Today]" : "[Danes]", "[Tomorrow]" : "[Jutri]", "[Yesterday]" : "[Včeraj]", "[Last] dddd" : "[Zadnje] dddd", "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", + "Deny access" : "Zavrni dostop", + "Invite" : "Povabi", "Attendees" : "Udeleženci", - "Reminders" : "Opomniki", + "Resources" : "Viri", "Close" : "Zapri", "Show more details" : "Pokaži več podrobnosti", "Subscribe to {name}" : "Naroči na {name}", - "Download {name}" : "Prejmi {name}", - "Anniversary" : "Obletnica", - "Appointment" : "Sestanek", - "Business" : "Posel", - "Education" : "Izobraževanje", - "Holiday" : "Praznik", - "Meeting" : "Srečanje", - "Miscellaneous" : "Razno", - "Non-working hours" : "Nedeloven dan", - "Not in office" : "Službena odsotnost", - "Phone call" : "Telefonski klic", - "Sick day" : "Bolniška odsotnost", - "Special occasion" : "Poseben dogodek", - "Travel" : "Potovanje", - "Vacation" : "Dopust", + "Export {name}" : "Izvozi {name}", "Midnight on the day the event starts" : "Polnoč na dan začetka dogodka", "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n dan pred dogodkom ob {formattedHourMinute}","%n dni pred dogodkom ob {formattedHourMinute}","%n dni pred dogodkom ob {formattedHourMinute}","%n dni pred dogodkom ob {formattedHourMinute}"], "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n teden pred dogodkom ob {formattedHourMinute}","%n tedna pred dogodkom ob {formattedHourMinute}","%n tedne pred dogodkom ob {formattedHourMinute}","%n tednov pred dogodkom ob {formattedHourMinute}"], @@ -282,14 +430,7 @@ "Untitled event" : "Neimenovan dogodek", "Untitled task" : "Neimenovana naloga", "Please ask your administrator to enable the Tasks App." : "Obvestite skrbnika, da je treba omogočiti program Tasks.", - "prev" : "pred.", - "next" : "nasl.", - "prev year" : "predhodno leto", - "next year" : "naslednje leto", - "today" : "danes", - "list" : "seznam", "W" : "T", - "all-day" : "celodnevno", "%n more" : "%n več", "No events to display" : "Ni dogodkov za prikaz", "_+%n more_::_+%n more_" : ["+%n več","+%n več","+%n več","+%n več"], @@ -297,62 +438,91 @@ "Create a new event or change the visible time-range" : "Ustvarite nov dogodek, ali pa spremenite časovni obseg", "It might have been deleted, or there was a typo in a link" : "Morda je bil izbrisan, ali pa je napaka v zapisu povezave", "It might have been deleted, or there was a typo in the link" : "Morda je bil izbrisan, ali pa je napaka v zapisu povezave", + "Meeting room" : "Soba za sestanke", + "Lecture hall" : "Predavalnica", + "Seminar room" : "Soba za seminarje", + "Other" : "Drugo", "When shared show" : "V souporabi pokaži dogodek", "When shared show full event" : "V souporabi pokaži poln dogodek", "When shared show only busy" : "V souporabi pokaži le, da je zasedeno", "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.", - "Location" : "Mesto", "Add a location" : "Dodaj mesto ...", - "Description" : "Opis", "Add a description" : "Dodaj opis ...", "Status" : "Stanje", "Confirmed" : "Potrjeno", - "Tentative" : "V usklajevanju", - "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.", - "Free" : "Prosto", "Categories" : "Kategorije", "Categories help you to structure and organize your events." : "Kategorije omogočajo pregledno razvrščanje in urejanje dogodkov.", "Search or add categories" : "Poišči oziroma dodaj kategorijo", "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.", + "Error while sharing file" : "Prišlo je do napake med souporabo datoteke", "Chat room for event" : "Klepetalnica za dogodek", + "An error occurred, unable to delete the calendar." : "Prišlo je do napake; ni mogoče izbrisati koledarja.", "Imported {filename}" : "Uvožena datoteka {filename}", + "This is an event reminder." : "To je opomnik dogodka.", "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", - "Present" : "Darilo", + "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", - "Review" : "Pregled", "Office" : "Pisarna", "Contributor week" : "Sodelovalni teden", - "Party" : "Zabava", - "Celebration" : "Praznovanje", "Mail" : "Pošta", "Soccer" : "Nogomet", "Football" : "Ameriški nogomet", "Gaming" : "Igrice", - "Play" : "Igranje", - "Game" : "Igra", "Drive" : "Vožnja", + "Driving" : "Vožnja", "Bicycle" : "Kolo", "Cycle" : "Kolesarjenje", + "Cycling" : "Kolesa", "Biking" : "Kolesarjenje", + "Bike" : "Kolo", "Podcast" : "Podkast", "Basketball" : "Košarka", "Fishing" : "Ribolov", @@ -363,10 +533,12 @@ "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", @@ -377,7 +549,10 @@ "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", @@ -396,20 +571,27 @@ "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", - "Global" : "Splošno" + "Appointment not found" : "Sestanka ni mogoče najti", + "User not found" : "Uporabnika ni mogoče najti" },"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 28e6c125fb..1f19c6fc7f 100644 --- a/l10n/sq.js +++ b/l10n/sq.js @@ -7,58 +7,87 @@ OC.L10N.register( "Open »%s«" : "Hap »%s«", "Cheers!" : "Gëzuar!", "Calendar" : "Kalendar", + "Appointments" : "Takime", + "Confirm" : "Konfirmo", + "Where:" : "Ku:", + "Anniversary" : "Përvjetor", + "Personal" : "Personale", "Today" : "Sot", "Day" : "Ditë", "Week" : "Javë", "Month" : "Muaj", "List" : "List", - "Download" : "Shkarkoje", + "Preview" : "Parapamje ", + "Copy link" : "Kopjo linkun", + "Edit" : "Përpuno", "Delete" : "Fshije", + "New calendar" : "Kalendar i ri", + "Export" : "Eksport", + "Name" : "Emri", + "Deleted" : "E fshirë", + "Restore" : "Rikthe", + "Delete permanently" : "Fshije përgjithmonë", + "Copy internal link" : "Kopjoni lidhjen e brendshme", "Share link" : "Ndani lidhjen", - "Share with users or groups" : "Nda me përdoruesit ose grupet", "can edit" : "mund të përpunojnë", - "New calendar" : "Kalendar i ri", + "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", - "Settings & import" : "Konfigurimet dhe importi", + "Location" : "Vendndodhje", + "Description" : "Përshkrim", + "Duration" : "Kohëzgjatja", + "to" : "te", + "Add" : "Shto", + "Monday" : "E hënë", + "Tuesday" : "E martë", + "Wednesday" : "E mërkurë", + "Thursday" : "E enjte", + "Friday" : "E premte", + "Saturday" : "E shtunë", + "Sunday" : "E dielë", + "Update" : "Përditësoje", + "Your email address" : "Adresa juaj email", "Notification" : "Njoftim", "Email" : "Emaili", + "Delete file" : "Fshi skedarin", + "Choose a file to add as attachment" : "Zgjidhni një kartelë që të shtohet si bashkëngjitje", + "Available" : "i disponueshëm", "Unknown" : "I/E panjohur", + "Accept" : "Prano", + "Decline" : "Refuzo", + "Tentative" : "Tentativë", + "Send email" : "Dërgo email", "All day" : "Gjithë ditën", + "Repeat" : "Përsërite", "never" : "kurrë", "after" : "pas", - "Repeat" : "Përsërite", - "Monday" : "E hënë", - "Summary" : "Përmbledhje", + "available" : "në gjëndje", "More" : "Më tepër", - "Save" : "Ruaj", - "Update" : "Përditësoje", - "Personal" : "Personale", + "Global" : "Globale", + "Subscribe" : "Abonohu", "Details" : "Detajet", "Attendees" : "Pjesëmarrës", - "Reminders" : "Kujtues", + "Resources" : "Burimet", "Close" : "Mbylle", - "Anniversary" : "Përvjetor", "Week {number} of {year}" : "Java e {number} e {year}", "Daily" : "Përditë", "Weekly" : "Çdo javë", - "today" : "sot", + "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ë", "When shared hide this event" : "Kur ndahet fshihe këtë veprimtari", - "Location" : "Vendndodhje", - "Description" : "Përshkrim", "Status" : "Status", "Confirmed" : "E konfirmuar", - "Tentative" : "Tentativë", + "Canceled" : "Anuluar", "Categories" : "Kategoritë", "Presentation" : "Paraqitje", "Office" : "Zyrë", "Mail" : "Posta", - "Play" : "Luaj", - "Global" : "Globale" + "Birthday" : "Datëlindje" }, "nplurals=2; plural=(n != 1);"); diff --git a/l10n/sq.json b/l10n/sq.json index ce56bed8c3..a9cf34690c 100644 --- a/l10n/sq.json +++ b/l10n/sq.json @@ -5,58 +5,87 @@ "Open »%s«" : "Hap »%s«", "Cheers!" : "Gëzuar!", "Calendar" : "Kalendar", + "Appointments" : "Takime", + "Confirm" : "Konfirmo", + "Where:" : "Ku:", + "Anniversary" : "Përvjetor", + "Personal" : "Personale", "Today" : "Sot", "Day" : "Ditë", "Week" : "Javë", "Month" : "Muaj", "List" : "List", - "Download" : "Shkarkoje", + "Preview" : "Parapamje ", + "Copy link" : "Kopjo linkun", + "Edit" : "Përpuno", "Delete" : "Fshije", + "New calendar" : "Kalendar i ri", + "Export" : "Eksport", + "Name" : "Emri", + "Deleted" : "E fshirë", + "Restore" : "Rikthe", + "Delete permanently" : "Fshije përgjithmonë", + "Copy internal link" : "Kopjoni lidhjen e brendshme", "Share link" : "Ndani lidhjen", - "Share with users or groups" : "Nda me përdoruesit ose grupet", "can edit" : "mund të përpunojnë", - "New calendar" : "Kalendar i ri", + "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", - "Settings & import" : "Konfigurimet dhe importi", + "Location" : "Vendndodhje", + "Description" : "Përshkrim", + "Duration" : "Kohëzgjatja", + "to" : "te", + "Add" : "Shto", + "Monday" : "E hënë", + "Tuesday" : "E martë", + "Wednesday" : "E mërkurë", + "Thursday" : "E enjte", + "Friday" : "E premte", + "Saturday" : "E shtunë", + "Sunday" : "E dielë", + "Update" : "Përditësoje", + "Your email address" : "Adresa juaj email", "Notification" : "Njoftim", "Email" : "Emaili", + "Delete file" : "Fshi skedarin", + "Choose a file to add as attachment" : "Zgjidhni një kartelë që të shtohet si bashkëngjitje", + "Available" : "i disponueshëm", "Unknown" : "I/E panjohur", + "Accept" : "Prano", + "Decline" : "Refuzo", + "Tentative" : "Tentativë", + "Send email" : "Dërgo email", "All day" : "Gjithë ditën", + "Repeat" : "Përsërite", "never" : "kurrë", "after" : "pas", - "Repeat" : "Përsërite", - "Monday" : "E hënë", - "Summary" : "Përmbledhje", + "available" : "në gjëndje", "More" : "Më tepër", - "Save" : "Ruaj", - "Update" : "Përditësoje", - "Personal" : "Personale", + "Global" : "Globale", + "Subscribe" : "Abonohu", "Details" : "Detajet", "Attendees" : "Pjesëmarrës", - "Reminders" : "Kujtues", + "Resources" : "Burimet", "Close" : "Mbylle", - "Anniversary" : "Përvjetor", "Week {number} of {year}" : "Java e {number} e {year}", "Daily" : "Përditë", "Weekly" : "Çdo javë", - "today" : "sot", + "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ë", "When shared hide this event" : "Kur ndahet fshihe këtë veprimtari", - "Location" : "Vendndodhje", - "Description" : "Përshkrim", "Status" : "Status", "Confirmed" : "E konfirmuar", - "Tentative" : "Tentativë", + "Canceled" : "Anuluar", "Categories" : "Kategoritë", "Presentation" : "Paraqitje", "Office" : "Zyrë", "Mail" : "Posta", - "Play" : "Luaj", - "Global" : "Globale" + "Birthday" : "Datëlindje" },"pluralForm" :"nplurals=2; plural=(n != 1);" } \ No newline at end of file diff --git a/l10n/sr.js b/l10n/sr.js index 14eccb9600..d6f049296c 100644 --- a/l10n/sr.js +++ b/l10n/sr.js @@ -1,86 +1,645 @@ 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" : "Предстојећи догађаји", + "More events" : "Још догађаја", + "No more events today" : "Данас нема више догађаја", + "No upcoming 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" : "Потврди", + "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) је резервисао састанак са вама.", + "Anniversary" : "Годишњица", + "Appointment" : "Састанак", + "Business" : "Посао", + "Education" : "Образовање", + "Holiday" : "Одмор", + "Meeting" : "Састанак", + "Miscellaneous" : "Разно", + "Non-working hours" : "Нерадни сати", + "Not in office" : "Ван канцеларије", + "Personal" : "Лично", + "Phone call" : "Телефонски позив", + "Sick day" : "Боловање", + "Special occasion" : "Посебна прилика", + "Travel" : "Путовање", + "Vacation" : "Летовање", + "Custom Categories" : "Произвољне категорије", + "Collaborative Tags" : "Ознаке сарадње", + "Standard Categories" : "Стандардне категорије", "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." : "Апликација Календар је кориснички интерфејс за 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" : "Наредног месеца", + "Event" : "Догађај", + "Create new event" : "Креирај нови догађај", "Today" : "Данас", "Day" : "Дан", "Week" : "Недеља", "Month" : "Месец", + "Year" : "Година", "List" : "Излистај", - "Edit name" : "Измени име", - "Copy private link" : "Копирај приватну везу", - "Download" : "Преузми", + "Preview" : "Претпреглед", + "Copy link" : "Копирај везу", + "Edit" : "Измени", "Delete" : "Обриши", - "An error occurred, unable to delete the calendar." : "Догодила се грешка, не могу да обришем календар.", + "Appointment link was copied to clipboard" : "Линк састанка је копиран у клипборд", + "Appointment link could not be copied to clipboard" : "Линк састанка није могао да се копира у клипборд", + "Add new" : "Додај нови", + "Untitled calendar" : "Неименовани календар", + "Shared with you by" : "Са вама је поделио", + "Edit and share calendar" : "Уреди и подели календар", + "Edit calendar" : "Уреди календар", + "Disable calendar \"{calendar}\"" : "Искључи календар „{calendar}”", + "Disable untitled calendar" : "Искључи неименовани календар", + "Enable calendar \"{calendar}\"" : "Укључи календар „{calendar}”", + "Enable untitled calendar" : "Укључи неименовани календар", + "An error occurred, unable to change visibility of the 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} секунди"], + "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" : "Додај календар државних празника", + "An error occurred, unable to create the calendar." : "Дошло је до грешке, календар не може да се креира.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Молимо вас да унесете исправан линк (који полиње са http://, https://, webcal://, или webcals://)", + "Copy subscription link" : "Копирај линк за претплату", + "Copying link …" : "Линк се копира …", + "Copied link" : "Линк је копиран", + "Could not copy link" : "Линк није могао да се копира", + "Export" : "Извези", "Calendar link copied to clipboard." : "Веза календара копирана у оставу.", "Calendar link could not be copied to clipboard." : "Веза календара није могла да се копира у оставу.", + "Trash bin" : "Корпа за отпатке", + "Loading deleted items." : "Учитавање обрисаних ставки.", + "You do not have any deleted items." : "Немате ниједну обрисану ставку.", + "Name" : "Име", + "Deleted" : "Обрисано", + "Restore" : "Врати", + "Delete permanently" : "Обриши заувек", + "Empty trash bin" : "Испразни корпу за отпатке", + "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?" : "Да ли заиста желите да испразните корпу за отпатке?", + "_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." : "Није могао да се ажурира редослед календара.", + "Internal link" : "Интерна веза", + "A private link that can be used with external clients" : "Приватни линк који може да се користи са спољним клијентима", + "Copy internal 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" : "Обриши везу дељења", - "Share with users or groups" : "Дели са корисницима или групама", - "No users or groups" : "Нема корисника или група", + "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" : "Није успео прекид објављивања календара", "can edit" : "може да мења", "Unshare with {displayName}" : "Уклони дељење са {displayName}", - "New calendar" : "Нови календар", + "An error occurred while unsharing the calendar." : "Дошло је до грешке приликом уклањања дељења календара.", + "An error occurred, unable to change the permission of the share." : "Дошло је до грешке, не може да се измени дозвола дељења.", + "Share with users or groups" : "Дели са корисницима или групама", + "No users or groups" : "Нема корисника или група", + "Calendar name …" : "Назив календара ...", + "Share calendar" : "Дели календар", + "Unshare from me" : "Уклони дељење за мене", + "Save" : "Сачувај", + "Failed to save calendar name and color" : "Није успело чување назива календара и боје", + "Import calendars" : "Увоз календара", + "Please select a calendar to import into …" : "Молимо вас да изаберете календар у који се увози …", "Filename" : "Име фајла", + "Calendar to import into" : "Календар у који се увози", "Cancel" : "Одустани", + "_Import calendar_::_Import calendars_" : ["Увези календар","Увези календара","Увези календаре"], + "Default attachments location" : "Подразумевана локација прилога", + "Select the default location for attachments" : "Изаберите подразумевану локацију за прилоге", + "Invalid location selected" : "Изабрана је неисправна локација", + "Attachments folder successfully saved." : "Фолдер за прилоге је успешно сачуван.", + "Error on saving attachments folder." : "Грешка приликом чувања фолдера са додацима.", + "{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 догађаја је успешно увезено"], "Automatic" : "Аутоматски", + "Automatic ({detected})" : "Аутоматски ({detected})", + "New setting was not saved successfully." : "Ново подешавање није успешно сачувано.", + "Shortcut overview" : "Преглед пречица", "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" : "Дуплирај догађај", + "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" : "Подешавања личне доступности", "Show keyboard shortcuts" : "Прикажи пречице тастатуре", - "Settings & import" : "Поставке & увоз", + "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} минута","{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 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" : "Уторак", + "Wednesday" : "Среда", + "Thursday" : "Четвртак", + "Friday" : "Петак", + "Saturday" : "Субота", + "Sunday" : "Недеља", + "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" : "Уреди састанак", + "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" : "Подсетник", + "before at" : "раније у", "Notification" : "Обавештење", "Email" : "Е-пошта", + "Audio notification" : "Звучно обавештење", + "Other notification" : "Друго обавештење", + "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_" : ["седмица","седмице","седмица"], + "No attachments" : "Без прилога", + "Add from Files" : "Додај из Фајлова", + "Upload from device" : "Отпреми са уређаја", + "Delete file" : "Обриши фајл", + "Choose a file to add as attachment" : "Изаберите фајл за прилог", + "Choose a file to share as a link" : "Одаберите фајл који желите да поделите као везу", + "Attachment {name} already exist!" : "Прилог {name} веђ постоји!", + "_{count} attachment_::_{count} attachments_" : ["{count} прилог","{count} прилога","{count} прилога"], + "Invitation accepted" : "Позивница је прихваћена", + "Available" : "Доступно", + "Suggested" : "Предложени", + "Participation marked as tentative" : "Пристуство је обележено као несигурно", + "Accepted {organizerName}'s invitation" : "Позивница коју је послао {organizerName} је прихваћена", + "Not available" : "Није доступно", + "Invitation declined" : "Позивница је одбијена", + "Declined {organizerName}'s invitation" : "Позивница коју је послао {organizerName} је одбијена", + "Invitation is delegated" : "Позивница је прослеђена", + "Checking availability" : "Провера доступности", + "Invitation sent" : "Позивница је послата", + "Has not responded to {organizerName}'s invitation yet" : "Још увек није одговорено на позивницу коју је послао {organizerName}", + "Availability of attendees, resources and rooms" : "Доступност учесника, ресурса и соба", + "{organizer} (organizer)" : "{organizer} (организатор)", + "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" : "Прикажи времена заузетости", + "No attendees yet" : "Још увек нема учесника", + "You don't own this calendar, so you cannot add attendees to this event" : "Ово није ваш календар, тако да немате права да додате учеснике у овај догађај", + "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" : "Пошаљи е-пошту", + "Chairperson" : "Председавајући", + "Required participant" : "Обавезни учесник", + "Optional participant" : "Необавезни учесник", + "Non-participant" : "Особа која није учесник", + "Remove attendee" : "Уклони учесника", + "Search for emails, users or contacts" : "Претражи и-мејлове, кориснике или контакте", + "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" : "Цео дан", + "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}", + "Repeat" : "Понављај", + "End repeat" : "Заврши понављање", + "Select to end repeat" : "Изаберите да бисте завршили понављање", "never" : "никада", + "on date" : "дана", "after" : "након", - "Repeat" : "Понављај", - "Monday" : "Понедељак", - "Summary" : "Сумарно", + "_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." : "Измене правила понављања ће се применити само на ово и на сва будућа појављивања.", + "Repeat every" : "Понављај сваки", + "By day of the month" : "По дану у месецу", + "On the" : "На", + "_month_::_months_" : ["месец","месеца","месеци"], + "_year_::_years_" : ["година","године","година"], + "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" : "Предлози", + "No rooms or resources yet" : "Још увек нема соба или ресурса", + "Add resource" : "Додај ресурс", + "Has a projector" : "Поседује пројектор", + "Has a whiteboard" : "Поседује таблу", + "Wheelchair accessible" : "Приступ инвалидским колицима", + "Remove resource" : "Уклони ресурс", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} седиште","{seatingCapacity} седишта","{seatingCapacity} седишта"], + "Projector" : "Пројектор", + "Whiteboard" : "Табла", + "Search for resources or rooms" : "Претрага ресурса или соба", + "available" : "доступно", + "unavailable" : "није доступно", + "Room type" : "Тип собе", + "Any" : "Било који", + "Minimum seating capacity" : "Минимални број места за седење", "More" : "Остало", - "Save" : "Сачувај", - "Update" : "Ажурирај", - "Personal" : "Лично", + "Update this occurrence" : "Ажурирај ово појављивање", + "Update this and all future" : "Ажурирај ово и сва будућа", + "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" : "Куцајте да потражите временску зону", + "Global" : "Цео свет", + "Public holiday calendars" : "Календари државних празника", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Календаре државних празника обезбеђује Thunderbird. Подаци за календар ће да се преузму са {website}", + "By {authors}" : "Урадили {authors}", + "Subscribed" : "Претплаћен", + "Subscribe" : "Претплати се", + "Holidays in {region}" : "Празници у {region}", + "An error occurred, unable to create the public holiday calendar." : "Дошло је до грешке, календар државних празника не може да се креира.", + "Select date" : "Изаберите датум", + "Select slot" : "Изаберите термин", + "No slots available" : "Нема доступних термина", + "Could not fetch slots" : "Не могу да се добаве термини", + "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}", + "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Молимо вас да промените своју временску зону у подешавањима и пријавите проблем.", + "Create a new event" : "Креирај нови догађај", "[Today]" : "[Данас]", "[Tomorrow]" : "[Сутра]", "[Yesterday]" : "[Јуче]", + "[Last] dddd" : "[Последњи] dddd", + "Event does not exist" : "Догађај не постоји", + "Duplicate" : "Дупликат", + "Delete this occurrence" : "Обриши ово појављивање", + "Delete this and all future" : "Обриши ово и сва будућа", "Details" : "Детаљи", + "Managing shared access" : "Управљање дељеним приступом", + "Deny access" : "Одбиј приступ", + "Invite" : "Позив", "Attendees" : "Присутни", - "Reminders" : "Подсетници", + "Resources" : "Ресурси", + "_User requires access to your file_::_Users require access to your file_" : ["Корисник тражи приступ вашем фајлу","Корисника траже приступ вашем фајлу","Корисника тражи приступ вашем фајлу"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Прилог тражи дељени приступ","Прилога траже дељени приступ","Прилога тражи дељени приступ"], "Close" : "Затвори", - "Anniversary" : "Годишњица", + "Show more details" : "Прикажи више детаља", + "Subscribe to {name}" : "Претплати се на {name}", + "Export {name}" : "Извези {name}", + "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}", + "Does not repeat" : "Не понавља се", "Daily" : "дневно", "Weekly" : "недељно", + "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}" : "у {monthNames}", + "in {monthNames} on the {ordinalNumber} {byDaySet}" : "у {monthNames} на {ordinalNumber} {byDaySet}", + "until {untilDate}" : "до {untilDate}", + "_%n time_::_%n times_" : ["%n пут","%n пута","%n пута"], "Untitled event" : "Неименовани догађај", "Untitled task" : "Неименовани задатак", - "next year" : "следеће године", - "today" : "данас", + "Please ask your administrator to enable the Tasks App." : "Молимо вас да замолите свог администратора да укључи апликацију Задаци.", + "W" : "С", + "%n more" : "Још %n", + "No events to display" : "Нема више догађаја за приказ", + "_+%n more_::_+%n more_" : ["+%n још","+%n још","+%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" : "Соба за семинаре", + "Other" : "Остало", + "When shared show" : "Када се дели, прикажи", "When shared show full event" : "Прикажи цео догађај када је догађај дељен", "When shared show only busy" : "Прикажи само да сте заузети када је догађај дељен", "When shared hide this event" : "Сакриј догађај када је догађај дељен", - "Location" : "Локација", - "Description" : "Опис", + "The visibility of this event in shared calendars." : "Видљивост овог догађаја у дељеним календарима.", + "Add a location" : "Додај локацију", + "Add a description" : "Додај опис", "Status" : "Статус", "Confirmed" : "Потврђен", - "Tentative" : "Условна потврда", "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" : "Дошло је до грешке током преузимања информација о фајлу", + "Chat room for event" : "Чет соба за догађај", + "An error occurred, unable to delete the calendar." : "Догодила се грешка, не могу да обришем календар.", + "Imported {filename}" : "Увезен {filename}", + "This is an event reminder." : "Ово је подсетник за догађај.", + "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" : "поштом", - "Play" : "Пусти", + "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" : "Стоматолог", - "Global" : "Цео свет" + "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" : "Корисник није нађен" }, "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 d46dbcd14c..385e871ecc 100644 --- a/l10n/sr.json +++ b/l10n/sr.json @@ -1,84 +1,643 @@ { "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" : "Предстојећи догађаји", + "More events" : "Још догађаја", + "No more events today" : "Данас нема више догађаја", + "No upcoming 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" : "Потврди", + "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) је резервисао састанак са вама.", + "Anniversary" : "Годишњица", + "Appointment" : "Састанак", + "Business" : "Посао", + "Education" : "Образовање", + "Holiday" : "Одмор", + "Meeting" : "Састанак", + "Miscellaneous" : "Разно", + "Non-working hours" : "Нерадни сати", + "Not in office" : "Ван канцеларије", + "Personal" : "Лично", + "Phone call" : "Телефонски позив", + "Sick day" : "Боловање", + "Special occasion" : "Посебна прилика", + "Travel" : "Путовање", + "Vacation" : "Летовање", + "Custom Categories" : "Произвољне категорије", + "Collaborative Tags" : "Ознаке сарадње", + "Standard Categories" : "Стандардне категорије", "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." : "Апликација Календар је кориснички интерфејс за 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" : "Наредног месеца", + "Event" : "Догађај", + "Create new event" : "Креирај нови догађај", "Today" : "Данас", "Day" : "Дан", "Week" : "Недеља", "Month" : "Месец", + "Year" : "Година", "List" : "Излистај", - "Edit name" : "Измени име", - "Copy private link" : "Копирај приватну везу", - "Download" : "Преузми", + "Preview" : "Претпреглед", + "Copy link" : "Копирај везу", + "Edit" : "Измени", "Delete" : "Обриши", - "An error occurred, unable to delete the calendar." : "Догодила се грешка, не могу да обришем календар.", + "Appointment link was copied to clipboard" : "Линк састанка је копиран у клипборд", + "Appointment link could not be copied to clipboard" : "Линк састанка није могао да се копира у клипборд", + "Add new" : "Додај нови", + "Untitled calendar" : "Неименовани календар", + "Shared with you by" : "Са вама је поделио", + "Edit and share calendar" : "Уреди и подели календар", + "Edit calendar" : "Уреди календар", + "Disable calendar \"{calendar}\"" : "Искључи календар „{calendar}”", + "Disable untitled calendar" : "Искључи неименовани календар", + "Enable calendar \"{calendar}\"" : "Укључи календар „{calendar}”", + "Enable untitled calendar" : "Укључи неименовани календар", + "An error occurred, unable to change visibility of the 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} секунди"], + "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" : "Додај календар државних празника", + "An error occurred, unable to create the calendar." : "Дошло је до грешке, календар не може да се креира.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Молимо вас да унесете исправан линк (који полиње са http://, https://, webcal://, или webcals://)", + "Copy subscription link" : "Копирај линк за претплату", + "Copying link …" : "Линк се копира …", + "Copied link" : "Линк је копиран", + "Could not copy link" : "Линк није могао да се копира", + "Export" : "Извези", "Calendar link copied to clipboard." : "Веза календара копирана у оставу.", "Calendar link could not be copied to clipboard." : "Веза календара није могла да се копира у оставу.", + "Trash bin" : "Корпа за отпатке", + "Loading deleted items." : "Учитавање обрисаних ставки.", + "You do not have any deleted items." : "Немате ниједну обрисану ставку.", + "Name" : "Име", + "Deleted" : "Обрисано", + "Restore" : "Врати", + "Delete permanently" : "Обриши заувек", + "Empty trash bin" : "Испразни корпу за отпатке", + "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?" : "Да ли заиста желите да испразните корпу за отпатке?", + "_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." : "Није могао да се ажурира редослед календара.", + "Internal link" : "Интерна веза", + "A private link that can be used with external clients" : "Приватни линк који може да се користи са спољним клијентима", + "Copy internal 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" : "Обриши везу дељења", - "Share with users or groups" : "Дели са корисницима или групама", - "No users or groups" : "Нема корисника или група", + "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" : "Није успео прекид објављивања календара", "can edit" : "може да мења", "Unshare with {displayName}" : "Уклони дељење са {displayName}", - "New calendar" : "Нови календар", + "An error occurred while unsharing the calendar." : "Дошло је до грешке приликом уклањања дељења календара.", + "An error occurred, unable to change the permission of the share." : "Дошло је до грешке, не може да се измени дозвола дељења.", + "Share with users or groups" : "Дели са корисницима или групама", + "No users or groups" : "Нема корисника или група", + "Calendar name …" : "Назив календара ...", + "Share calendar" : "Дели календар", + "Unshare from me" : "Уклони дељење за мене", + "Save" : "Сачувај", + "Failed to save calendar name and color" : "Није успело чување назива календара и боје", + "Import calendars" : "Увоз календара", + "Please select a calendar to import into …" : "Молимо вас да изаберете календар у који се увози …", "Filename" : "Име фајла", + "Calendar to import into" : "Календар у који се увози", "Cancel" : "Одустани", + "_Import calendar_::_Import calendars_" : ["Увези календар","Увези календара","Увези календаре"], + "Default attachments location" : "Подразумевана локација прилога", + "Select the default location for attachments" : "Изаберите подразумевану локацију за прилоге", + "Invalid location selected" : "Изабрана је неисправна локација", + "Attachments folder successfully saved." : "Фолдер за прилоге је успешно сачуван.", + "Error on saving attachments folder." : "Грешка приликом чувања фолдера са додацима.", + "{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 догађаја је успешно увезено"], "Automatic" : "Аутоматски", + "Automatic ({detected})" : "Аутоматски ({detected})", + "New setting was not saved successfully." : "Ново подешавање није успешно сачувано.", + "Shortcut overview" : "Преглед пречица", "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" : "Дуплирај догађај", + "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" : "Подешавања личне доступности", "Show keyboard shortcuts" : "Прикажи пречице тастатуре", - "Settings & import" : "Поставке & увоз", + "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} минута","{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 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" : "Уторак", + "Wednesday" : "Среда", + "Thursday" : "Четвртак", + "Friday" : "Петак", + "Saturday" : "Субота", + "Sunday" : "Недеља", + "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" : "Уреди састанак", + "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" : "Подсетник", + "before at" : "раније у", "Notification" : "Обавештење", "Email" : "Е-пошта", + "Audio notification" : "Звучно обавештење", + "Other notification" : "Друго обавештење", + "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_" : ["седмица","седмице","седмица"], + "No attachments" : "Без прилога", + "Add from Files" : "Додај из Фајлова", + "Upload from device" : "Отпреми са уређаја", + "Delete file" : "Обриши фајл", + "Choose a file to add as attachment" : "Изаберите фајл за прилог", + "Choose a file to share as a link" : "Одаберите фајл који желите да поделите као везу", + "Attachment {name} already exist!" : "Прилог {name} веђ постоји!", + "_{count} attachment_::_{count} attachments_" : ["{count} прилог","{count} прилога","{count} прилога"], + "Invitation accepted" : "Позивница је прихваћена", + "Available" : "Доступно", + "Suggested" : "Предложени", + "Participation marked as tentative" : "Пристуство је обележено као несигурно", + "Accepted {organizerName}'s invitation" : "Позивница коју је послао {organizerName} је прихваћена", + "Not available" : "Није доступно", + "Invitation declined" : "Позивница је одбијена", + "Declined {organizerName}'s invitation" : "Позивница коју је послао {organizerName} је одбијена", + "Invitation is delegated" : "Позивница је прослеђена", + "Checking availability" : "Провера доступности", + "Invitation sent" : "Позивница је послата", + "Has not responded to {organizerName}'s invitation yet" : "Још увек није одговорено на позивницу коју је послао {organizerName}", + "Availability of attendees, resources and rooms" : "Доступност учесника, ресурса и соба", + "{organizer} (organizer)" : "{organizer} (организатор)", + "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" : "Прикажи времена заузетости", + "No attendees yet" : "Још увек нема учесника", + "You don't own this calendar, so you cannot add attendees to this event" : "Ово није ваш календар, тако да немате права да додате учеснике у овај догађај", + "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" : "Пошаљи е-пошту", + "Chairperson" : "Председавајући", + "Required participant" : "Обавезни учесник", + "Optional participant" : "Необавезни учесник", + "Non-participant" : "Особа која није учесник", + "Remove attendee" : "Уклони учесника", + "Search for emails, users or contacts" : "Претражи и-мејлове, кориснике или контакте", + "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" : "Цео дан", + "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}", + "Repeat" : "Понављај", + "End repeat" : "Заврши понављање", + "Select to end repeat" : "Изаберите да бисте завршили понављање", "never" : "никада", + "on date" : "дана", "after" : "након", - "Repeat" : "Понављај", - "Monday" : "Понедељак", - "Summary" : "Сумарно", + "_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." : "Измене правила понављања ће се применити само на ово и на сва будућа појављивања.", + "Repeat every" : "Понављај сваки", + "By day of the month" : "По дану у месецу", + "On the" : "На", + "_month_::_months_" : ["месец","месеца","месеци"], + "_year_::_years_" : ["година","године","година"], + "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" : "Предлози", + "No rooms or resources yet" : "Још увек нема соба или ресурса", + "Add resource" : "Додај ресурс", + "Has a projector" : "Поседује пројектор", + "Has a whiteboard" : "Поседује таблу", + "Wheelchair accessible" : "Приступ инвалидским колицима", + "Remove resource" : "Уклони ресурс", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} седиште","{seatingCapacity} седишта","{seatingCapacity} седишта"], + "Projector" : "Пројектор", + "Whiteboard" : "Табла", + "Search for resources or rooms" : "Претрага ресурса или соба", + "available" : "доступно", + "unavailable" : "није доступно", + "Room type" : "Тип собе", + "Any" : "Било који", + "Minimum seating capacity" : "Минимални број места за седење", "More" : "Остало", - "Save" : "Сачувај", - "Update" : "Ажурирај", - "Personal" : "Лично", + "Update this occurrence" : "Ажурирај ово појављивање", + "Update this and all future" : "Ажурирај ово и сва будућа", + "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" : "Куцајте да потражите временску зону", + "Global" : "Цео свет", + "Public holiday calendars" : "Календари државних празника", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Календаре државних празника обезбеђује Thunderbird. Подаци за календар ће да се преузму са {website}", + "By {authors}" : "Урадили {authors}", + "Subscribed" : "Претплаћен", + "Subscribe" : "Претплати се", + "Holidays in {region}" : "Празници у {region}", + "An error occurred, unable to create the public holiday calendar." : "Дошло је до грешке, календар државних празника не може да се креира.", + "Select date" : "Изаберите датум", + "Select slot" : "Изаберите термин", + "No slots available" : "Нема доступних термина", + "Could not fetch slots" : "Не могу да се добаве термини", + "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}", + "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Молимо вас да промените своју временску зону у подешавањима и пријавите проблем.", + "Create a new event" : "Креирај нови догађај", "[Today]" : "[Данас]", "[Tomorrow]" : "[Сутра]", "[Yesterday]" : "[Јуче]", + "[Last] dddd" : "[Последњи] dddd", + "Event does not exist" : "Догађај не постоји", + "Duplicate" : "Дупликат", + "Delete this occurrence" : "Обриши ово појављивање", + "Delete this and all future" : "Обриши ово и сва будућа", "Details" : "Детаљи", + "Managing shared access" : "Управљање дељеним приступом", + "Deny access" : "Одбиј приступ", + "Invite" : "Позив", "Attendees" : "Присутни", - "Reminders" : "Подсетници", + "Resources" : "Ресурси", + "_User requires access to your file_::_Users require access to your file_" : ["Корисник тражи приступ вашем фајлу","Корисника траже приступ вашем фајлу","Корисника тражи приступ вашем фајлу"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Прилог тражи дељени приступ","Прилога траже дељени приступ","Прилога тражи дељени приступ"], "Close" : "Затвори", - "Anniversary" : "Годишњица", + "Show more details" : "Прикажи више детаља", + "Subscribe to {name}" : "Претплати се на {name}", + "Export {name}" : "Извези {name}", + "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}", + "Does not repeat" : "Не понавља се", "Daily" : "дневно", "Weekly" : "недељно", + "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}" : "у {monthNames}", + "in {monthNames} on the {ordinalNumber} {byDaySet}" : "у {monthNames} на {ordinalNumber} {byDaySet}", + "until {untilDate}" : "до {untilDate}", + "_%n time_::_%n times_" : ["%n пут","%n пута","%n пута"], "Untitled event" : "Неименовани догађај", "Untitled task" : "Неименовани задатак", - "next year" : "следеће године", - "today" : "данас", + "Please ask your administrator to enable the Tasks App." : "Молимо вас да замолите свог администратора да укључи апликацију Задаци.", + "W" : "С", + "%n more" : "Још %n", + "No events to display" : "Нема више догађаја за приказ", + "_+%n more_::_+%n more_" : ["+%n још","+%n још","+%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" : "Соба за семинаре", + "Other" : "Остало", + "When shared show" : "Када се дели, прикажи", "When shared show full event" : "Прикажи цео догађај када је догађај дељен", "When shared show only busy" : "Прикажи само да сте заузети када је догађај дељен", "When shared hide this event" : "Сакриј догађај када је догађај дељен", - "Location" : "Локација", - "Description" : "Опис", + "The visibility of this event in shared calendars." : "Видљивост овог догађаја у дељеним календарима.", + "Add a location" : "Додај локацију", + "Add a description" : "Додај опис", "Status" : "Статус", "Confirmed" : "Потврђен", - "Tentative" : "Условна потврда", "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" : "Дошло је до грешке током преузимања информација о фајлу", + "Chat room for event" : "Чет соба за догађај", + "An error occurred, unable to delete the calendar." : "Догодила се грешка, не могу да обришем календар.", + "Imported {filename}" : "Увезен {filename}", + "This is an event reminder." : "Ово је подсетник за догађај.", + "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" : "поштом", - "Play" : "Пусти", + "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" : "Стоматолог", - "Global" : "Цео свет" + "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" : "Корисник није нађен" },"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 d8bab65735..6e71775222 100644 --- a/l10n/sr@latin.js +++ b/l10n/sr@latin.js @@ -3,24 +3,39 @@ OC.L10N.register( { "Cheers!" : "U zdravlje!", "Today" : "Today", - "Download" : "Preuzmi", + "Preview" : "Pregled", + "Copy link" : "Kopiraj vezu", + "Edit" : "Izmeni", "Delete" : "Delete", + "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", + "Description" : "Opis", + "Add" : "Dodaj", + "Monday" : "Ponedeljak", + "Tuesday" : "Utorak", + "Wednesday" : "Sreda", + "Thursday" : "Četvrtak", + "Friday" : "Petak", + "Saturday" : "Subota", + "Sunday" : "Nedelja", + "Update" : "Ažuriraj", "Email" : "email", "Unknown" : "Nepoznato", "never" : "never", - "Monday" : "Ponedeljak", "More" : "More", - "Save" : "Save", - "Update" : "Ažuriraj", "Details" : "Detalji", "Close" : "Zatvori", "Daily" : "дневно", "Weekly" : "недељно", - "Description" : "Opis", + "Other" : "Ostali", "Movie" : "Film", "Mail" : "Pošta" }, diff --git a/l10n/sr@latin.json b/l10n/sr@latin.json index 00478b6d16..6867522f7d 100644 --- a/l10n/sr@latin.json +++ b/l10n/sr@latin.json @@ -1,24 +1,39 @@ { "translations": { "Cheers!" : "U zdravlje!", "Today" : "Today", - "Download" : "Preuzmi", + "Preview" : "Pregled", + "Copy link" : "Kopiraj vezu", + "Edit" : "Izmeni", "Delete" : "Delete", + "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", + "Description" : "Opis", + "Add" : "Dodaj", + "Monday" : "Ponedeljak", + "Tuesday" : "Utorak", + "Wednesday" : "Sreda", + "Thursday" : "Četvrtak", + "Friday" : "Petak", + "Saturday" : "Subota", + "Sunday" : "Nedelja", + "Update" : "Ažuriraj", "Email" : "email", "Unknown" : "Nepoznato", "never" : "never", - "Monday" : "Ponedeljak", "More" : "More", - "Save" : "Save", - "Update" : "Ažuriraj", "Details" : "Detalji", "Close" : "Zatvori", "Daily" : "дневно", "Weekly" : "недељно", - "Description" : "Opis", + "Other" : "Ostali", "Movie" : "Film", "Mail" : "Pošta" },"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);" diff --git a/l10n/sv.js b/l10n/sv.js index ed9ebe4c49..d4ce53868c 100644 --- a/l10n/sv.js +++ b/l10n/sv.js @@ -1,95 +1,174 @@ 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.", - "Successfully sent email to " : "Skickade e-post till", + "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«", "Cheers!" : "Ha de fint!", "Upcoming events" : "Kommande händelser", + "More events" : "Fler händelser", + "No more events today" : "Inga fler händelser idag", + "No upcoming events" : "Inga kommande 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}\" på {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", + "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å detta e-mail 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:", + "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.", + "Anniversary" : "Jubileum", + "Appointment" : "Bokning", + "Business" : "Företag", + "Education" : "Utbildning", + "Holiday" : "Ledighet", + "Meeting" : "Möte", + "Miscellaneous" : "Diverse", + "Non-working hours" : "Icke-arbetstid", + "Not in office" : "Inte på kontoret", + "Personal" : "Privat", + "Phone call" : "Telefonsamtal", + "Sick day" : "Sjukdag", + "Special occasion" : "Speciellt tillfälle", + "Travel" : "Resa", + "Vacation" : "Semester", + "Custom Categories" : "Anpassade kategorier", + "Collaborative Tags" : "Samarbetstaggar", + "Standard Categories" : "Standardkategorier", "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", + "Event" : "Händelse", + "Create new event" : "Skapa ny händelse", "Today" : "Idag", "Day" : "Dag", "Week" : "Vecka", "Month" : "Månad", + "Year" : "År", "List" : "Lista", - "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", - "Download" : "Hämta", - "Unshare from me" : "Sluta dela från mig", + "Preview" : "Förhandsvisa", + "Copy link" : "Kopiera länk", + "Edit" : "Redigera", "Delete" : "Ta bort", + "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", + "Add new" : "Lägg till ny", + "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", + "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.", + "_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_" : ["Raderar kalendern om {countdown} sekund","Raderar kalendern om {countdown} sekunder"], + "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 prenumeration …", + "Add public holiday calendar" : "Lägg till helgdagskalender", + "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://)", + "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", "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.", - "_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"], + "Trash bin" : "Papperskorg", + "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 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 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?", + "_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.", + "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", "Share link" : "Dela länk", - "Publish calendar" : "Publicera kalender ", - "Publishing calendar" : "Publicerar kalender", - "Copy public link" : "Kopiera publik 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 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", + "Copy embedding code" : "Kopiera inbäddningskod", "Copying code …" : "Kopierar kod …", - "Copied code" : "Kopierad kod", + "Copied code" : "Kod kopierad", "Could not copy code" : "Kunde inte kopiera kod", - "Delete share link" : "Ta bort delad länk", - "Deleting share link …" : "Raderar delad länk …", + "Delete share link" : "Ta bort delningslänk", + "Deleting share link …" : "Raderar delningslä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.", + "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 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 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.", - "+ New calendar" : "+ Ny kalender", - "New calendar" : "Ny kalender", - "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://)", - "Could not update calendar order." : "Det gick inte att uppdatera kalenderordningen.", + "Share with users or groups" : "Dela med användare eller grupper", + "No users or groups" : "Inga användare eller grupper", + "Calendar name …" : "Kalendernamn ...", + "Share calendar" : "Dela kalender", + "Unshare from me" : "Sluta dela från mig", + "Save" : "Spara", + "Failed to save calendar name and color" : "Det gick inte att spara kalendernamn och färg", "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"], - "{filename} is an unsupported file-type" : "{filename} är en filtyp som inte stöds", + "Default attachments location" : "Standardplats för bilagor", + "Select the default location for attachments" : "Välj standardplats för bilagor", + "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", "{filename} could not be parsed" : "{filename} kunde inte läsas", "No valid files found, aborting import" : "Inga giltiga filer hittades, avbryter import", "Import partially failed. Imported {accepted} out of {total}." : "Importen misslyckades delvis. Importerade {accepted} av {total}.", - "_Successfully imported %n event_::_Successfully imported %n events._" : ["Lyckades importera %n händelse","Lyckades importera %n händelser."], + "_Successfully imported %n event_::_Successfully imported %n events_" : ["Lyckades importera %n händelse","Lyckades importera %n händelser"], "Automatic" : "Automatisk", "Automatic ({detected})" : "Automatisk ({detected})", "New setting was not saved successfully." : "Den nya inställningen kunde inte sparas.", @@ -102,21 +181,83 @@ 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 ändrat event", + "Delete edited event" : "Radera ändrat event", + "Duplicate event" : "Duplicera event", "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 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", - "Settings & import" : "Inställningar & import", + "Calendar settings" : "Kalenderinställningar", + "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 was created successfully" : "Möte skapades", + "Appointment was updated successfully" : "Mötet uppdaterades", + "_{duration} minute_::_{duration} minutes_" : ["{duration} minut","{duration} minuter"], + "0 minutes" : "0 minuter", + "_{duration} hour_::_{duration} hours_" : ["{duration} timme","{duration} timmar"], + "_{duration} day_::_{duration} days_" : ["{duration} dag","{duration} dagar"], + "_{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-mailadress 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 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", + "Wednesday" : "Onsdag", + "Thursday" : "Torsdag", + "Friday" : "Fredag", + "Saturday" : "Lördag", + "Sunday" : "Söndag", + "Add time before and after the event" : "Lägg till tid innan och efter eventet", + "Before the event" : "Innan eventet", + "After the event" : "Efter eventet", + "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", + "Create appointment" : "Skapa möte", + "Edit appointment" : "Redigera möte", + "Update" : "Uppdatera", + "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", + "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.", + "Book the appointment" : "Boka mötet", + "Reminder" : "Påminnelse", "before at" : "innan", "Notification" : "Notifiering", "Email" : "E-post", @@ -130,54 +271,81 @@ OC.L10N.register( "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"], - "No reminders yet" : "Inga påminnelser ännu", + "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", + "Choose a file to add as attachment" : "Välj en fil att lägga 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!", + "_{count} attachment_::_{count} attachments_" : ["{count} bilaga","{count} bilagor"], + "Invitation accepted" : "Inbjudan accepterad", + "Available" : "Tillgänglig", + "Suggested" : "Föreslagen", + "Participation marked as tentative" : "Deltagande markerat som preliminärt", + "Accepted {organizerName}'s invitation" : "Accepterade inbjudan från {organizerName}", + "Not available" : "Inte tillgänglig", + "Invitation declined" : "Inbjudan avböjd", + "Declined {organizerName}'s invitation" : "Avböjde inbjudan från {organizerName}", + "Invitation is delegated" : "Inbjudan är delegerad", + "Checking availability" : "Kontrollerar tillgänglighet", + "Invitation sent" : "Inbjudan skickad", + "Has not responded to {organizerName}'s invitation yet" : "Har ej svarat på inbjudan från {organizerName} än", "Availability of attendees, resources and rooms" : "Deltagares tillgänglighet, resurser och lokaler", + "{organizer} (organizer)" : "{organizer} (arrangör)", + "Free" : "Ledig", "Busy (tentative)" : "Upptagen (preliminär)", "Busy" : "Upptagen", "Out of office" : "Ej på plats", "Unknown" : "Okänd", - "{name} accepted your invitation." : "{name} accepterade din inbjudan.", - "{name} accepted {organizerName}'s invitation." : "{name} accepterade {organizerName}'s inbjudan.", - "{name} declined your invitation." : "{name} avböjde din inbjudan.", - "{name} declined {organizerName}'s invitation." : "{name} avböjde {organizerName}'s inbjudan.", - "{name} has delegated their invitation." : "{name} har delegerat sin inbjudan.", - "{name} marked their participation as tentative." : "{name} markerade sitt deltagande som preliminärt.", - "{name} did not respond to your invitation yet." : "{name} har inte svarat på din inbjudan ännu.", - "{name} did not respond to {organizerName}'s invitation yet." : "{name} har inte svarat på {organizerName}'s inbjudan än.", + "Accept" : "Acceptera", + "Decline" : "Avböj", + "Tentative" : "Preliminärt", + "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.", "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", + "You don't own this calendar, so you cannot add attendees to this event" : "Du äger inte den här kalendern, så du kan inte lägga till deltagare till denna händelse", + "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 e-mail" : "Skicka e-post", + "Send email" : "Skicka e-post", "Chairperson" : "Ordförande", "Required participant" : "Obligatorisk deltagare", "Optional participant" : "Valfri deltagare", "Non-participant" : "Icke-deltagare", "Remove attendee" : "Ta bort deltagaren", - "Search for e-mails, users, contacts, resources or rooms" : "Sök efter e-post, användare, kontakter, resurser eller rum", + "Search for emails, users or contacts" : "Sök efter e-postadresser, användare eller kontakter", "No match found" : "Ingen träff", - "No attendees yet" : "Inga deltagare ännu", "(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].", "Remove color" : "Ta bort färg", "Event title" : "Händelsens titel", "All day" : "Heldag", - "Can not 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.", + "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}", + "Repeat" : "Upprepa", "End repeat" : "Sluta upprepa", "Select to end repeat" : "Välj för att avsluta upprepning", "never" : "aldrig", "on date" : "på datum", "after" : "efter", "_time_::_times_" : ["gång","gånger"], - "This event is the recurrence-exception of a recurrence-set. You can not 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.\n ", + "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", @@ -185,25 +353,37 @@ OC.L10N.register( "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" : "Upprepa", "Repeat every" : "Upprepa varje", "By day of the month" : "Efter dag i månaden", "On the" : "På den", "_month_::_months_" : ["månad","månader"], "_year_::_years_" : ["år","år"], - "Monday" : "Måndag", "weekday" : "veckodag", "weekend day" : "helgdag", - "Summary" : "Sammanfattning", + "No recurrence" : "Ingen upprepning", "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", + "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", + "Room type" : "Rumtyp", + "Any" : "Alla", + "Minimum seating capacity" : "Minsta antal platser", "More" : "Mer", - "Save" : "Spara", - "Update" : "Uppdatera", "Update this occurrence" : "Uppdatera denna förekomst", "Update this and all future" : "Uppdatera denna och alla kommande", "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 timezone:" : "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", "from {formattedDate}" : "från {formattedDate}", @@ -215,44 +395,67 @@ 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", - "Type to search timezone" : "Skriv för att söka tidszon", - "Personal" : "Privat", - "The automatic timezone detection determined your timezone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your timezone 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.\nStäll in din tidszon manuellt i kalenderinställningarna.", - "Your configured timezone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your timezone in the settings and report this issue." : "Din tidszon ({timezoneId}) hittades inte. Återgår till UTC.\nÄ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", + "Type to search time zone" : "Skriv för att söka tidszon", + "Global" : "Global", + "Public holiday calendars" : "Helgdagskalendrar", + "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}", + "By {authors}" : "Av {authors}", + "Subscribed" : "Prenumeration aktiverad", + "Subscribe" : "Prenumerera", + "Holidays in {region}" : "Helgdagar i {region}", + "An error occurred, unable to create the public holiday calendar." : "Ett fel uppstod, det gick inte att skapa helgdagskalendern.", + "Select date" : "Välj 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}", + "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.", "Create a new event" : "Skapa en ny händelse", "[Today]" : "[Idag]", "[Tomorrow]" : "[Imorgon]", "[Yesterday]" : "[Igår]", + "[Last] dddd" : "[Sista] dddd", "Event does not exist" : "Händelsen existerar inte", + "Duplicate" : "Dubblett", "Delete this occurrence" : "Ta bort denna förekomst", "Delete this and all future" : "Ta bort denna och alla kommande", "Details" : "Detaljer", + "Managing shared access" : "Hantering av delad åtkomst", + "Deny access" : "Neka åtkomst", + "Invite" : "Bjud in", "Attendees" : "Deltagare", - "Reminders" : "Påminnelser", + "Resources" : "Resurser", + "_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"], "Close" : "Stäng", "Show more details" : "Visa mer information", "Subscribe to {name}" : "Prenumerera på {name}", - "Download {name}" : "Hämta {name}", - "Anniversary" : "Födelsedag", - "Appointment" : "Bokning", - "Business" : "Företag", - "Education" : "Utbildning", - "Holiday" : "Ledighet", - "Meeting" : "Möte", - "Miscellaneous" : "Diverse", - "Non-working hours" : "Icke-arbetstid", - "Not in office" : "Inte på kontoret", - "Phone call" : "Telefonsamtal", - "Sick day" : "Sjukdag", - "Special occasion" : "Speciellt tillfälle", - "Travel" : "Resa", - "Vacation" : "Semester", + "Export {name}" : "Exportera {name}", "Midnight on the day the event starts" : "Midnatt den dagen evenemanget börjar", + "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n dagar före händelsen klockan {formattedHourMinute}","%n dag före händelsen klockan {formattedHourMinute}"], + "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n veckor före händelsen klockan {formattedHourMinute}","%n vecka före händelsen klockan {formattedHourMinute}"], + "on the day of the event at {formattedHourMinute}" : "på samma dag som händelsen klockan {formattedHourMinute}", + "at the event's start" : "när händelsen börjar", + "at the event's end" : "när händelsen slutar", + "{time} before the event starts" : "{time} före händelsens början", + "{time} before the event ends" : "{time} före händelsens slut", + "{time} after the event starts" : "{time} efter händelsens början", + "{time} after the event ends" : "{time} efter händelsens slut", + "on {time}" : "klockan {time}", + "on {time} ({timezoneId})" : "klockan {time} ({timezoneId})", "Week {number} of {year}" : "Vecka {number} år {year}", "Does not repeat" : "Upprepar inte", - "Daily" : "Dagligen", + "Daily" : "Varje dag", "Weekly" : "Varje vecka", "Monthly" : "Varje månad", "Yearly" : "Årligen", @@ -265,58 +468,177 @@ OC.L10N.register( "on the {ordinalNumber} {byDaySet}" : "på den {ordinalNumber} {byDaySet}", "in {monthNames}" : "i {monthNames}", "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", - "next year" : "nästa år", - "today" : "idag", + "Untitled task" : "Namnlös uppgift", + "Please ask your administrator to enable the Tasks App." : "Be din administratör aktivera Tasks-appen.", + "W" : "v", + "%n more" : " %n till", + "No events to display" : "Inga händelser att visa", + "_+%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", + "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", + "Lecture hall" : "Föreläsningssal", + "Seminar room" : "Seminarierum", + "Other" : "Annat", "When shared show" : "Visa om delad", "When shared show full event" : "Om delad, visa hela händelsen", "When shared show only busy" : "Om delad, visa endast upptagen", "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.", - "Location" : "Plats", "Add a location" : "Lägg till en plats", - "Description" : "Beskrivning", "Add a description" : "Lägg till en beskrivning", "Status" : "Status", "Confirmed" : "Bekräftad", - "Tentative" : "Preliminärt", "Canceled" : "Avbruten", "Confirmation about the overall status of the event." : "Bekräftelse av händelsens övergripande status.", "Show as" : "Visa som", - "Free" : "Ledig", + "Take this event into account when calculating free-busy information." : "Ta hänsyn till denna händelse när ledig/upptagen tid beräknas.", "Categories" : "Kategorier", "Categories help you to structure and organize your events." : "Kategorier hjälper dig strukturera och organisera dina händelser.", "Search or add categories" : "Sök eller lägg till kategorier", "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.", + "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", + "Attachment {fileName} already exists!" : "Bilagan {fileName} finns redan!", + "An error occurred during getting file information" : "Ett fel uppstod vid hämtning av filinformation", + "Chat room for event" : "Mötesrum för event", + "An error occurred, unable to delete the calendar." : "Ett fel inträffade, kunde inte radera kalendern.", "Imported {filename}" : "Importerad {filename}", + "This is an event reminder." : "Detta är en händelsepåminnelse.", "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", - "Office" : "Kontor", - "Party" : "Fest", - "Celebration" : "Firande", + "Audit" : "Granskning", + "Inspection" : "Inspektion", + "Proofreading" : "Korrektur", + "Baseball" : "Baseball", + "Meet" : "Möte", + "Planning" : "Planering", + "Pointing" : "Peka", + "Retrospective" : "Återkoppling", + "Office" : "Office", + "Contributor week" : "Bidragarvecka", "Mail" : "E-post", - "Play" : "Spela", + "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", - "Global" : "Global" + "Dinner" : "Middag", + "Lunch" : "Lunch", + "Appointment not found" : "Mötet hittades inte", + "User not found" : "Användaren hittades inte" }, "nplurals=2; plural=(n != 1);"); diff --git a/l10n/sv.json b/l10n/sv.json index 3b31c77624..54961dfd3e 100644 --- a/l10n/sv.json +++ b/l10n/sv.json @@ -1,93 +1,172 @@ { "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.", - "Successfully sent email to " : "Skickade e-post till", + "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«", "Cheers!" : "Ha de fint!", "Upcoming events" : "Kommande händelser", + "More events" : "Fler händelser", + "No more events today" : "Inga fler händelser idag", + "No upcoming events" : "Inga kommande 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}\" på {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", + "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å detta e-mail 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:", + "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.", + "Anniversary" : "Jubileum", + "Appointment" : "Bokning", + "Business" : "Företag", + "Education" : "Utbildning", + "Holiday" : "Ledighet", + "Meeting" : "Möte", + "Miscellaneous" : "Diverse", + "Non-working hours" : "Icke-arbetstid", + "Not in office" : "Inte på kontoret", + "Personal" : "Privat", + "Phone call" : "Telefonsamtal", + "Sick day" : "Sjukdag", + "Special occasion" : "Speciellt tillfälle", + "Travel" : "Resa", + "Vacation" : "Semester", + "Custom Categories" : "Anpassade kategorier", + "Collaborative Tags" : "Samarbetstaggar", + "Standard Categories" : "Standardkategorier", "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", + "Event" : "Händelse", + "Create new event" : "Skapa ny händelse", "Today" : "Idag", "Day" : "Dag", "Week" : "Vecka", "Month" : "Månad", + "Year" : "År", "List" : "Lista", - "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", - "Download" : "Hämta", - "Unshare from me" : "Sluta dela från mig", + "Preview" : "Förhandsvisa", + "Copy link" : "Kopiera länk", + "Edit" : "Redigera", "Delete" : "Ta bort", + "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", + "Add new" : "Lägg till ny", + "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", + "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.", + "_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_" : ["Raderar kalendern om {countdown} sekund","Raderar kalendern om {countdown} sekunder"], + "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 prenumeration …", + "Add public holiday calendar" : "Lägg till helgdagskalender", + "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://)", + "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", "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.", - "_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"], + "Trash bin" : "Papperskorg", + "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 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 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?", + "_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.", + "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", "Share link" : "Dela länk", - "Publish calendar" : "Publicera kalender ", - "Publishing calendar" : "Publicerar kalender", - "Copy public link" : "Kopiera publik 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 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", + "Copy embedding code" : "Kopiera inbäddningskod", "Copying code …" : "Kopierar kod …", - "Copied code" : "Kopierad kod", + "Copied code" : "Kod kopierad", "Could not copy code" : "Kunde inte kopiera kod", - "Delete share link" : "Ta bort delad länk", - "Deleting share link …" : "Raderar delad länk …", + "Delete share link" : "Ta bort delningslänk", + "Deleting share link …" : "Raderar delningslä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.", + "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 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 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.", - "+ New calendar" : "+ Ny kalender", - "New calendar" : "Ny kalender", - "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://)", - "Could not update calendar order." : "Det gick inte att uppdatera kalenderordningen.", + "Share with users or groups" : "Dela med användare eller grupper", + "No users or groups" : "Inga användare eller grupper", + "Calendar name …" : "Kalendernamn ...", + "Share calendar" : "Dela kalender", + "Unshare from me" : "Sluta dela från mig", + "Save" : "Spara", + "Failed to save calendar name and color" : "Det gick inte att spara kalendernamn och färg", "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"], - "{filename} is an unsupported file-type" : "{filename} är en filtyp som inte stöds", + "Default attachments location" : "Standardplats för bilagor", + "Select the default location for attachments" : "Välj standardplats för bilagor", + "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", "{filename} could not be parsed" : "{filename} kunde inte läsas", "No valid files found, aborting import" : "Inga giltiga filer hittades, avbryter import", "Import partially failed. Imported {accepted} out of {total}." : "Importen misslyckades delvis. Importerade {accepted} av {total}.", - "_Successfully imported %n event_::_Successfully imported %n events._" : ["Lyckades importera %n händelse","Lyckades importera %n händelser."], + "_Successfully imported %n event_::_Successfully imported %n events_" : ["Lyckades importera %n händelse","Lyckades importera %n händelser"], "Automatic" : "Automatisk", "Automatic ({detected})" : "Automatisk ({detected})", "New setting was not saved successfully." : "Den nya inställningen kunde inte sparas.", @@ -100,21 +179,83 @@ "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 ändrat event", + "Delete edited event" : "Radera ändrat event", + "Duplicate event" : "Duplicera event", "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 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", - "Settings & import" : "Inställningar & import", + "Calendar settings" : "Kalenderinställningar", + "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 was created successfully" : "Möte skapades", + "Appointment was updated successfully" : "Mötet uppdaterades", + "_{duration} minute_::_{duration} minutes_" : ["{duration} minut","{duration} minuter"], + "0 minutes" : "0 minuter", + "_{duration} hour_::_{duration} hours_" : ["{duration} timme","{duration} timmar"], + "_{duration} day_::_{duration} days_" : ["{duration} dag","{duration} dagar"], + "_{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-mailadress 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 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", + "Wednesday" : "Onsdag", + "Thursday" : "Torsdag", + "Friday" : "Fredag", + "Saturday" : "Lördag", + "Sunday" : "Söndag", + "Add time before and after the event" : "Lägg till tid innan och efter eventet", + "Before the event" : "Innan eventet", + "After the event" : "Efter eventet", + "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", + "Create appointment" : "Skapa möte", + "Edit appointment" : "Redigera möte", + "Update" : "Uppdatera", + "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", + "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.", + "Book the appointment" : "Boka mötet", + "Reminder" : "Påminnelse", "before at" : "innan", "Notification" : "Notifiering", "Email" : "E-post", @@ -128,54 +269,81 @@ "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"], - "No reminders yet" : "Inga påminnelser ännu", + "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", + "Choose a file to add as attachment" : "Välj en fil att lägga 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!", + "_{count} attachment_::_{count} attachments_" : ["{count} bilaga","{count} bilagor"], + "Invitation accepted" : "Inbjudan accepterad", + "Available" : "Tillgänglig", + "Suggested" : "Föreslagen", + "Participation marked as tentative" : "Deltagande markerat som preliminärt", + "Accepted {organizerName}'s invitation" : "Accepterade inbjudan från {organizerName}", + "Not available" : "Inte tillgänglig", + "Invitation declined" : "Inbjudan avböjd", + "Declined {organizerName}'s invitation" : "Avböjde inbjudan från {organizerName}", + "Invitation is delegated" : "Inbjudan är delegerad", + "Checking availability" : "Kontrollerar tillgänglighet", + "Invitation sent" : "Inbjudan skickad", + "Has not responded to {organizerName}'s invitation yet" : "Har ej svarat på inbjudan från {organizerName} än", "Availability of attendees, resources and rooms" : "Deltagares tillgänglighet, resurser och lokaler", + "{organizer} (organizer)" : "{organizer} (arrangör)", + "Free" : "Ledig", "Busy (tentative)" : "Upptagen (preliminär)", "Busy" : "Upptagen", "Out of office" : "Ej på plats", "Unknown" : "Okänd", - "{name} accepted your invitation." : "{name} accepterade din inbjudan.", - "{name} accepted {organizerName}'s invitation." : "{name} accepterade {organizerName}'s inbjudan.", - "{name} declined your invitation." : "{name} avböjde din inbjudan.", - "{name} declined {organizerName}'s invitation." : "{name} avböjde {organizerName}'s inbjudan.", - "{name} has delegated their invitation." : "{name} har delegerat sin inbjudan.", - "{name} marked their participation as tentative." : "{name} markerade sitt deltagande som preliminärt.", - "{name} did not respond to your invitation yet." : "{name} har inte svarat på din inbjudan ännu.", - "{name} did not respond to {organizerName}'s invitation yet." : "{name} har inte svarat på {organizerName}'s inbjudan än.", + "Accept" : "Acceptera", + "Decline" : "Avböj", + "Tentative" : "Preliminärt", + "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.", "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", + "You don't own this calendar, so you cannot add attendees to this event" : "Du äger inte den här kalendern, så du kan inte lägga till deltagare till denna händelse", + "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 e-mail" : "Skicka e-post", + "Send email" : "Skicka e-post", "Chairperson" : "Ordförande", "Required participant" : "Obligatorisk deltagare", "Optional participant" : "Valfri deltagare", "Non-participant" : "Icke-deltagare", "Remove attendee" : "Ta bort deltagaren", - "Search for e-mails, users, contacts, resources or rooms" : "Sök efter e-post, användare, kontakter, resurser eller rum", + "Search for emails, users or contacts" : "Sök efter e-postadresser, användare eller kontakter", "No match found" : "Ingen träff", - "No attendees yet" : "Inga deltagare ännu", "(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].", "Remove color" : "Ta bort färg", "Event title" : "Händelsens titel", "All day" : "Heldag", - "Can not 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.", + "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}", + "Repeat" : "Upprepa", "End repeat" : "Sluta upprepa", "Select to end repeat" : "Välj för att avsluta upprepning", "never" : "aldrig", "on date" : "på datum", "after" : "efter", "_time_::_times_" : ["gång","gånger"], - "This event is the recurrence-exception of a recurrence-set. You can not 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.\n ", + "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", @@ -183,25 +351,37 @@ "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" : "Upprepa", "Repeat every" : "Upprepa varje", "By day of the month" : "Efter dag i månaden", "On the" : "På den", "_month_::_months_" : ["månad","månader"], "_year_::_years_" : ["år","år"], - "Monday" : "Måndag", "weekday" : "veckodag", "weekend day" : "helgdag", - "Summary" : "Sammanfattning", + "No recurrence" : "Ingen upprepning", "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", + "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", + "Room type" : "Rumtyp", + "Any" : "Alla", + "Minimum seating capacity" : "Minsta antal platser", "More" : "Mer", - "Save" : "Spara", - "Update" : "Uppdatera", "Update this occurrence" : "Uppdatera denna förekomst", "Update this and all future" : "Uppdatera denna och alla kommande", "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 timezone:" : "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", "from {formattedDate}" : "från {formattedDate}", @@ -213,44 +393,67 @@ "{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", - "Type to search timezone" : "Skriv för att söka tidszon", - "Personal" : "Privat", - "The automatic timezone detection determined your timezone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your timezone 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.\nStäll in din tidszon manuellt i kalenderinställningarna.", - "Your configured timezone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your timezone in the settings and report this issue." : "Din tidszon ({timezoneId}) hittades inte. Återgår till UTC.\nÄ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", + "Type to search time zone" : "Skriv för att söka tidszon", + "Global" : "Global", + "Public holiday calendars" : "Helgdagskalendrar", + "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}", + "By {authors}" : "Av {authors}", + "Subscribed" : "Prenumeration aktiverad", + "Subscribe" : "Prenumerera", + "Holidays in {region}" : "Helgdagar i {region}", + "An error occurred, unable to create the public holiday calendar." : "Ett fel uppstod, det gick inte att skapa helgdagskalendern.", + "Select date" : "Välj 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}", + "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.", "Create a new event" : "Skapa en ny händelse", "[Today]" : "[Idag]", "[Tomorrow]" : "[Imorgon]", "[Yesterday]" : "[Igår]", + "[Last] dddd" : "[Sista] dddd", "Event does not exist" : "Händelsen existerar inte", + "Duplicate" : "Dubblett", "Delete this occurrence" : "Ta bort denna förekomst", "Delete this and all future" : "Ta bort denna och alla kommande", "Details" : "Detaljer", + "Managing shared access" : "Hantering av delad åtkomst", + "Deny access" : "Neka åtkomst", + "Invite" : "Bjud in", "Attendees" : "Deltagare", - "Reminders" : "Påminnelser", + "Resources" : "Resurser", + "_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"], "Close" : "Stäng", "Show more details" : "Visa mer information", "Subscribe to {name}" : "Prenumerera på {name}", - "Download {name}" : "Hämta {name}", - "Anniversary" : "Födelsedag", - "Appointment" : "Bokning", - "Business" : "Företag", - "Education" : "Utbildning", - "Holiday" : "Ledighet", - "Meeting" : "Möte", - "Miscellaneous" : "Diverse", - "Non-working hours" : "Icke-arbetstid", - "Not in office" : "Inte på kontoret", - "Phone call" : "Telefonsamtal", - "Sick day" : "Sjukdag", - "Special occasion" : "Speciellt tillfälle", - "Travel" : "Resa", - "Vacation" : "Semester", + "Export {name}" : "Exportera {name}", "Midnight on the day the event starts" : "Midnatt den dagen evenemanget börjar", + "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n dagar före händelsen klockan {formattedHourMinute}","%n dag före händelsen klockan {formattedHourMinute}"], + "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n veckor före händelsen klockan {formattedHourMinute}","%n vecka före händelsen klockan {formattedHourMinute}"], + "on the day of the event at {formattedHourMinute}" : "på samma dag som händelsen klockan {formattedHourMinute}", + "at the event's start" : "när händelsen börjar", + "at the event's end" : "när händelsen slutar", + "{time} before the event starts" : "{time} före händelsens början", + "{time} before the event ends" : "{time} före händelsens slut", + "{time} after the event starts" : "{time} efter händelsens början", + "{time} after the event ends" : "{time} efter händelsens slut", + "on {time}" : "klockan {time}", + "on {time} ({timezoneId})" : "klockan {time} ({timezoneId})", "Week {number} of {year}" : "Vecka {number} år {year}", "Does not repeat" : "Upprepar inte", - "Daily" : "Dagligen", + "Daily" : "Varje dag", "Weekly" : "Varje vecka", "Monthly" : "Varje månad", "Yearly" : "Årligen", @@ -263,58 +466,177 @@ "on the {ordinalNumber} {byDaySet}" : "på den {ordinalNumber} {byDaySet}", "in {monthNames}" : "i {monthNames}", "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", - "next year" : "nästa år", - "today" : "idag", + "Untitled task" : "Namnlös uppgift", + "Please ask your administrator to enable the Tasks App." : "Be din administratör aktivera Tasks-appen.", + "W" : "v", + "%n more" : " %n till", + "No events to display" : "Inga händelser att visa", + "_+%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", + "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", + "Lecture hall" : "Föreläsningssal", + "Seminar room" : "Seminarierum", + "Other" : "Annat", "When shared show" : "Visa om delad", "When shared show full event" : "Om delad, visa hela händelsen", "When shared show only busy" : "Om delad, visa endast upptagen", "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.", - "Location" : "Plats", "Add a location" : "Lägg till en plats", - "Description" : "Beskrivning", "Add a description" : "Lägg till en beskrivning", "Status" : "Status", "Confirmed" : "Bekräftad", - "Tentative" : "Preliminärt", "Canceled" : "Avbruten", "Confirmation about the overall status of the event." : "Bekräftelse av händelsens övergripande status.", "Show as" : "Visa som", - "Free" : "Ledig", + "Take this event into account when calculating free-busy information." : "Ta hänsyn till denna händelse när ledig/upptagen tid beräknas.", "Categories" : "Kategorier", "Categories help you to structure and organize your events." : "Kategorier hjälper dig strukturera och organisera dina händelser.", "Search or add categories" : "Sök eller lägg till kategorier", "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.", + "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", + "Attachment {fileName} already exists!" : "Bilagan {fileName} finns redan!", + "An error occurred during getting file information" : "Ett fel uppstod vid hämtning av filinformation", + "Chat room for event" : "Mötesrum för event", + "An error occurred, unable to delete the calendar." : "Ett fel inträffade, kunde inte radera kalendern.", "Imported {filename}" : "Importerad {filename}", + "This is an event reminder." : "Detta är en händelsepåminnelse.", "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", - "Office" : "Kontor", - "Party" : "Fest", - "Celebration" : "Firande", + "Audit" : "Granskning", + "Inspection" : "Inspektion", + "Proofreading" : "Korrektur", + "Baseball" : "Baseball", + "Meet" : "Möte", + "Planning" : "Planering", + "Pointing" : "Peka", + "Retrospective" : "Återkoppling", + "Office" : "Office", + "Contributor week" : "Bidragarvecka", "Mail" : "E-post", - "Play" : "Spela", + "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", - "Global" : "Global" + "Dinner" : "Middag", + "Lunch" : "Lunch", + "Appointment not found" : "Mötet hittades inte", + "User not found" : "Användaren hittades inte" },"pluralForm" :"nplurals=2; plural=(n != 1);" } \ No newline at end of file diff --git a/l10n/ta_LK.js b/l10n/ta.js similarity index 58% rename from l10n/ta_LK.js rename to l10n/ta.js index 7f0a088688..45497dbac5 100644 --- a/l10n/ta_LK.js +++ b/l10n/ta.js @@ -2,31 +2,44 @@ OC.L10N.register( "calendar", { "Calendar" : "நாட்காட்டி", + "Personal" : "தனிப்பட்ட", "Today" : "இன்று", "Week" : "வாரம்", "Month" : "மாதம்", - "Download" : "பதிவிறக்குக", + "List" : "List", + "Edit" : "தொகுக்க", "Delete" : "நீக்குக", + "New calendar" : "புதிய நாட்காட்டி", + "Export" : "ஏற்றுமதி", + "Name" : "பெயர்", + "Restore" : "மீட்டெடு", + "Delete permanently" : "நிரந்தரமாக நீக்கவும்", "Share link" : "Share link", "can edit" : "தொகுக்க முடியும்", - "New calendar" : "புதிய நாட்காட்டி", + "Save" : "சேமிக்க ", "Cancel" : "இரத்து செய்க", "Actions" : "செயல்கள்", + "Location" : "இடம்", + "Description" : "விவரிப்பு", + "Add" : "சேர்க்க", + "Monday" : "திங்கட்கிழமை", + "Tuesday" : "செவ்வாய்க்கிழமை", + "Wednesday" : "புதன்கிழமை", + "Thursday" : "வியாழக்கிழமை", + "Friday" : "வெள்ளிக்கிழமை", + "Saturday" : "சனிக்கிழமை", + "Sunday" : "ஞாயிற்றுக்கிழமை", + "Update" : "இற்றைப்படுத்தல்", + "Your email address" : "உங்களுடைய மின்னஞ்சல் முகவரி", "Email" : "மின்னஞ்சல்", "Unknown" : "தெரியாத", - "never" : "ஒருபோதும்", "Repeat" : "மீண்டும்", - "Monday" : "திங்கட்கிழமை", + "never" : "ஒருபோதும்", "More" : "மேலதிக", - "Save" : "சேமிக்க ", - "Update" : "இற்றைப்படுத்தல்", - "Personal" : "தனிப்பட்ட", "Details" : "விவரங்கள்", "Attendees" : "பங்கேற்பாளர்கள்", "Close" : "மூடுக", - "today" : "இன்று", - "Location" : "இடம்", - "Description" : "விவரிப்பு", - "Play" : "Play" + "Other" : "மற்றவை", + "Birthday" : "பிறந்த நாள்" }, "nplurals=2; plural=(n != 1);"); diff --git a/l10n/ta_LK.json b/l10n/ta.json similarity index 58% rename from l10n/ta_LK.json rename to l10n/ta.json index bb7a02d263..6e877eb479 100644 --- a/l10n/ta_LK.json +++ b/l10n/ta.json @@ -1,30 +1,43 @@ { "translations": { "Calendar" : "நாட்காட்டி", + "Personal" : "தனிப்பட்ட", "Today" : "இன்று", "Week" : "வாரம்", "Month" : "மாதம்", - "Download" : "பதிவிறக்குக", + "List" : "List", + "Edit" : "தொகுக்க", "Delete" : "நீக்குக", + "New calendar" : "புதிய நாட்காட்டி", + "Export" : "ஏற்றுமதி", + "Name" : "பெயர்", + "Restore" : "மீட்டெடு", + "Delete permanently" : "நிரந்தரமாக நீக்கவும்", "Share link" : "Share link", "can edit" : "தொகுக்க முடியும்", - "New calendar" : "புதிய நாட்காட்டி", + "Save" : "சேமிக்க ", "Cancel" : "இரத்து செய்க", "Actions" : "செயல்கள்", + "Location" : "இடம்", + "Description" : "விவரிப்பு", + "Add" : "சேர்க்க", + "Monday" : "திங்கட்கிழமை", + "Tuesday" : "செவ்வாய்க்கிழமை", + "Wednesday" : "புதன்கிழமை", + "Thursday" : "வியாழக்கிழமை", + "Friday" : "வெள்ளிக்கிழமை", + "Saturday" : "சனிக்கிழமை", + "Sunday" : "ஞாயிற்றுக்கிழமை", + "Update" : "இற்றைப்படுத்தல்", + "Your email address" : "உங்களுடைய மின்னஞ்சல் முகவரி", "Email" : "மின்னஞ்சல்", "Unknown" : "தெரியாத", - "never" : "ஒருபோதும்", "Repeat" : "மீண்டும்", - "Monday" : "திங்கட்கிழமை", + "never" : "ஒருபோதும்", "More" : "மேலதிக", - "Save" : "சேமிக்க ", - "Update" : "இற்றைப்படுத்தல்", - "Personal" : "தனிப்பட்ட", "Details" : "விவரங்கள்", "Attendees" : "பங்கேற்பாளர்கள்", "Close" : "மூடுக", - "today" : "இன்று", - "Location" : "இடம்", - "Description" : "விவரிப்பு", - "Play" : "Play" + "Other" : "மற்றவை", + "Birthday" : "பிறந்த நாள்" },"pluralForm" :"nplurals=2; plural=(n != 1);" } \ No newline at end of file diff --git a/l10n/th.js b/l10n/th.js index 48309ea01a..e311763ae7 100644 --- a/l10n/th.js +++ b/l10n/th.js @@ -1,51 +1,86 @@ 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." : "เกิดข้อผิดพลาดไม่คาดคิดขณะส่งอีเมล โปรดติดต่อผู้ดูแลระบบของคุณ", + "Successfully sent email to %1$s" : "ส่งอีเมลถึง %1$s สำเร็จ", + "Hello," : "สวัสดี", + "Open »%s«" : "เปิด »%s«", "Cheers!" : "ไชโย!", "Calendar" : "ปฏิทิน", + "Confirm" : "ยืนยัน", + "Anniversary" : "วันครบรอบ", + "Personal" : "ส่วนตัว", "Today" : "วันนี้", "Day" : "วัน", "Week" : "สัปดาห์", "Month" : "เดือน", - "Download" : "ดาวน์โหลด", + "Preview" : "ตัวอย่าง", + "Copy link" : "คัดลอกลิงก์", + "Edit" : "แก้ไข", "Delete" : "ลบ", - "Share link" : "แชร์ลิงค์", - "Share with users or groups" : "แชร์กับผู้ใช้หรือกลุ่ม", - "can edit" : "สามารถแก้ไข", "New calendar" : "สร้างปฏิทินใหม่", + "Export" : "ส่งออก", + "Name" : "ชื่อ", + "Deleted" : "ลบแล้ว", + "Restore" : "คืนค่า", + "Delete permanently" : "ลบแบบถาวร", + "Empty trash bin" : "ล้างข้อมูลในถังขยะ", + "Share link" : "แชร์ลิงก์", + "can edit" : "สามารถแก้ไข", + "Share with users or groups" : "แชร์กับผู้ใช้หรือกลุ่ม", + "Save" : "บันทึก", + "Filename" : "ชื่อไฟล์", "Cancel" : "ยกเลิก", "Automatic" : "อัตโนมัติ", + "List view" : "มุมมองแบบรายการ", "Actions" : "การกระทำ", + "Location" : "ตำแหน่ง", + "Description" : "คำอธิบาย", + "to" : "ถึง", + "Add" : "เพิ่ม", + "Monday" : "วันจันทร์", + "Tuesday" : "วันอังคาร", + "Wednesday" : "วันพุธ", + "Thursday" : "วันพฤหัสบดี", + "Friday" : "วันศุกร์", + "Saturday" : "วันเสาร์", + "Sunday" : "วันอาทิตย์", + "Update" : "อัปเดต", + "Your email address" : "ที่อยู่อีเมลของคุณ", "Email" : "อีเมล", + "Delete file" : "ลบไฟล์", + "Choose a file to add as attachment" : "เลือกไฟล์ที่ต้องการแนบ", "Unknown" : "ไม่ทราบ", - "never" : "ไม่ต้องเลย", - "after" : "หลัง", + "Accept" : "ยอมรับ", + "Decline" : "ปฏิเสธ", + "Tentative" : "ชั่วคราว", + "Send email" : "ส่งอีเมล", "Repeat" : "ทำซ้ำ", - "Monday" : "วันจันทร์", + "never" : "ไม่ต้องเลย", + "after" : "หลังจาก", "More" : "เพิ่มเติม", - "Save" : "บันทึก", - "Update" : "อัพเดท", - "Personal" : "ส่วนตัว", + "Pick a date" : "เลือกวันที่", + "Global" : "ทั่วไป", + "Subscribe" : "สมัครรับข้อมูล", "Details" : "รายละเอียด", "Attendees" : "ผู้เข้าร่วมกิจกรรม", - "Reminders" : "การแจ้งเตือน", "Close" : "ปิด", - "Anniversary" : "วันครบรอบ", "Week {number} of {year}" : "สัปดาห์ที่ {number} ของปี {year}", - "Daily" : "รุ่นรายวัน", + "Daily" : "รายวัน", "Weekly" : "รายสัปดาห์", - "today" : "วันนี้", - "When shared show full event" : "เมื่อแชร์จะแสดงกิจกรรมทั้งหมด", + "Other" : "อื่น ๆ", + "When shared show full event" : "เมื่อแชร์จะแสดงกิจกรรมเต็ม", "When shared show only busy" : "เมื่อแชร์จะแสดงเฉพาะไม่ว่าง", "When shared hide this event" : "เมื่อแชร์จะซ่อนกิจกรรมนี้", - "Location" : "ตำแหน่งที่อยู่", - "Description" : "รายละเอียด", - "Confirmed" : "ได้รับการยืนยันแล้ว", - "Tentative" : "ชั่วคราว", + "Status" : "สถานะ", + "Confirmed" : "ยืนยันแล้ว", + "Categories" : "หมวดหมู่", + "Commuting" : "กำลังเดินทาง", "Presentation" : "งานนำเสนอ", "Office" : "สำนักงาน", "Mail" : "จดหมาย", - "Play" : "เล่น", - "Global" : "ทั่วไป" + "Birthday" : "วันเกิด" }, "nplurals=1; plural=0;"); diff --git a/l10n/th.json b/l10n/th.json index 7017f925f5..cf03d77bfd 100644 --- a/l10n/th.json +++ b/l10n/th.json @@ -1,49 +1,84 @@ { "translations": { + "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!" : "ไชโย!", "Calendar" : "ปฏิทิน", + "Confirm" : "ยืนยัน", + "Anniversary" : "วันครบรอบ", + "Personal" : "ส่วนตัว", "Today" : "วันนี้", "Day" : "วัน", "Week" : "สัปดาห์", "Month" : "เดือน", - "Download" : "ดาวน์โหลด", + "Preview" : "ตัวอย่าง", + "Copy link" : "คัดลอกลิงก์", + "Edit" : "แก้ไข", "Delete" : "ลบ", - "Share link" : "แชร์ลิงค์", - "Share with users or groups" : "แชร์กับผู้ใช้หรือกลุ่ม", - "can edit" : "สามารถแก้ไข", "New calendar" : "สร้างปฏิทินใหม่", + "Export" : "ส่งออก", + "Name" : "ชื่อ", + "Deleted" : "ลบแล้ว", + "Restore" : "คืนค่า", + "Delete permanently" : "ลบแบบถาวร", + "Empty trash bin" : "ล้างข้อมูลในถังขยะ", + "Share link" : "แชร์ลิงก์", + "can edit" : "สามารถแก้ไข", + "Share with users or groups" : "แชร์กับผู้ใช้หรือกลุ่ม", + "Save" : "บันทึก", + "Filename" : "ชื่อไฟล์", "Cancel" : "ยกเลิก", "Automatic" : "อัตโนมัติ", + "List view" : "มุมมองแบบรายการ", "Actions" : "การกระทำ", + "Location" : "ตำแหน่ง", + "Description" : "คำอธิบาย", + "to" : "ถึง", + "Add" : "เพิ่ม", + "Monday" : "วันจันทร์", + "Tuesday" : "วันอังคาร", + "Wednesday" : "วันพุธ", + "Thursday" : "วันพฤหัสบดี", + "Friday" : "วันศุกร์", + "Saturday" : "วันเสาร์", + "Sunday" : "วันอาทิตย์", + "Update" : "อัปเดต", + "Your email address" : "ที่อยู่อีเมลของคุณ", "Email" : "อีเมล", + "Delete file" : "ลบไฟล์", + "Choose a file to add as attachment" : "เลือกไฟล์ที่ต้องการแนบ", "Unknown" : "ไม่ทราบ", - "never" : "ไม่ต้องเลย", - "after" : "หลัง", + "Accept" : "ยอมรับ", + "Decline" : "ปฏิเสธ", + "Tentative" : "ชั่วคราว", + "Send email" : "ส่งอีเมล", "Repeat" : "ทำซ้ำ", - "Monday" : "วันจันทร์", + "never" : "ไม่ต้องเลย", + "after" : "หลังจาก", "More" : "เพิ่มเติม", - "Save" : "บันทึก", - "Update" : "อัพเดท", - "Personal" : "ส่วนตัว", + "Pick a date" : "เลือกวันที่", + "Global" : "ทั่วไป", + "Subscribe" : "สมัครรับข้อมูล", "Details" : "รายละเอียด", "Attendees" : "ผู้เข้าร่วมกิจกรรม", - "Reminders" : "การแจ้งเตือน", "Close" : "ปิด", - "Anniversary" : "วันครบรอบ", "Week {number} of {year}" : "สัปดาห์ที่ {number} ของปี {year}", - "Daily" : "รุ่นรายวัน", + "Daily" : "รายวัน", "Weekly" : "รายสัปดาห์", - "today" : "วันนี้", - "When shared show full event" : "เมื่อแชร์จะแสดงกิจกรรมทั้งหมด", + "Other" : "อื่น ๆ", + "When shared show full event" : "เมื่อแชร์จะแสดงกิจกรรมเต็ม", "When shared show only busy" : "เมื่อแชร์จะแสดงเฉพาะไม่ว่าง", "When shared hide this event" : "เมื่อแชร์จะซ่อนกิจกรรมนี้", - "Location" : "ตำแหน่งที่อยู่", - "Description" : "รายละเอียด", - "Confirmed" : "ได้รับการยืนยันแล้ว", - "Tentative" : "ชั่วคราว", + "Status" : "สถานะ", + "Confirmed" : "ยืนยันแล้ว", + "Categories" : "หมวดหมู่", + "Commuting" : "กำลังเดินทาง", "Presentation" : "งานนำเสนอ", "Office" : "สำนักงาน", "Mail" : "จดหมาย", - "Play" : "เล่น", - "Global" : "ทั่วไป" + "Birthday" : "วันเกิด" },"pluralForm" :"nplurals=1; plural=0;" } \ No newline at end of file diff --git a/l10n/tr.js b/l10n/tr.js index a6140e2fcd..fa2bcf997c 100644 --- a/l10n/tr.js +++ b/l10n/tr.js @@ -1,59 +1,137 @@ OC.L10N.register( "calendar", { - "User-Session unexpectedly expired" : "Kullanıcı oturumu beklenmedik şekilde kapatıldı", + "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ı", "Unexpected error sending email. Please contact your administrator." : "E-posta gönderilirken beklenmeyen bir sorun çıktı. Lütfen BT yöneticiniz ile görüşün.", - "Successfully sent email to " : "E-posta şu adrese gönderildi", + "Successfully sent email to %1$s" : "E-posta %1$s adresine gönderildi", "Hello," : "Merhaba,", "We wanted to inform you that %s has published the calendar »%s«." : "Bu ileti %s tarafından »%s« takviminin yayınlandığını bildirmek için gönderilmiştir.", - "Open »%s«" : "»%s« Aç", + "Open »%s«" : "»%s« aç", "Cheers!" : "Görüşmek üzere", "Upcoming events" : "Yaklaşan etkinlikler", + "More events" : "Diğer etkinlikler", + "No more events today" : "Bugün başka bir etkinlik yok", + "No upcoming events" : "Yaklaşan bir etkinlik yok", + "%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\" 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", + "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 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:", + "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ı.", + "Anniversary" : "Yıl dönümü", + "Appointment" : "Randevu", + "Business" : "İş", + "Education" : "Eğitim", + "Holiday" : "Tatil", + "Meeting" : "Toplantı", + "Miscellaneous" : "Diğer", + "Non-working hours" : "Çalışma dışı saatler", + "Not in office" : "İş yerinde değil", + "Personal" : "Kişisel", + "Phone call" : "Telefon çağrısı", + "Sick day" : "Hastalık", + "Special occasion" : "Özel durum", + "Travel" : "Gezi", + "Vacation" : "Tatil", + "Custom Categories" : "Özel kategoriler", + "Collaborative Tags" : "İş birlikli etiketler", + "Standard Categories" : "Standart kategoriler", "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.", + "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 çevrim iç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 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.", "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", + "Event" : "Etkinlik", + "Create new event" : "Etkinlik ekle", "Today" : "Bugün", "Day" : "Gün", "Week" : "Hafta", "Month" : "Ay", + "Year" : "Yıl", "List" : "Listele", - "Untitled calendar" : "Başlıksız takvim", - "Edit name" : "Adı düzenle", - "Saving name …" : "Ad kaydediliyor …", - "Edit color" : "Rengi düzenle", - "Saving color …" : "Renk kaydediliyor …", - "Copy private link" : "Özel bağlantıyı kopyala", - "Download" : "İndir", - "Unshare from me" : "Benimle paylaşımı kaldır", + "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" : "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", + "Disable calendar \"{calendar}\"" : "\"{calendar}\" takvimini devre dışı bırak", + "Disable untitled calendar" : "Adlandırılmamış takvimi devre dışı bırak", + "Enable calendar \"{calendar}\"" : "\"{calendar}\" takvimini etkinleştir", + "Enable untitled calendar" : "Adlandırılmamış takvimi etkinleştir", "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.", "_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"], + "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 …", + "Add public holiday calendar" : "Resmi tatil takvimi ekle", + "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)", + "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", + "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ı.", + "Trash bin" : "Çöp kutusu", + "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 item" : "Adlandırılmamış ö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?", + "_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.", + "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", "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ı", @@ -65,32 +143,32 @@ OC.L10N.register( "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 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.", - "+ New calendar" : "+ Yeni takvim", - "New calendar" : "Takvim ekle", - "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)", - "Could not update calendar order." : "Takvim sıralaması güncellenemedi.", + "Share with users or groups" : "Kullanıcı ya da gruplar ile paylaş", + "No users or groups" : "Herhangi bir kullanıcı ya da grup yok", + "Calendar name …" : "Takvim adı…", + "Share calendar" : "Takvimi paylaş", + "Unshare from me" : "Benimle paylaşımı kaldır", + "Save" : "Kaydet", + "Failed to save calendar name and color" : "Takvim adı ve rengi kaydedilemedi", "Import calendars" : "Takvimleri içe aktar", "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"], - "{filename} is an unsupported file-type" : "{filename} dosya türü desteklenmiyor", + "Default attachments location" : "Ek dosyaların varsayılan konumu", + "Select the default location for attachments" : "Ek dosyalarının varsayılan konumunu 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ı.", "{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ı."], + "_Successfully imported %n event_::_Successfully imported %n events_" : ["%n etkinlik içe aktarıldı","%n etkinlik içe aktarıldı"], "Automatic" : "Otomatik", "Automatic ({detected})" : "Otomatik ({detected})", "New setting was not saved successfully." : "Yeni ayarlar kaydedilemedi.", @@ -103,21 +181,83 @@ 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", "Show shortcuts" : "Kısayolları görüntüle", + "Editor" : "Düzenleyici", + "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", "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 reminder" : "Varsayılan anımsatıcı", "Copy primary CalDAV address" : "Birincil CalDAV adresini kopyala", "Copy iOS/macOS CalDAV address" : "iOS/macOS CalDAV adresini kopyala", - "Show keyboard shortcuts" : "Tuş takımı kısayollarını görüntüle", - "Settings & import" : "Ayarlar ve İçe Aktarma", + "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", + "_{duration} minute_::_{duration} minutes_" : ["{duration} dakika","{duration} dakika"], + "0 minutes" : "0 dakika", + "_{duration} hour_::_{duration} hours_" : ["{duration} saat","{duration} saat"], + "_{duration} day_::_{duration} days_" : ["{duration} gün","{duration} gün"], + "_{duration} week_::_{duration} weeks_" : ["{duration} hafta","{duration} hafta"], + "_{duration} month_::_{duration} months_" : ["{duration} ay","{duration} ay"], + "_{duration} year_::_{duration} years_" : ["{duration} yıl","{duration} yıl"], + "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 name" : "Randevu adı", + "Location" : "Konum", + "Create a Talk room" : "Bir Talk 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", + "Increments" : "Artımlar", + "Additional calendars to check for conflicts" : "Çakışmaların denetleneceği diğer takvimler", + "Pick time ranges where appointments are allowed" : "Randevuların verilebileceği zaman aralıklarını seçin", + "to" : "ile", + "Delete slot" : "Aralığı sil", + "No times set" : "Herhangi bir zaman ayarlanmamış", + "Add" : "Ekle", + "Monday" : "Pazartesi", + "Tuesday" : "Salı", + "Wednesday" : "Çarşamba", + "Thursday" : "Perşembe", + "Friday" : "Cuma", + "Saturday" : "Cumartesi", + "Sunday" : "Pazar", + "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 alınabileceğini sınırlayın", + "Create appointment" : "Randevu ekle", + "Edit appointment" : "Randevuyu düzenle", + "Update" : "Güncelle", + "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ı", "before at" : "şundan önce", "Notification" : "Bildirim", "Email" : "E-posta", @@ -131,81 +271,118 @@ OC.L10N.register( "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"], - "No reminders yet" : "Henüz bir anımsatıcı yok", + "No attachments" : "Herhangi bir ek dosya yok", + "Add from Files" : "Dosyalardan ekle", + "Upload from device" : "Aygıttan yükle", + "Delete file" : "Dosyayı sil", + "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!", + "_{count} attachment_::_{count} attachments_" : ["{count} ek dosya","{count} ek dosya"], + "Invitation accepted" : "Çağrı onaylandı", + "Available" : "Uygun", + "Suggested" : "Önerildi", + "Participation marked as tentative" : "Katılım belirsiz olarak işaretlendi", + "Accepted {organizerName}'s invitation" : "{organizerName} tarafından yapılan çağrı onaylandı", + "Not available" : "Kullanılamaz", + "Invitation declined" : "Çağrı reddedildi", + "Declined {organizerName}'s invitation" : "{organizerName} tarafından yapılan çağrı reddedildi", + "Invitation is delegated" : "Çağrı iletildi", + "Checking availability" : "Uygunluk denetleniyor", + "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", + "{organizer} (organizer)" : "{organizer} (organizer)", + "Free" : "Serbest", "Busy (tentative)" : "Meşgul (belirsiz)", "Busy" : "Meşgul", "Out of office" : "İş yeri dışında", "Unknown" : "Bilinmiyor", - "{name} accepted your invitation." : "{name} çağrınızı kabul etti.", - "{name} accepted {organizerName}'s invitation." : "{name}, {organizerName} kişinin çağrısını kabul etti.", - "{name} declined your invitation." : "{name} çağrınızı reddetti.", - "{name} declined {organizerName}'s invitation." : "{name}, {organizerName} kişisinin çağrısını reddetti.", - "{name} has delegated their invitation." : "{name} çağrılarını devretti.", - "{name} marked their participation as tentative." : "{name} katılım durumunu belirsiz olarak bildirdi.", - "{name} did not respond to your invitation yet." : "{name} çağrınızı henüz yanıtlamadı.", - "{name} did not respond to {organizerName}'s invitation yet." : "{name} henüz {organizerName} kişisinin çağrısını yanıtlamadı.", + "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 location." : "Bağlantı konumun Talk odasına eklendi.", "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 e-mail" : "E-posta gönder", + "Send email" : "E-posta gönder", "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 e-mails, users, contacts, resources or rooms" : "E-posta, kullanıcı, kişi, kaynak ya da oda arayın", + "Search for emails, users or contacts" : "E-posta, kullanıcı ya da kişi ara", "No match found" : "Herhangi bir sonuç bulunamadı", - "No attendees yet" : "Henüz bir katılımcı yok", "(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].", "Remove color" : "Rengi kaldır", "Event title" : "Etkinlik başlığı", "All day" : "Tüm gün", - "Can not 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.", + "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", + "Repeat" : "Yineleme", "End repeat" : "Yinelenme sonu", "Select to end repeat" : "Yinelenme sonunu seçin", "never" : "asla", "on date" : "şu tarihte", "after" : "şundan sonra", "_time_::_times_" : ["kez","kez"], - "This event is the recurrence-exception of a recurrence-set. You can not add a recurrence-rule to it." : "Bu etkinlik bir yinelenen etkinlik kümesinin ögesi. Bu nedenle bu ögeye bir yinelenme kuralı ekleyemezsiniz.", + "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ız bu ve sonraki etkinlikler için geçerli olacak.", - "Repeat" : "Yineleme", + "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", "_month_::_months_" : ["ay","ay"], "_year_::_years_" : ["yıl","yıl"], - "Monday" : "Pazartesi", "weekday" : "hafta içi günleri", "weekend day" : "hafta sonu günü", - "Summary" : "Özet", + "No recurrence" : "Yinelenme yok", "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", + "Add resource" : "Kaynak ekle", + "Has a projector" : "Projeksiyon 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 ara", + "available" : "kullanılabilir", + "unavailable" : "kullanılamaz", + "Room type" : "Oda türü", + "Any" : "Tümü", + "Minimum seating capacity" : "En az oturma yeri sayısı", "More" : "Diğer", - "Save" : "Kaydet", - "Update" : "Güncelle", "Update this occurrence" : "Bu etkinliği güncelle", "Update this and all future" : "Bu ve sonraki etkinlikleri 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 süresi geçmiş olabilir mi?", - "Please select a timezone:" : "Lütfen bir saat dilimi seçin:", + "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", @@ -217,41 +394,52 @@ 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", - "Type to search timezone" : "Saat dilimini aramak için yazın", - "Personal" : "Kişisel", - "The automatic timezone detection determined your timezone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your timezone 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.", - "Your configured timezone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your timezone 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", + "Type to search time zone" : "Saat dilimi aramak için yazmaya başlayın", + "Global" : "Genel", + "Public holiday calendars" : "Resmi tatil takvimleri", + "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", + "By {authors}" : "{authors} tarafından", + "Subscribed" : "Abone olundu", + "Subscribe" : "Abone ol", + "Holidays in {region}" : "{region} tatilleri", + "An error occurred, unable to create the public holiday calendar." : "Bir sorun çıktı. Resmi tatil takvimi eklenemedi.", + "Select date" : "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ı", + "Appointment Details:" : "Randevu bilgileri:", + "Time:" : "Saat:", + "Booked for:" : "Ayırtılan:", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "Teşekkürler. {startDate} - {endDate} randevunuz onaylandı.", + "Book another appointment:" : "Başka bir randevu daha al:", + "See all available slots" : "Tüm aralıkları görüntüle", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "Randevunuzun {startDate} - {endDate} aralığı artık uygun değil.", + "Please book a different slot:" : "Lütfen farklı bir aralık seçin:", + "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ı", + "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.", "Create a new event" : "Etkinlik ekle", "[Today]" : "[Bugün]", "[Tomorrow]" : "[Yarın]", "[Yesterday]" : "[Dün]", "[Last] dddd" : "[Son] dddd", "Event does not exist" : "Etkinlik bulunamadı", + "Duplicate" : "Kopyala", "Delete this occurrence" : "Bu etkinliği sil", "Delete this and all future" : "Bu ve sonraki etkinlikleri sil", "Details" : "Ayrıntılar", + "Managing shared access" : "Paylaşılmış erişim yönetimi", + "Deny access" : "Erişimi reddet", + "Invite" : "Çağır", "Attendees" : "Katılanlar", - "Reminders" : "Anımsatıcılar", + "Resources" : "Kaynaklar", + "_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"], "Close" : "Kapat", "Show more details" : "Diğer ayrıntıları görüntüle", "Subscribe to {name}" : "{name} takvimine abone ol", - "Download {name}" : "{name} takvimini indir", - "Anniversary" : "Yıl dönümü", - "Appointment" : "Toplantı", - "Business" : "İş", - "Education" : "Eğitim", - "Holiday" : "Tatil", - "Meeting" : "Toplantı", - "Miscellaneous" : "Diğer", - "Non-working hours" : "Çalışma dışı saatler", - "Not in office" : "İş yerinde değil", - "Phone call" : "Telefon araması", - "Sick day" : "Hastalık", - "Special occasion" : "Özel durum", - "Travel" : "Gezi", - "Vacation" : "Tatil", + "Export {name}" : "{name} dışa aktar", "Midnight on the day the event starts" : "Etkinliğin başladığı günün gece yarısı", "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["etkinlikten %n gün önce {formattedHourMinute}","etkinlikten %n gün önce {formattedHourMinute}"], "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["etkinlikten %n hafta önce {formattedHourMinute}","etkinlikten %n hafta önce {formattedHourMinute}"], @@ -281,17 +469,10 @@ OC.L10N.register( "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" : "Başlıksız etkinlik", - "Untitled task" : "Başlıksız görev", + "Untitled event" : "Adlandırılmamış etkinlik", + "Untitled task" : "Adlandırılmamış 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", - "today" : "bugün", - "list" : "liste", "W" : "W", - "all-day" : "tüm gün", "%n more" : "%n diğer", "No events to display" : "Görüntülenebilecek bir etkinlik yok", "_+%n more_::_+%n more_" : ["+%n diğer","+%n diğer"], @@ -299,119 +480,164 @@ OC.L10N.register( "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", "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ı", + "Lecture hall" : "Konferans salonu", + "Seminar room" : "Seminer odası", + "Other" : "Diğer", "When shared show" : "Paylaşıldığında görüntülenecek", "When shared show full event" : "Paylaşıldığında tüm etkinlik ayrıntıları görüntülensin", - "When shared show only busy" : "Paylaşıldığında yalnız meşgul olarak görüntülensin", + "When shared show only busy" : "Paylaşıldığında yalnızca meşgul olarak görüntülensin", "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ü.", - "Location" : "Konum", "Add a location" : "Bir konum ekleyin", - "Description" : "Açıklama", "Add a description" : "Bir açıklama ekleyin", "Status" : "Durum", - "Confirmed" : "Kabul Edildi", - "Tentative" : "Belirsiz", - "Canceled" : "İptal Edildi", + "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.", - "Free" : "Serbest", "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.", + "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ı", + "Attachment {fileName} already exists!" : "{fileName} ek dosyası zaten var!", + "An error occurred during getting file information" : "Dosya bilgileri alınırken bir sorun çıktı", "Chat room for event" : "Etkinliğin sohbet odası", + "An error occurred, unable to delete the calendar." : "Bir sorun çıktı. Takvim silinemedi.", "Imported {filename}" : "{filename} içe aktarıldı", + "This is an event reminder." : "Bu bir etkinlik hatırlatıcısıdır.", "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", - "Present" : "Sunu", + "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şe Yönelik", - "Review" : "Gözden Geçir", + "Pointing" : "İşaret etme", + "Retrospective" : "Geçmişi değerlendirme", "Office" : "Ofis", "Contributor week" : "Katılımcı haftası", - "Party" : "Parti", - "Celebration" : "Kutlama", - "Mail" : "Posta", + "Mail" : "E-posta", "Soccer" : "Futbol", - "Football" : "Amerikan Futbolu", + "Football" : "Amerikan futbolu", "Gaming" : "Oyun", - "Play" : "Oyna", - "Game" : "Maç", "Drive" : "Sürüş", + "Driving" : "Sürüş", "Bicycle" : "Bisiklet", "Cycle" : "Bisiklet", - "Biking" : "Bisiklete Binme", + "Cycling" : "Bisiklet", + "Biking" : "Bisiklete ninme", + "Bike" : "Bisiklet", "Podcast" : "Podcast", "Basketball" : "Basketbol", - "Fishing" : "Balık Tutma", - "Hiking" : "Doğa Yürüyüşü", + "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" : "Spor çalışması", + "Working out" : "Saha çalışması", "Gym" : "Gym", "Barber" : "Berber", - "Haircut" : "Saç Kesimi", + "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", + "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" : "Toplu görüşme", - "Video-call" : "Görüntülü 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" : "Arama", - "Calling" : "Aranıyor", + "Call" : "Çağrı", + "Calling" : "Çağrı", "Christmas" : "Noel", "Conference" : "Konferans", "Pizza" : "Pizza", "Travelling" : "Gezi", + "Trip" : "Yolculuk", "Journey" : "Yolculuk", - "Collaborate" : "İşbirliği", + "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ı", + "Wine tasting" : "Şarap tadımı", "Golf" : "Golf", - "Dinner" : "Akşam Yemeği", - "Lunch" : "Öğle Yemeği", - "Global" : "Genel" + "Dinner" : "Akşam yemeği", + "Lunch" : "Öğle yemeği", + "Appointment not found" : "Randevu bulunamadı", + "User not found" : "Kullanıcı bulunamadı" }, "nplurals=2; plural=(n > 1);"); diff --git a/l10n/tr.json b/l10n/tr.json index 67d1c6b10b..2ec88810b6 100644 --- a/l10n/tr.json +++ b/l10n/tr.json @@ -1,57 +1,135 @@ { "translations": { - "User-Session unexpectedly expired" : "Kullanıcı oturumu beklenmedik şekilde kapatıldı", + "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ı", "Unexpected error sending email. Please contact your administrator." : "E-posta gönderilirken beklenmeyen bir sorun çıktı. Lütfen BT yöneticiniz ile görüşün.", - "Successfully sent email to " : "E-posta şu adrese gönderildi", + "Successfully sent email to %1$s" : "E-posta %1$s adresine gönderildi", "Hello," : "Merhaba,", "We wanted to inform you that %s has published the calendar »%s«." : "Bu ileti %s tarafından »%s« takviminin yayınlandığını bildirmek için gönderilmiştir.", - "Open »%s«" : "»%s« Aç", + "Open »%s«" : "»%s« aç", "Cheers!" : "Görüşmek üzere", "Upcoming events" : "Yaklaşan etkinlikler", + "More events" : "Diğer etkinlikler", + "No more events today" : "Bugün başka bir etkinlik yok", + "No upcoming events" : "Yaklaşan bir etkinlik yok", + "%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\" 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", + "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 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:", + "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ı.", + "Anniversary" : "Yıl dönümü", + "Appointment" : "Randevu", + "Business" : "İş", + "Education" : "Eğitim", + "Holiday" : "Tatil", + "Meeting" : "Toplantı", + "Miscellaneous" : "Diğer", + "Non-working hours" : "Çalışma dışı saatler", + "Not in office" : "İş yerinde değil", + "Personal" : "Kişisel", + "Phone call" : "Telefon çağrısı", + "Sick day" : "Hastalık", + "Special occasion" : "Özel durum", + "Travel" : "Gezi", + "Vacation" : "Tatil", + "Custom Categories" : "Özel kategoriler", + "Collaborative Tags" : "İş birlikli etiketler", + "Standard Categories" : "Standart kategoriler", "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.", + "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 çevrim iç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 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.", "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", + "Event" : "Etkinlik", + "Create new event" : "Etkinlik ekle", "Today" : "Bugün", "Day" : "Gün", "Week" : "Hafta", "Month" : "Ay", + "Year" : "Yıl", "List" : "Listele", - "Untitled calendar" : "Başlıksız takvim", - "Edit name" : "Adı düzenle", - "Saving name …" : "Ad kaydediliyor …", - "Edit color" : "Rengi düzenle", - "Saving color …" : "Renk kaydediliyor …", - "Copy private link" : "Özel bağlantıyı kopyala", - "Download" : "İndir", - "Unshare from me" : "Benimle paylaşımı kaldır", + "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" : "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", + "Disable calendar \"{calendar}\"" : "\"{calendar}\" takvimini devre dışı bırak", + "Disable untitled calendar" : "Adlandırılmamış takvimi devre dışı bırak", + "Enable calendar \"{calendar}\"" : "\"{calendar}\" takvimini etkinleştir", + "Enable untitled calendar" : "Adlandırılmamış takvimi etkinleştir", "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.", "_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"], + "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 …", + "Add public holiday calendar" : "Resmi tatil takvimi ekle", + "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)", + "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", + "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ı.", + "Trash bin" : "Çöp kutusu", + "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 item" : "Adlandırılmamış ö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?", + "_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.", + "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", "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ı", @@ -63,32 +141,32 @@ "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 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.", - "+ New calendar" : "+ Yeni takvim", - "New calendar" : "Takvim ekle", - "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)", - "Could not update calendar order." : "Takvim sıralaması güncellenemedi.", + "Share with users or groups" : "Kullanıcı ya da gruplar ile paylaş", + "No users or groups" : "Herhangi bir kullanıcı ya da grup yok", + "Calendar name …" : "Takvim adı…", + "Share calendar" : "Takvimi paylaş", + "Unshare from me" : "Benimle paylaşımı kaldır", + "Save" : "Kaydet", + "Failed to save calendar name and color" : "Takvim adı ve rengi kaydedilemedi", "Import calendars" : "Takvimleri içe aktar", "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"], - "{filename} is an unsupported file-type" : "{filename} dosya türü desteklenmiyor", + "Default attachments location" : "Ek dosyaların varsayılan konumu", + "Select the default location for attachments" : "Ek dosyalarının varsayılan konumunu 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ı.", "{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ı."], + "_Successfully imported %n event_::_Successfully imported %n events_" : ["%n etkinlik içe aktarıldı","%n etkinlik içe aktarıldı"], "Automatic" : "Otomatik", "Automatic ({detected})" : "Otomatik ({detected})", "New setting was not saved successfully." : "Yeni ayarlar kaydedilemedi.", @@ -101,21 +179,83 @@ "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", "Show shortcuts" : "Kısayolları görüntüle", + "Editor" : "Düzenleyici", + "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", "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 reminder" : "Varsayılan anımsatıcı", "Copy primary CalDAV address" : "Birincil CalDAV adresini kopyala", "Copy iOS/macOS CalDAV address" : "iOS/macOS CalDAV adresini kopyala", - "Show keyboard shortcuts" : "Tuş takımı kısayollarını görüntüle", - "Settings & import" : "Ayarlar ve İçe Aktarma", + "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", + "_{duration} minute_::_{duration} minutes_" : ["{duration} dakika","{duration} dakika"], + "0 minutes" : "0 dakika", + "_{duration} hour_::_{duration} hours_" : ["{duration} saat","{duration} saat"], + "_{duration} day_::_{duration} days_" : ["{duration} gün","{duration} gün"], + "_{duration} week_::_{duration} weeks_" : ["{duration} hafta","{duration} hafta"], + "_{duration} month_::_{duration} months_" : ["{duration} ay","{duration} ay"], + "_{duration} year_::_{duration} years_" : ["{duration} yıl","{duration} yıl"], + "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 name" : "Randevu adı", + "Location" : "Konum", + "Create a Talk room" : "Bir Talk 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", + "Increments" : "Artımlar", + "Additional calendars to check for conflicts" : "Çakışmaların denetleneceği diğer takvimler", + "Pick time ranges where appointments are allowed" : "Randevuların verilebileceği zaman aralıklarını seçin", + "to" : "ile", + "Delete slot" : "Aralığı sil", + "No times set" : "Herhangi bir zaman ayarlanmamış", + "Add" : "Ekle", + "Monday" : "Pazartesi", + "Tuesday" : "Salı", + "Wednesday" : "Çarşamba", + "Thursday" : "Perşembe", + "Friday" : "Cuma", + "Saturday" : "Cumartesi", + "Sunday" : "Pazar", + "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 alınabileceğini sınırlayın", + "Create appointment" : "Randevu ekle", + "Edit appointment" : "Randevuyu düzenle", + "Update" : "Güncelle", + "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ı", "before at" : "şundan önce", "Notification" : "Bildirim", "Email" : "E-posta", @@ -129,81 +269,118 @@ "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"], - "No reminders yet" : "Henüz bir anımsatıcı yok", + "No attachments" : "Herhangi bir ek dosya yok", + "Add from Files" : "Dosyalardan ekle", + "Upload from device" : "Aygıttan yükle", + "Delete file" : "Dosyayı sil", + "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!", + "_{count} attachment_::_{count} attachments_" : ["{count} ek dosya","{count} ek dosya"], + "Invitation accepted" : "Çağrı onaylandı", + "Available" : "Uygun", + "Suggested" : "Önerildi", + "Participation marked as tentative" : "Katılım belirsiz olarak işaretlendi", + "Accepted {organizerName}'s invitation" : "{organizerName} tarafından yapılan çağrı onaylandı", + "Not available" : "Kullanılamaz", + "Invitation declined" : "Çağrı reddedildi", + "Declined {organizerName}'s invitation" : "{organizerName} tarafından yapılan çağrı reddedildi", + "Invitation is delegated" : "Çağrı iletildi", + "Checking availability" : "Uygunluk denetleniyor", + "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", + "{organizer} (organizer)" : "{organizer} (organizer)", + "Free" : "Serbest", "Busy (tentative)" : "Meşgul (belirsiz)", "Busy" : "Meşgul", "Out of office" : "İş yeri dışında", "Unknown" : "Bilinmiyor", - "{name} accepted your invitation." : "{name} çağrınızı kabul etti.", - "{name} accepted {organizerName}'s invitation." : "{name}, {organizerName} kişinin çağrısını kabul etti.", - "{name} declined your invitation." : "{name} çağrınızı reddetti.", - "{name} declined {organizerName}'s invitation." : "{name}, {organizerName} kişisinin çağrısını reddetti.", - "{name} has delegated their invitation." : "{name} çağrılarını devretti.", - "{name} marked their participation as tentative." : "{name} katılım durumunu belirsiz olarak bildirdi.", - "{name} did not respond to your invitation yet." : "{name} çağrınızı henüz yanıtlamadı.", - "{name} did not respond to {organizerName}'s invitation yet." : "{name} henüz {organizerName} kişisinin çağrısını yanıtlamadı.", + "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 location." : "Bağlantı konumun Talk odasına eklendi.", "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 e-mail" : "E-posta gönder", + "Send email" : "E-posta gönder", "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 e-mails, users, contacts, resources or rooms" : "E-posta, kullanıcı, kişi, kaynak ya da oda arayın", + "Search for emails, users or contacts" : "E-posta, kullanıcı ya da kişi ara", "No match found" : "Herhangi bir sonuç bulunamadı", - "No attendees yet" : "Henüz bir katılımcı yok", "(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].", "Remove color" : "Rengi kaldır", "Event title" : "Etkinlik başlığı", "All day" : "Tüm gün", - "Can not 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.", + "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", + "Repeat" : "Yineleme", "End repeat" : "Yinelenme sonu", "Select to end repeat" : "Yinelenme sonunu seçin", "never" : "asla", "on date" : "şu tarihte", "after" : "şundan sonra", "_time_::_times_" : ["kez","kez"], - "This event is the recurrence-exception of a recurrence-set. You can not add a recurrence-rule to it." : "Bu etkinlik bir yinelenen etkinlik kümesinin ögesi. Bu nedenle bu ögeye bir yinelenme kuralı ekleyemezsiniz.", + "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ız bu ve sonraki etkinlikler için geçerli olacak.", - "Repeat" : "Yineleme", + "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", "_month_::_months_" : ["ay","ay"], "_year_::_years_" : ["yıl","yıl"], - "Monday" : "Pazartesi", "weekday" : "hafta içi günleri", "weekend day" : "hafta sonu günü", - "Summary" : "Özet", + "No recurrence" : "Yinelenme yok", "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", + "Add resource" : "Kaynak ekle", + "Has a projector" : "Projeksiyon 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 ara", + "available" : "kullanılabilir", + "unavailable" : "kullanılamaz", + "Room type" : "Oda türü", + "Any" : "Tümü", + "Minimum seating capacity" : "En az oturma yeri sayısı", "More" : "Diğer", - "Save" : "Kaydet", - "Update" : "Güncelle", "Update this occurrence" : "Bu etkinliği güncelle", "Update this and all future" : "Bu ve sonraki etkinlikleri 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 süresi geçmiş olabilir mi?", - "Please select a timezone:" : "Lütfen bir saat dilimi seçin:", + "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", @@ -215,41 +392,52 @@ "{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", - "Type to search timezone" : "Saat dilimini aramak için yazın", - "Personal" : "Kişisel", - "The automatic timezone detection determined your timezone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your timezone 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.", - "Your configured timezone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your timezone 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", + "Type to search time zone" : "Saat dilimi aramak için yazmaya başlayın", + "Global" : "Genel", + "Public holiday calendars" : "Resmi tatil takvimleri", + "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", + "By {authors}" : "{authors} tarafından", + "Subscribed" : "Abone olundu", + "Subscribe" : "Abone ol", + "Holidays in {region}" : "{region} tatilleri", + "An error occurred, unable to create the public holiday calendar." : "Bir sorun çıktı. Resmi tatil takvimi eklenemedi.", + "Select date" : "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ı", + "Appointment Details:" : "Randevu bilgileri:", + "Time:" : "Saat:", + "Booked for:" : "Ayırtılan:", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "Teşekkürler. {startDate} - {endDate} randevunuz onaylandı.", + "Book another appointment:" : "Başka bir randevu daha al:", + "See all available slots" : "Tüm aralıkları görüntüle", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "Randevunuzun {startDate} - {endDate} aralığı artık uygun değil.", + "Please book a different slot:" : "Lütfen farklı bir aralık seçin:", + "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ı", + "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.", "Create a new event" : "Etkinlik ekle", "[Today]" : "[Bugün]", "[Tomorrow]" : "[Yarın]", "[Yesterday]" : "[Dün]", "[Last] dddd" : "[Son] dddd", "Event does not exist" : "Etkinlik bulunamadı", + "Duplicate" : "Kopyala", "Delete this occurrence" : "Bu etkinliği sil", "Delete this and all future" : "Bu ve sonraki etkinlikleri sil", "Details" : "Ayrıntılar", + "Managing shared access" : "Paylaşılmış erişim yönetimi", + "Deny access" : "Erişimi reddet", + "Invite" : "Çağır", "Attendees" : "Katılanlar", - "Reminders" : "Anımsatıcılar", + "Resources" : "Kaynaklar", + "_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"], "Close" : "Kapat", "Show more details" : "Diğer ayrıntıları görüntüle", "Subscribe to {name}" : "{name} takvimine abone ol", - "Download {name}" : "{name} takvimini indir", - "Anniversary" : "Yıl dönümü", - "Appointment" : "Toplantı", - "Business" : "İş", - "Education" : "Eğitim", - "Holiday" : "Tatil", - "Meeting" : "Toplantı", - "Miscellaneous" : "Diğer", - "Non-working hours" : "Çalışma dışı saatler", - "Not in office" : "İş yerinde değil", - "Phone call" : "Telefon araması", - "Sick day" : "Hastalık", - "Special occasion" : "Özel durum", - "Travel" : "Gezi", - "Vacation" : "Tatil", + "Export {name}" : "{name} dışa aktar", "Midnight on the day the event starts" : "Etkinliğin başladığı günün gece yarısı", "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["etkinlikten %n gün önce {formattedHourMinute}","etkinlikten %n gün önce {formattedHourMinute}"], "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["etkinlikten %n hafta önce {formattedHourMinute}","etkinlikten %n hafta önce {formattedHourMinute}"], @@ -279,17 +467,10 @@ "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" : "Başlıksız etkinlik", - "Untitled task" : "Başlıksız görev", + "Untitled event" : "Adlandırılmamış etkinlik", + "Untitled task" : "Adlandırılmamış 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", - "today" : "bugün", - "list" : "liste", "W" : "W", - "all-day" : "tüm gün", "%n more" : "%n diğer", "No events to display" : "Görüntülenebilecek bir etkinlik yok", "_+%n more_::_+%n more_" : ["+%n diğer","+%n diğer"], @@ -297,119 +478,164 @@ "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", "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ı", + "Lecture hall" : "Konferans salonu", + "Seminar room" : "Seminer odası", + "Other" : "Diğer", "When shared show" : "Paylaşıldığında görüntülenecek", "When shared show full event" : "Paylaşıldığında tüm etkinlik ayrıntıları görüntülensin", - "When shared show only busy" : "Paylaşıldığında yalnız meşgul olarak görüntülensin", + "When shared show only busy" : "Paylaşıldığında yalnızca meşgul olarak görüntülensin", "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ü.", - "Location" : "Konum", "Add a location" : "Bir konum ekleyin", - "Description" : "Açıklama", "Add a description" : "Bir açıklama ekleyin", "Status" : "Durum", - "Confirmed" : "Kabul Edildi", - "Tentative" : "Belirsiz", - "Canceled" : "İptal Edildi", + "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.", - "Free" : "Serbest", "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.", + "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ı", + "Attachment {fileName} already exists!" : "{fileName} ek dosyası zaten var!", + "An error occurred during getting file information" : "Dosya bilgileri alınırken bir sorun çıktı", "Chat room for event" : "Etkinliğin sohbet odası", + "An error occurred, unable to delete the calendar." : "Bir sorun çıktı. Takvim silinemedi.", "Imported {filename}" : "{filename} içe aktarıldı", + "This is an event reminder." : "Bu bir etkinlik hatırlatıcısıdır.", "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", - "Present" : "Sunu", + "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şe Yönelik", - "Review" : "Gözden Geçir", + "Pointing" : "İşaret etme", + "Retrospective" : "Geçmişi değerlendirme", "Office" : "Ofis", "Contributor week" : "Katılımcı haftası", - "Party" : "Parti", - "Celebration" : "Kutlama", - "Mail" : "Posta", + "Mail" : "E-posta", "Soccer" : "Futbol", - "Football" : "Amerikan Futbolu", + "Football" : "Amerikan futbolu", "Gaming" : "Oyun", - "Play" : "Oyna", - "Game" : "Maç", "Drive" : "Sürüş", + "Driving" : "Sürüş", "Bicycle" : "Bisiklet", "Cycle" : "Bisiklet", - "Biking" : "Bisiklete Binme", + "Cycling" : "Bisiklet", + "Biking" : "Bisiklete ninme", + "Bike" : "Bisiklet", "Podcast" : "Podcast", "Basketball" : "Basketbol", - "Fishing" : "Balık Tutma", - "Hiking" : "Doğa Yürüyüşü", + "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" : "Spor çalışması", + "Working out" : "Saha çalışması", "Gym" : "Gym", "Barber" : "Berber", - "Haircut" : "Saç Kesimi", + "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", + "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" : "Toplu görüşme", - "Video-call" : "Görüntülü 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" : "Arama", - "Calling" : "Aranıyor", + "Call" : "Çağrı", + "Calling" : "Çağrı", "Christmas" : "Noel", "Conference" : "Konferans", "Pizza" : "Pizza", "Travelling" : "Gezi", + "Trip" : "Yolculuk", "Journey" : "Yolculuk", - "Collaborate" : "İşbirliği", + "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ı", + "Wine tasting" : "Şarap tadımı", "Golf" : "Golf", - "Dinner" : "Akşam Yemeği", - "Lunch" : "Öğle Yemeği", - "Global" : "Genel" + "Dinner" : "Akşam yemeği", + "Lunch" : "Öğle yemeği", + "Appointment not found" : "Randevu bulunamadı", + "User not found" : "Kullanıcı bulunamadı" },"pluralForm" :"nplurals=2; plural=(n > 1);" } \ No newline at end of file diff --git a/l10n/ug.js b/l10n/ug.js index f06a31840d..91a1e00161 100644 --- a/l10n/ug.js +++ b/l10n/ug.js @@ -2,28 +2,40 @@ OC.L10N.register( "calendar", { "Calendar" : "يىلنامە", + "Personal" : "شەخسىي", "Today" : "بۈگۈن", "Week" : "ھەپتە", "Month" : "ئاي", - "Download" : "چۈشۈر", + "Edit" : "تەھرىر", "Delete" : "ئۆچۈر", - "Share link" : "Share link", "New calendar" : "يېڭى يىلنامە", + "Export" : "چىقار", + "Name" : "ئاتى", + "Deleted" : "ئۆچۈرۈلدى", + "Delete permanently" : "مەڭگۈلۈك ئۆچۈر", + "Share link" : "Share link", + "Save" : "ساقلا", "Cancel" : "ۋاز كەچ", "Actions" : "مەشغۇلاتلار", + "Location" : "ئورنى", + "Description" : "چۈشەندۈرۈش", + "Add" : "قوش", + "Monday" : "دۈشەنبە", + "Tuesday" : "سەيشەنبە", + "Wednesday" : "چارشەنبە", + "Thursday" : "پەيشەنبە", + "Friday" : "جۈمە", + "Saturday" : "شەنبە", + "Sunday" : "يەكشەنبە", + "Update" : "يېڭىلا", + "Your email address" : "تورخەت ئادرېسىڭىز", "Email" : "تورخەت", - "never" : "ھەرگىز", "Repeat" : "قايتىلا", - "Monday" : "دۈشەنبە", + "never" : "ھەرگىز", "More" : "تېخىمۇ كۆپ", - "Save" : "ساقلا", - "Update" : "يېڭىلا", - "Personal" : "شەخسىي", "Attendees" : "قاتناشقۇچىلار", "Close" : "ياپ", - "today" : "بۈگۈن", - "Location" : "ئورنى", - "Description" : "چۈشەندۈرۈش", - "Play" : "چال" + "Other" : "باشقا", + "Birthday" : "تۇغۇلغان كۈن" }, "nplurals=2; plural=(n != 1);"); diff --git a/l10n/ug.json b/l10n/ug.json index 87000cdb66..16eac89ea1 100644 --- a/l10n/ug.json +++ b/l10n/ug.json @@ -1,27 +1,39 @@ { "translations": { "Calendar" : "يىلنامە", + "Personal" : "شەخسىي", "Today" : "بۈگۈن", "Week" : "ھەپتە", "Month" : "ئاي", - "Download" : "چۈشۈر", + "Edit" : "تەھرىر", "Delete" : "ئۆچۈر", - "Share link" : "Share link", "New calendar" : "يېڭى يىلنامە", + "Export" : "چىقار", + "Name" : "ئاتى", + "Deleted" : "ئۆچۈرۈلدى", + "Delete permanently" : "مەڭگۈلۈك ئۆچۈر", + "Share link" : "Share link", + "Save" : "ساقلا", "Cancel" : "ۋاز كەچ", "Actions" : "مەشغۇلاتلار", + "Location" : "ئورنى", + "Description" : "چۈشەندۈرۈش", + "Add" : "قوش", + "Monday" : "دۈشەنبە", + "Tuesday" : "سەيشەنبە", + "Wednesday" : "چارشەنبە", + "Thursday" : "پەيشەنبە", + "Friday" : "جۈمە", + "Saturday" : "شەنبە", + "Sunday" : "يەكشەنبە", + "Update" : "يېڭىلا", + "Your email address" : "تورخەت ئادرېسىڭىز", "Email" : "تورخەت", - "never" : "ھەرگىز", "Repeat" : "قايتىلا", - "Monday" : "دۈشەنبە", + "never" : "ھەرگىز", "More" : "تېخىمۇ كۆپ", - "Save" : "ساقلا", - "Update" : "يېڭىلا", - "Personal" : "شەخسىي", "Attendees" : "قاتناشقۇچىلار", "Close" : "ياپ", - "today" : "بۈگۈن", - "Location" : "ئورنى", - "Description" : "چۈشەندۈرۈش", - "Play" : "چال" + "Other" : "باشقا", + "Birthday" : "تۇغۇلغان كۈن" },"pluralForm" :"nplurals=2; plural=(n != 1);" } \ No newline at end of file diff --git a/l10n/uk.js b/l10n/uk.js index a852814251..f601c3850f 100644 --- a/l10n/uk.js +++ b/l10n/uk.js @@ -1,93 +1,174 @@ 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 " : "Успішно надіслано електроннний лист", + "%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" : "Майбутні події", + "More events" : "Більше подій", + "No more events today" : "Подій на сьогодні не заплановано", + "No upcoming events" : "Відсутні майбутні події", + "%1$s with %2$s" : "%1$s з %2$s", "Calendar" : "Календар", - "A Calendar app for Nextcloud" : "Звстосунок \"Календар\" для Nextcloud", - "Previous day" : "Попередій день", + "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" : "Підтвердити", + "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) запросив вас на зустріч.", + "Anniversary" : "Річниця", + "Appointment" : "Запрошення на зустріч", + "Business" : "Робота", + "Education" : "Освіта", + "Holiday" : "Вихідний", + "Meeting" : "Зустріч", + "Miscellaneous" : "Різне", + "Non-working hours" : "Неробочий час", + "Not in office" : "Поза офісом", + "Personal" : "Особисте", + "Phone call" : "Телефонний дзвінок", + "Sick day" : "Хворію", + "Special occasion" : "Особлива подія", + "Travel" : "Подорожую", + "Vacation" : "Відпустка", + "Custom Categories" : "Власні категорії", + "Collaborative Tags" : "Мітки для співпраці", + "Standard Categories" : "Типові категорії", + "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" : "Вчора", "Previous week" : "Попередній тиждень", + "Previous year" : "Назад", "Previous month" : "Попередній місяць", - "Next day" : "Наступний день", + "Next day" : "Завтра", "Next week" : "Наступний тиждень", + "Next year" : "Наступний рік", "Next month" : "Наступний місяць", - "+ New event" : "+ Нова подія", + "Event" : "Подія", + "Create new event" : "Створити нову подію", "Today" : "Сьогодні", "Day" : "День", "Week" : "Тиждень", "Month" : "Місяць", + "Year" : "Рік", "List" : "Список", - "Untitled calendar" : "Календар без назви", - "Edit name" : "Редагувати назву", - "Saving name …" : "Збереження назви ...", - "Edit color" : "Редагувати колір", - "Saving color …" : "Збереження кольору ...", - "Copy private link" : "Копіювати приватне посилання", - "Download" : "Завантажити", - "Unshare from me" : "Від'єднати від мене", + "Preview" : "Перегляд", + "Copy link" : "Копіювати посилання", + "Edit" : "Редагувати", "Delete" : "Вилучити", - "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." : "Сталася помилка, неможливо змінити колір календаря.", + "Appointment link was copied to clipboard" : "Посилання на зустріч скопійовано до буферу обміну", + "Appointment link could not be copied to clipboard" : "Неможливо скопіювати посилання до буферу обміну", + "Add new" : "Створити", + "Untitled calendar" : "Календар без назви", + "Shared with you by" : "Поділилися з вами", + "Edit and share calendar" : "Редагувати та поділитися календарем", + "Edit calendar" : "Редагувати календар", + "Disable calendar \"{calendar}\"" : "Вимкнути календар \"{calendar}\"", + "Disable untitled calendar" : "Вимкнути календар без назви", + "Enable calendar \"{calendar}\"" : "Увімкнути календар \"{calendar}\"", + "Enable untitled calendar" : "Увімкнути календар без назви", + "An error occurred, unable to change visibility of the 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 …" : "Надсилаю повідомлення ...", + "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" : "Додати календар публічних свят", + "An error occurred, unable to create the calendar." : "Помилка: неможливо створити календар.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Будь ласка, зазначте правильне посилання (має починатися з http://, https://, webcal:// або webcals://)", "Copy subscription link" : "Копіювати посилання на підписку", - "Copying link …" : "Копіюю посилання ...", - "Copied link" : "Копія посилання", + "Copying link …" : "Копіюю посилання...", + "Copied link" : "Скопійоване посилання", "Could not copy link" : "Не вдалося cкопіювати посилання", + "Export" : "Експорт", + "Calendar link copied to clipboard." : "Посилання на календар скопійовано.", + "Calendar link could not be copied to clipboard." : "Неможливо копіювати посилання на календар.", + "Trash bin" : "Кошик", + "Loading deleted items." : "Завантажую вилучені елементи.", + "You do not have any deleted items." : "У вас відсутні елементи, які було вилучено.", + "Name" : "Назва", + "Deleted" : "Вилучено", + "Restore" : "Відновити", + "Delete permanently" : "Вилучити назавжди", + "Empty trash bin" : "Очистити кошик", + "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?" : "Ви дійсно хочете очистити кошик?", + "_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." : "Не вдалося оновити порядок подання календарів.", + "Internal link" : "Внутрішнє посилання", + "A private link that can be used with external clients" : "Приватне посилання, яке можна буде використати із зовнішніми клієнтами.", + "Copy internal link" : "Копіювати посилання", + "Share link" : "Посилання спільного доступу", + "Copy public link" : "Копіювати публічне посилання", + "Send link to calendar via email" : "Надіслати посилання на календар електронною поштою", + "Enter one address" : "Зазначте одну адресу", + "Sending email …" : "Надсилаю повідомлення...", "Copy embedding code" : "Копіювати код вбудування", - "Copying code …" : "Копіюю код ...", - "Copied 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." : "Сталася помилка, неможливо відправити повідомлення.", + "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." : "Код вбудування 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" : "Жодного користувача або групи", "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://)", + "An error occurred while unsharing the calendar." : "Помилка під час скасування доступу до календаря.", + "An error occurred, unable to change the permission of the share." : "Помилка: неможливо змінити права доступу до спільного ресурсу.", + "Share with users or groups" : "Поділитися з користувачем або групою", + "No users or groups" : "Відсутні користувачі або групи", + "Calendar name …" : "Назва календаря...", + "Share calendar" : "Поділитися календарем", + "Unshare from me" : "Вилучити доступ для мене", + "Save" : "Зберегти", + "Failed to save calendar name and color" : "Не вдалося зберегти назву календаря та колір", "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_" : ["Імпортувати календар","Імпортувати календарі","Імпортувати календарі","Імпортувати календарі"], - "{filename} is an unsupported file-type" : "{filename} має тип файлів, які не підтримуються", + "Default attachments location" : "Типове розташування для долучених файлів", + "Select the default location for attachments" : "Виберіть типове розташування для долучених файлів", + "Invalid location selected" : "Вибрано недійсне місце розташування", + "Attachments folder successfully saved." : "Каталог для долучених файлів успішно збережено", + "Error on saving attachments folder." : "Помилка під час збереження каталогу для долучених файлів", "{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 подій.","Успішно імпортовано %n подій."], + "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 подій","Успішно вставлено %n подій"], "Automatic" : "Автоматично", "Automatic ({detected})" : "Автоматично ({detected})", "New setting was not saved successfully." : "Нові налаштування не було збережено.", @@ -100,152 +181,270 @@ 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" : "Створити копію події", + "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" : "Показати гарячі клавіші", - "Settings & import" : "Налаштування і імпорт", + "Time increments" : "Крок", + "Default reminder" : "Нагадувати", + "Copy primary CalDAV address" : "Копіювати основну адресу CalDAV", + "Copy iOS/macOS CalDAV address" : "Копіювати адресу CalDAV для iOS/macOS ", + "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.", - "before at" : "до часу", + "Appointment was created successfully" : "Успішно створено зустріч", + "Appointment was updated successfully" : "Успішно оновлено зустріч", + "_{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 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" : "Вівторок", + "Wednesday" : "Середа", + "Thursday" : "Четвер", + "Friday" : "П'ятниця", + "Saturday" : "Субота", + "Sunday" : "Неділя", + "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" : "Редагувати зустріч", + "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" : "Нагадування", + "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" : "+ Додати нагадування", + "Add reminder" : "Додати нагадування", "_second_::_seconds_" : ["секунда","секунд","секунд","секунди"], "_minute_::_minutes_" : ["хвилина","хвилин","хвилин","хвилини"], "_hour_::_hours_" : ["година","годин","годин","години"], "_day_::_days_" : ["день","днів","днів","дні"], "_week_::_weeks_" : ["тиждень","тижнів","тижнів","тижні"], - "No reminders yet" : "Жодного нагадування поки що", + "No attachments" : "Без вкладень", + "Add from Files" : "Додати з файлів", + "Upload from device" : "Завантажити з пристрою", + "Delete file" : "Вилучити файл", + "Choose a file to add as attachment" : "Виберіть файл для вкладення", + "Choose a file to share as a link" : "Виберіть файл, яким ви поділитеся через посилання", + "Attachment {name} already exist!" : "Такий долучений файл {name} вже присутній!", + "_{count} attachment_::_{count} attachments_" : ["{count} долучений файл","{count} долучені файли","{count} долучених файлів","{count} долучених файлів"], + "Invitation accepted" : "Запрошення прийнято", + "Available" : "Доступно", + "Suggested" : "Запропоновано", + "Participation marked as tentative" : "Участь можлива", + "Accepted {organizerName}'s invitation" : "Прийнято запрошення від {organizerName}", + "Not available" : "Не доступно", + "Invitation declined" : "Запрошення відхилено", + "Declined {organizerName}'s invitation" : "Відхилене від {organizerName} запрошення ", + "Invitation is delegated" : "Запрошення делеговано", + "Checking availability" : "Перевірка доступності", + "Invitation sent" : "Запрошення надіслано", + "Has not responded to {organizerName}'s invitation yet" : "Ще не відповів на запрошення від {organizerName}", "Availability of attendees, resources and rooms" : "Доступність учасників, ресурсів і приміщень", + "{organizer} (organizer)" : "{organizer} (організатор)", + "Free" : "Вільно", "Busy (tentative)" : "Зайнято (попередньо)", "Busy" : "Зайнято", - "Out of office" : "Поза межами офісу", + "Out of office" : "Недоступно", "Unknown" : "Невідомо", - "{name} accepted your invitation." : "{name} прийняв ваше запрошення.", - "{name} accepted {organizerName}'s invitation." : "{name} прийняв запрошення від {organizerName}.", - "{name} declined your invitation." : "{name} відхилив ваше запрошення.", - "{name} declined {organizerName}'s invitation." : "{name} відхилив запрошення від {organizerName}.", - "{name} has delegated their invitation." : "{name} делегував своє запрошення.", - "{name} marked their participation as tentative." : "{name} позначив свою участь як попередню.", - "{name} did not respond to your invitation yet." : "{name} поки не відповів на ваше запрошення.", - "{name} did not respond to {organizerName}'s invitation yet." : "{name} поки не відповів на запрошення від {organizerName}.", - "Create Talk room for this event" : "Створити Кімнату переговорів для цієї події", - "Show busy times" : "Показати зайнятий час", - "Successfully appended link to talk room to description." : "Успішно додано посилання на Кімнату переговорів до опису події.", - "Error creating Talk room" : "Помилка при створенні Кімнати переговорів", - "Send e-mail" : "Надіслати електронну пошту", - "Chairperson" : "Голова зборів", + "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" : "Показувати зайнятість", + "No attendees yet" : "Поки жодного учасника", + "Successfully appended link to talk room to location." : "Успішно додано посилання на розташування у кімнаті спілкування ", + "Successfully appended link to talk room to description." : "Успішно додано посилання на віртуальну кімнату Talk до опису події.", + "Error creating Talk room" : "Помилка при створенні віртуальної кімнати Talk", + "Send email" : "Надіслати лист", + "Chairperson" : "Модератор", "Required participant" : "Обов'язковий учасник", "Optional participant" : "Необов'язковий учасник", - "Non-participant" : "Не-учасник", + "Non-participant" : "Неучасник", "Remove attendee" : "Вилучити учасника", - "Search for e-mails, users, contacts, resources or rooms" : "Пошук адрес електронної пошти, користувачів, контактів, ресурсів і кімнат", - "No match found" : "Жодного не знайдено", - "No attendees yet" : "Поки жодного учасника", + "Search for emails, users or contacts" : "Ел.адреса, ім'я користувача або контакт", + "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" : "Цілий день", - "Can not modify all-day setting for events that are part of a recurrence-set." : "Неможливо змінити налаштування зайнятості цилого дня для подій, що повторюються.", - "from {startDate}" : "з {startDate}", + "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}", - "End repeat" : "Закінчення повторів", - "Select to end repeat" : "Вибрати до кінця повторів", - "never" : "ніколи", - "on date" : "у дату", - "after" : "після", - "_time_::_times_" : ["раз","разів","разів","рази"], - "This event is the recurrence-exception of a recurrence-set. You can not add a recurrence-rule to it." : "Ця подія є винятком з повторюваного набору. Ви не можете додати правила повтору для неї.", + "Repeat" : "Повторювати", + "End repeat" : "Повторювати до", + "Select to end repeat" : "Вибрати, щоби завершити повторення", + "never" : "завжди", + "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." : "Зміни до повторюваного набору застосуються лише до поточного і наступних випадків.", - "Repeat" : "Повторювати", - "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" : "У", "_month_::_months_" : ["місяць","місяців","місяців","місяці"], "_year_::_years_" : ["рік","років","років","роки"], - "Monday" : "понеділок", "weekday" : "робочі дні", "weekend day" : "вихідні дні", - "Summary" : "Загалом", - "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 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" : "Пропозиції", + "No rooms or resources yet" : "Ще немає кімнат або ресурсів", + "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" : "недоступне", + "Room type" : "Вид кімнати", + "Any" : "Будь-яка", + "Minimum seating capacity" : "Мінімальна кількість місць", "More" : "Більше", - "Save" : "Зберегти", - "Update" : "Оновити", - "Update this occurrence" : "Оновити даний повтор", - "Update this and all future" : "Оновити цей і всі наступні", + "Update this occurrence" : "Оновити це повторення", + "Update this and all future" : "Оновити цю подію та всі наступні", "Public calendar does not exist" : "Публічний календар не існує", - "Maybe the share was deleted or has expired?" : "Можливо спільний доступ було закрито або застаріло?", - "Please select a timezone:" : "Будь-ласка вкажіть часовий пояс:", - "Pick a time" : "Вибрати час", - "Pick a date" : "Вибрати дату", - "from {formattedDate}" : "з {formattedDate}", + "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}", + "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 timezone" : "Наберіть для пошуку часового поясу", - "Personal" : "Особисте", - "The automatic timezone detection determined your timezone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your timezone manually in the calendar settings." : "Автоматичне визначення часового поясу вибрало для вас UTC. Найвірогідніша причина - налаштування безпеки вашого браузера. Будь-ласка вкажіть ваш часовий пояс у налаштуваннях календаря.", - "Your configured timezone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your timezone in the settings and report this issue." : "Налаштований часовий пояс ({timezoneId}) не знайдено. Автоматично встановлено UTC.\nБудь-ласка змініть налаштування вашого часового поясу і повідомте про цей випадок.", + "Please enter a valid date" : "Будь ласка, зазначте правильну дату", + "Please enter a valid date and time" : "Будь ласка, зазначте правильну дату та час", + "Type to search time zone" : "Зазначте часову зону для пошуку", + "Global" : "Загальний", + "Public holiday calendars" : "Календарі публічних свят", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Календарі публічних свят надаються Thunderbird. Календарні дані буде отримано з {website}", + "By {authors}" : "Автор: {authors}", + "Subscribed" : "Підписано", + "Subscribe" : "Підписатися", + "Holidays in {region}" : "Свята в {region}", + "An error occurred, unable to create the public holiday calendar." : "Помилка: неможливо створити календар публічних свят.", + "Select 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}", + "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Будь ласка, змініть вашу часову зону у налаштуваннях та надішліть звіт про помилку.", + "Create a new event" : "Створити нову подію", + "[Today]" : "[Сьогодні]", + "[Tomorrow]" : "[Завтра]", + "[Yesterday]" : "[Вчора]", + "Event does not exist" : "Подія відсутня", + "Duplicate" : "Копіювати", "Delete this occurrence" : "Вилучити повторення", - "Delete this and all future" : "Вилучити це й наступні повторення", + "Delete this and all future" : "Вилучити це та всі подальші повторення", "Details" : "Деталі", - "Attendees" : "Учасників", - "Reminders" : "Нагадування", + "Managing shared access" : "Керування спільним доступом", + "Deny access" : "Заборонити доступ", + "Invite" : "Запросити", + "Attendees" : "Учасники", + "Resources" : "Ресурси", + "_User requires access to your file_::_Users require access to your file_" : ["Потрібно надати доступ до вашого файлу.","Потрібно надати доступ до вашого файлу.","Потрібно надати доступ до вашого файлу.","Потрібно надати доступ до вашого файлу."], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Для доступу до додатку потрібний спільний доступ.","Для доступу до додатків потрібний спільний доступ.","Для доступу до додатків потрібний спільний доступ.","Для доступу до додатків потрібний спільний доступ."], "Close" : "Закрити", - "Show more details" : "Збільшити деталізацію", + "Show more details" : "Докладніше", "Subscribe to {name}" : "Підписатися на {name}", - "Download {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" : "Початок доби у день старту події", + "Export {name}" : "Експортувати {name}", + "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} після початку події", @@ -271,80 +470,120 @@ OC.L10N.register( "_%n time_::_%n times_" : ["%n раз","%n разів","%n разів","%n рази"], "Untitled event" : "Подія без назви", "Untitled task" : "Завдання без назви", - "Please ask your administrator to enable the Tasks App." : "Зверніться до вашого адміністратора щодо увімкнення застосунку Завдання", - "next year" : "наступного року", - "today" : "сьогодні", + "Please ask your administrator to enable the Tasks App." : "Зверніться до вашого адміністратора щодо увімкнення застосунку \"Завдання\".", + "W" : "Тиж. ", + "%n more" : "Ще %n подій", + "No events to display" : "Відсутні події для показу", "_+%n more_::_+%n more_" : ["+%n раз ще","+%n разів ще","+%n разів ще","+%n рази ще"], - "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." : "Видимість цієї події при поширенні календаря.", - "Location" : "Місце", + "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" : "Кімната для занять", + "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" : "Додати розташування", - "Description" : "Опис", "Add a description" : "Додати опис", "Status" : "Статус", "Confirmed" : "Підтверджено", - "Tentative" : "Попередній", "Canceled" : "Скасовано", "Confirmation about the overall status of the event." : "Підтвердження загального статусу події.", "Show as" : "Показати як", - "Take this event into account when calculating free-busy information." : "Брати до уваги цю подію при розрахунку інформації про вильний/зайнятий час.", - "Free" : "Вільно", + "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}", + "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" : "Помилка під час отримання інформації про файл", + "Chat room for event" : "Кімната чату для події", + "An error occurred, unable to delete the calendar." : "Помилка: неможливо вилучити календар.", + "Imported {filename}" : "Імпортовано {filename}", + "This is an event reminder." : "Це нагадування про подію.", "Meditation" : "Медитація", - "Relaxing" : "Розслаблення", - "Relax" : "Розслабитися", + "Relaxing" : "Відпочинок", + "Relax" : "Відпочити", + "Break" : "Перерва", + "Commute" : "Поїздка", + "Commuting" : "В дорозі", + "Shuttle" : "Автобус", + "Invoice" : "Рахунок", + "Finance" : "Гроші", + "Bank" : "Банк", + "Money" : "Гроші", + "Wedding" : "Весілля", + "Dog" : "Пес", + "Concert" : "Концерт", + "Festival" : "Фестиваль", + "Theater" : "Театр", + "Theatre" : "Театр", "Presentation" : "Презентація", - "Present" : "Презентувати", - "Camping" : "Лагер", - "Camp" : "Лагер", + "Talk" : "Розмова", + "Speech" : "Промова", + "Deadline" : "Реченець", + "Submission" : "Подання", + "Reporting" : "Звітування", + "Camping" : "За містом", + "Camp" : "На природі", + "Election" : "Вибори", + "Voting" : "Голосування", + "Vote" : "Голосувати", + "Barbecue" : "Барбекю", + "Barbeque" : "Барбекю", + "Garden" : "Сад", + "Farm" : "Ферма", "Movie" : "Фільм", - "Cinema" : "Кінотеатр", + "Cinema" : "Кіно", "Graduation" : "Випускний", - "Brainstorm" : "Мозговий штурм", - "Baseball" : "Бейзбол", - "Meet" : "Зустріти", - "Planning" : "Планується", + "Brainstorm" : "Обговорення", + "Review" : "Перегляд", + "Audit" : "Аудит", + "Inspection" : "Перевірка", + "Proofreading" : "Вичитка", + "Baseball" : "Бейсбол", + "Meet" : "Зустріч", + "Planning" : "Планування", "Pointing" : "Призначено", "Retrospective" : "Ретроспектива", - "Review" : "На перегляд", - "Office" : "Офіс", + "Office" : "Робота", "Contributor week" : "Тиждень постачальника", - "Party" : "Вечірка", - "Celebration" : "Святкування", "Mail" : "Пошта", "Soccer" : "Футбол", "Football" : "Американський футбол", "Gaming" : "Ігри", - "Play" : "Грати", - "Game" : "Гра", - "Drive" : "Їхати автомобілем", - "Bicycle" : "Їхати велосипедом", - "Cycle" : "Їхати колесами", - "Biking" : "Їхати мотоциклом", + "Drive" : "Автівка", + "Driving" : "Водіння", + "Bicycle" : "Велосипед", + "Cycle" : "Колісний транспорт", + "Cycling" : "Велосипед", + "Biking" : "Мотоцикл", + "Bike" : "Велосипед", "Podcast" : "Подкаст", "Basketball" : "Баскетбол", - "Fishing" : "Рибалити", - "Hiking" : "Пішки", + "Fishing" : "Рибалка", + "Hiking" : "Ходьба", "Hike" : "Похід", "Art" : "Мистецтво", "Exhibition" : "Виставка", "Museum" : "Музей", "Pilates" : "Пілатес", "Park" : "Парк", + "Walk" : "Прогулянка", "Studying" : "Навчання", "Doctor" : "Лікар", "Health" : "Здоров'я", "Dentist" : "Стоматолог", + "Hospital" : "Лікарня", "Interview" : "Співбесіда", "Training" : "Тренування", "Practice" : "Практика", @@ -355,7 +594,10 @@ OC.L10N.register( "Gym" : "Тренажерний зал", "Barber" : "Перукар", "Haircut" : "Зачіска", + "Hairdresser" : "Перукар", "Exam" : "Іспит", + "Written test" : "Письмовий тест", + "Oral test" : "Усний тест", "Working" : "Працюю", "New Years Eve" : "Новий рік", "NYE" : "Новий рік", @@ -374,20 +616,27 @@ OC.L10N.register( "Conference" : "Конференція", "Pizza" : "Піцца", "Travelling" : "Подорожую", + "Trip" : "Поїздка", "Journey" : "Подорож", "Collaborate" : "Співпраця", "Pair" : "Пара", "Lecture" : "Лекція", "Seminar" : "Семінар", + "Teaching" : "Викладання", "Photograph" : "Фотограф", + "Party" : "Вечірка", + "Celebration" : "Святкування", "Celebrate" : "Святкування", + "Birthday" : "Дата народження", "Shopping" : "Шопінг", + "Groceries" : "Бакалія", "Skate" : "Ковзани", "Skateboard" : "Скейт", "Wine tasting" : "Дегустація", "Golf" : "Гольф", "Dinner" : "Вечеря", "Lunch" : "Обід", - "Global" : "Загальний" + "Appointment not found" : "Запрошення на зустріч не знайдено", + "User not found" : "Користувача не знайдено" }, "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 6e92b37ef4..84737d43c7 100644 --- a/l10n/uk.json +++ b/l10n/uk.json @@ -1,91 +1,172 @@ { "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 " : "Успішно надіслано електроннний лист", + "%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" : "Майбутні події", + "More events" : "Більше подій", + "No more events today" : "Подій на сьогодні не заплановано", + "No upcoming events" : "Відсутні майбутні події", + "%1$s with %2$s" : "%1$s з %2$s", "Calendar" : "Календар", - "A Calendar app for Nextcloud" : "Звстосунок \"Календар\" для Nextcloud", - "Previous day" : "Попередій день", + "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" : "Підтвердити", + "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) запросив вас на зустріч.", + "Anniversary" : "Річниця", + "Appointment" : "Запрошення на зустріч", + "Business" : "Робота", + "Education" : "Освіта", + "Holiday" : "Вихідний", + "Meeting" : "Зустріч", + "Miscellaneous" : "Різне", + "Non-working hours" : "Неробочий час", + "Not in office" : "Поза офісом", + "Personal" : "Особисте", + "Phone call" : "Телефонний дзвінок", + "Sick day" : "Хворію", + "Special occasion" : "Особлива подія", + "Travel" : "Подорожую", + "Vacation" : "Відпустка", + "Custom Categories" : "Власні категорії", + "Collaborative Tags" : "Мітки для співпраці", + "Standard Categories" : "Типові категорії", + "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" : "Вчора", "Previous week" : "Попередній тиждень", + "Previous year" : "Назад", "Previous month" : "Попередній місяць", - "Next day" : "Наступний день", + "Next day" : "Завтра", "Next week" : "Наступний тиждень", + "Next year" : "Наступний рік", "Next month" : "Наступний місяць", - "+ New event" : "+ Нова подія", + "Event" : "Подія", + "Create new event" : "Створити нову подію", "Today" : "Сьогодні", "Day" : "День", "Week" : "Тиждень", "Month" : "Місяць", + "Year" : "Рік", "List" : "Список", - "Untitled calendar" : "Календар без назви", - "Edit name" : "Редагувати назву", - "Saving name …" : "Збереження назви ...", - "Edit color" : "Редагувати колір", - "Saving color …" : "Збереження кольору ...", - "Copy private link" : "Копіювати приватне посилання", - "Download" : "Завантажити", - "Unshare from me" : "Від'єднати від мене", + "Preview" : "Перегляд", + "Copy link" : "Копіювати посилання", + "Edit" : "Редагувати", "Delete" : "Вилучити", - "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." : "Сталася помилка, неможливо змінити колір календаря.", + "Appointment link was copied to clipboard" : "Посилання на зустріч скопійовано до буферу обміну", + "Appointment link could not be copied to clipboard" : "Неможливо скопіювати посилання до буферу обміну", + "Add new" : "Створити", + "Untitled calendar" : "Календар без назви", + "Shared with you by" : "Поділилися з вами", + "Edit and share calendar" : "Редагувати та поділитися календарем", + "Edit calendar" : "Редагувати календар", + "Disable calendar \"{calendar}\"" : "Вимкнути календар \"{calendar}\"", + "Disable untitled calendar" : "Вимкнути календар без назви", + "Enable calendar \"{calendar}\"" : "Увімкнути календар \"{calendar}\"", + "Enable untitled calendar" : "Увімкнути календар без назви", + "An error occurred, unable to change visibility of the 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 …" : "Надсилаю повідомлення ...", + "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" : "Додати календар публічних свят", + "An error occurred, unable to create the calendar." : "Помилка: неможливо створити календар.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Будь ласка, зазначте правильне посилання (має починатися з http://, https://, webcal:// або webcals://)", "Copy subscription link" : "Копіювати посилання на підписку", - "Copying link …" : "Копіюю посилання ...", - "Copied link" : "Копія посилання", + "Copying link …" : "Копіюю посилання...", + "Copied link" : "Скопійоване посилання", "Could not copy link" : "Не вдалося cкопіювати посилання", + "Export" : "Експорт", + "Calendar link copied to clipboard." : "Посилання на календар скопійовано.", + "Calendar link could not be copied to clipboard." : "Неможливо копіювати посилання на календар.", + "Trash bin" : "Кошик", + "Loading deleted items." : "Завантажую вилучені елементи.", + "You do not have any deleted items." : "У вас відсутні елементи, які було вилучено.", + "Name" : "Назва", + "Deleted" : "Вилучено", + "Restore" : "Відновити", + "Delete permanently" : "Вилучити назавжди", + "Empty trash bin" : "Очистити кошик", + "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?" : "Ви дійсно хочете очистити кошик?", + "_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." : "Не вдалося оновити порядок подання календарів.", + "Internal link" : "Внутрішнє посилання", + "A private link that can be used with external clients" : "Приватне посилання, яке можна буде використати із зовнішніми клієнтами.", + "Copy internal link" : "Копіювати посилання", + "Share link" : "Посилання спільного доступу", + "Copy public link" : "Копіювати публічне посилання", + "Send link to calendar via email" : "Надіслати посилання на календар електронною поштою", + "Enter one address" : "Зазначте одну адресу", + "Sending email …" : "Надсилаю повідомлення...", "Copy embedding code" : "Копіювати код вбудування", - "Copying code …" : "Копіюю код ...", - "Copied 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." : "Сталася помилка, неможливо відправити повідомлення.", + "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." : "Код вбудування 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" : "Жодного користувача або групи", "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://)", + "An error occurred while unsharing the calendar." : "Помилка під час скасування доступу до календаря.", + "An error occurred, unable to change the permission of the share." : "Помилка: неможливо змінити права доступу до спільного ресурсу.", + "Share with users or groups" : "Поділитися з користувачем або групою", + "No users or groups" : "Відсутні користувачі або групи", + "Calendar name …" : "Назва календаря...", + "Share calendar" : "Поділитися календарем", + "Unshare from me" : "Вилучити доступ для мене", + "Save" : "Зберегти", + "Failed to save calendar name and color" : "Не вдалося зберегти назву календаря та колір", "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_" : ["Імпортувати календар","Імпортувати календарі","Імпортувати календарі","Імпортувати календарі"], - "{filename} is an unsupported file-type" : "{filename} має тип файлів, які не підтримуються", + "Default attachments location" : "Типове розташування для долучених файлів", + "Select the default location for attachments" : "Виберіть типове розташування для долучених файлів", + "Invalid location selected" : "Вибрано недійсне місце розташування", + "Attachments folder successfully saved." : "Каталог для долучених файлів успішно збережено", + "Error on saving attachments folder." : "Помилка під час збереження каталогу для долучених файлів", "{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 подій.","Успішно імпортовано %n подій."], + "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 подій","Успішно вставлено %n подій"], "Automatic" : "Автоматично", "Automatic ({detected})" : "Автоматично ({detected})", "New setting was not saved successfully." : "Нові налаштування не було збережено.", @@ -98,152 +179,270 @@ "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" : "Створити копію події", + "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" : "Показати гарячі клавіші", - "Settings & import" : "Налаштування і імпорт", + "Time increments" : "Крок", + "Default reminder" : "Нагадувати", + "Copy primary CalDAV address" : "Копіювати основну адресу CalDAV", + "Copy iOS/macOS CalDAV address" : "Копіювати адресу CalDAV для iOS/macOS ", + "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.", - "before at" : "до часу", + "Appointment was created successfully" : "Успішно створено зустріч", + "Appointment was updated successfully" : "Успішно оновлено зустріч", + "_{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 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" : "Вівторок", + "Wednesday" : "Середа", + "Thursday" : "Четвер", + "Friday" : "П'ятниця", + "Saturday" : "Субота", + "Sunday" : "Неділя", + "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" : "Редагувати зустріч", + "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" : "Нагадування", + "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" : "+ Додати нагадування", + "Add reminder" : "Додати нагадування", "_second_::_seconds_" : ["секунда","секунд","секунд","секунди"], "_minute_::_minutes_" : ["хвилина","хвилин","хвилин","хвилини"], "_hour_::_hours_" : ["година","годин","годин","години"], "_day_::_days_" : ["день","днів","днів","дні"], "_week_::_weeks_" : ["тиждень","тижнів","тижнів","тижні"], - "No reminders yet" : "Жодного нагадування поки що", + "No attachments" : "Без вкладень", + "Add from Files" : "Додати з файлів", + "Upload from device" : "Завантажити з пристрою", + "Delete file" : "Вилучити файл", + "Choose a file to add as attachment" : "Виберіть файл для вкладення", + "Choose a file to share as a link" : "Виберіть файл, яким ви поділитеся через посилання", + "Attachment {name} already exist!" : "Такий долучений файл {name} вже присутній!", + "_{count} attachment_::_{count} attachments_" : ["{count} долучений файл","{count} долучені файли","{count} долучених файлів","{count} долучених файлів"], + "Invitation accepted" : "Запрошення прийнято", + "Available" : "Доступно", + "Suggested" : "Запропоновано", + "Participation marked as tentative" : "Участь можлива", + "Accepted {organizerName}'s invitation" : "Прийнято запрошення від {organizerName}", + "Not available" : "Не доступно", + "Invitation declined" : "Запрошення відхилено", + "Declined {organizerName}'s invitation" : "Відхилене від {organizerName} запрошення ", + "Invitation is delegated" : "Запрошення делеговано", + "Checking availability" : "Перевірка доступності", + "Invitation sent" : "Запрошення надіслано", + "Has not responded to {organizerName}'s invitation yet" : "Ще не відповів на запрошення від {organizerName}", "Availability of attendees, resources and rooms" : "Доступність учасників, ресурсів і приміщень", + "{organizer} (organizer)" : "{organizer} (організатор)", + "Free" : "Вільно", "Busy (tentative)" : "Зайнято (попередньо)", "Busy" : "Зайнято", - "Out of office" : "Поза межами офісу", + "Out of office" : "Недоступно", "Unknown" : "Невідомо", - "{name} accepted your invitation." : "{name} прийняв ваше запрошення.", - "{name} accepted {organizerName}'s invitation." : "{name} прийняв запрошення від {organizerName}.", - "{name} declined your invitation." : "{name} відхилив ваше запрошення.", - "{name} declined {organizerName}'s invitation." : "{name} відхилив запрошення від {organizerName}.", - "{name} has delegated their invitation." : "{name} делегував своє запрошення.", - "{name} marked their participation as tentative." : "{name} позначив свою участь як попередню.", - "{name} did not respond to your invitation yet." : "{name} поки не відповів на ваше запрошення.", - "{name} did not respond to {organizerName}'s invitation yet." : "{name} поки не відповів на запрошення від {organizerName}.", - "Create Talk room for this event" : "Створити Кімнату переговорів для цієї події", - "Show busy times" : "Показати зайнятий час", - "Successfully appended link to talk room to description." : "Успішно додано посилання на Кімнату переговорів до опису події.", - "Error creating Talk room" : "Помилка при створенні Кімнати переговорів", - "Send e-mail" : "Надіслати електронну пошту", - "Chairperson" : "Голова зборів", + "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" : "Показувати зайнятість", + "No attendees yet" : "Поки жодного учасника", + "Successfully appended link to talk room to location." : "Успішно додано посилання на розташування у кімнаті спілкування ", + "Successfully appended link to talk room to description." : "Успішно додано посилання на віртуальну кімнату Talk до опису події.", + "Error creating Talk room" : "Помилка при створенні віртуальної кімнати Talk", + "Send email" : "Надіслати лист", + "Chairperson" : "Модератор", "Required participant" : "Обов'язковий учасник", "Optional participant" : "Необов'язковий учасник", - "Non-participant" : "Не-учасник", + "Non-participant" : "Неучасник", "Remove attendee" : "Вилучити учасника", - "Search for e-mails, users, contacts, resources or rooms" : "Пошук адрес електронної пошти, користувачів, контактів, ресурсів і кімнат", - "No match found" : "Жодного не знайдено", - "No attendees yet" : "Поки жодного учасника", + "Search for emails, users or contacts" : "Ел.адреса, ім'я користувача або контакт", + "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" : "Цілий день", - "Can not modify all-day setting for events that are part of a recurrence-set." : "Неможливо змінити налаштування зайнятості цилого дня для подій, що повторюються.", - "from {startDate}" : "з {startDate}", + "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}", - "End repeat" : "Закінчення повторів", - "Select to end repeat" : "Вибрати до кінця повторів", - "never" : "ніколи", - "on date" : "у дату", - "after" : "після", - "_time_::_times_" : ["раз","разів","разів","рази"], - "This event is the recurrence-exception of a recurrence-set. You can not add a recurrence-rule to it." : "Ця подія є винятком з повторюваного набору. Ви не можете додати правила повтору для неї.", + "Repeat" : "Повторювати", + "End repeat" : "Повторювати до", + "Select to end repeat" : "Вибрати, щоби завершити повторення", + "never" : "завжди", + "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." : "Зміни до повторюваного набору застосуються лише до поточного і наступних випадків.", - "Repeat" : "Повторювати", - "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" : "У", "_month_::_months_" : ["місяць","місяців","місяців","місяці"], "_year_::_years_" : ["рік","років","років","роки"], - "Monday" : "понеділок", "weekday" : "робочі дні", "weekend day" : "вихідні дні", - "Summary" : "Загалом", - "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 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" : "Пропозиції", + "No rooms or resources yet" : "Ще немає кімнат або ресурсів", + "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" : "недоступне", + "Room type" : "Вид кімнати", + "Any" : "Будь-яка", + "Minimum seating capacity" : "Мінімальна кількість місць", "More" : "Більше", - "Save" : "Зберегти", - "Update" : "Оновити", - "Update this occurrence" : "Оновити даний повтор", - "Update this and all future" : "Оновити цей і всі наступні", + "Update this occurrence" : "Оновити це повторення", + "Update this and all future" : "Оновити цю подію та всі наступні", "Public calendar does not exist" : "Публічний календар не існує", - "Maybe the share was deleted or has expired?" : "Можливо спільний доступ було закрито або застаріло?", - "Please select a timezone:" : "Будь-ласка вкажіть часовий пояс:", - "Pick a time" : "Вибрати час", - "Pick a date" : "Вибрати дату", - "from {formattedDate}" : "з {formattedDate}", + "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}", + "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 timezone" : "Наберіть для пошуку часового поясу", - "Personal" : "Особисте", - "The automatic timezone detection determined your timezone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your timezone manually in the calendar settings." : "Автоматичне визначення часового поясу вибрало для вас UTC. Найвірогідніша причина - налаштування безпеки вашого браузера. Будь-ласка вкажіть ваш часовий пояс у налаштуваннях календаря.", - "Your configured timezone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your timezone in the settings and report this issue." : "Налаштований часовий пояс ({timezoneId}) не знайдено. Автоматично встановлено UTC.\nБудь-ласка змініть налаштування вашого часового поясу і повідомте про цей випадок.", + "Please enter a valid date" : "Будь ласка, зазначте правильну дату", + "Please enter a valid date and time" : "Будь ласка, зазначте правильну дату та час", + "Type to search time zone" : "Зазначте часову зону для пошуку", + "Global" : "Загальний", + "Public holiday calendars" : "Календарі публічних свят", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Календарі публічних свят надаються Thunderbird. Календарні дані буде отримано з {website}", + "By {authors}" : "Автор: {authors}", + "Subscribed" : "Підписано", + "Subscribe" : "Підписатися", + "Holidays in {region}" : "Свята в {region}", + "An error occurred, unable to create the public holiday calendar." : "Помилка: неможливо створити календар публічних свят.", + "Select 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}", + "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Будь ласка, змініть вашу часову зону у налаштуваннях та надішліть звіт про помилку.", + "Create a new event" : "Створити нову подію", + "[Today]" : "[Сьогодні]", + "[Tomorrow]" : "[Завтра]", + "[Yesterday]" : "[Вчора]", + "Event does not exist" : "Подія відсутня", + "Duplicate" : "Копіювати", "Delete this occurrence" : "Вилучити повторення", - "Delete this and all future" : "Вилучити це й наступні повторення", + "Delete this and all future" : "Вилучити це та всі подальші повторення", "Details" : "Деталі", - "Attendees" : "Учасників", - "Reminders" : "Нагадування", + "Managing shared access" : "Керування спільним доступом", + "Deny access" : "Заборонити доступ", + "Invite" : "Запросити", + "Attendees" : "Учасники", + "Resources" : "Ресурси", + "_User requires access to your file_::_Users require access to your file_" : ["Потрібно надати доступ до вашого файлу.","Потрібно надати доступ до вашого файлу.","Потрібно надати доступ до вашого файлу.","Потрібно надати доступ до вашого файлу."], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Для доступу до додатку потрібний спільний доступ.","Для доступу до додатків потрібний спільний доступ.","Для доступу до додатків потрібний спільний доступ.","Для доступу до додатків потрібний спільний доступ."], "Close" : "Закрити", - "Show more details" : "Збільшити деталізацію", + "Show more details" : "Докладніше", "Subscribe to {name}" : "Підписатися на {name}", - "Download {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" : "Початок доби у день старту події", + "Export {name}" : "Експортувати {name}", + "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} після початку події", @@ -269,80 +468,120 @@ "_%n time_::_%n times_" : ["%n раз","%n разів","%n разів","%n рази"], "Untitled event" : "Подія без назви", "Untitled task" : "Завдання без назви", - "Please ask your administrator to enable the Tasks App." : "Зверніться до вашого адміністратора щодо увімкнення застосунку Завдання", - "next year" : "наступного року", - "today" : "сьогодні", + "Please ask your administrator to enable the Tasks App." : "Зверніться до вашого адміністратора щодо увімкнення застосунку \"Завдання\".", + "W" : "Тиж. ", + "%n more" : "Ще %n подій", + "No events to display" : "Відсутні події для показу", "_+%n more_::_+%n more_" : ["+%n раз ще","+%n разів ще","+%n разів ще","+%n рази ще"], - "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." : "Видимість цієї події при поширенні календаря.", - "Location" : "Місце", + "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" : "Кімната для занять", + "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" : "Додати розташування", - "Description" : "Опис", "Add a description" : "Додати опис", "Status" : "Статус", "Confirmed" : "Підтверджено", - "Tentative" : "Попередній", "Canceled" : "Скасовано", "Confirmation about the overall status of the event." : "Підтвердження загального статусу події.", "Show as" : "Показати як", - "Take this event into account when calculating free-busy information." : "Брати до уваги цю подію при розрахунку інформації про вильний/зайнятий час.", - "Free" : "Вільно", + "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}", + "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" : "Помилка під час отримання інформації про файл", + "Chat room for event" : "Кімната чату для події", + "An error occurred, unable to delete the calendar." : "Помилка: неможливо вилучити календар.", + "Imported {filename}" : "Імпортовано {filename}", + "This is an event reminder." : "Це нагадування про подію.", "Meditation" : "Медитація", - "Relaxing" : "Розслаблення", - "Relax" : "Розслабитися", + "Relaxing" : "Відпочинок", + "Relax" : "Відпочити", + "Break" : "Перерва", + "Commute" : "Поїздка", + "Commuting" : "В дорозі", + "Shuttle" : "Автобус", + "Invoice" : "Рахунок", + "Finance" : "Гроші", + "Bank" : "Банк", + "Money" : "Гроші", + "Wedding" : "Весілля", + "Dog" : "Пес", + "Concert" : "Концерт", + "Festival" : "Фестиваль", + "Theater" : "Театр", + "Theatre" : "Театр", "Presentation" : "Презентація", - "Present" : "Презентувати", - "Camping" : "Лагер", - "Camp" : "Лагер", + "Talk" : "Розмова", + "Speech" : "Промова", + "Deadline" : "Реченець", + "Submission" : "Подання", + "Reporting" : "Звітування", + "Camping" : "За містом", + "Camp" : "На природі", + "Election" : "Вибори", + "Voting" : "Голосування", + "Vote" : "Голосувати", + "Barbecue" : "Барбекю", + "Barbeque" : "Барбекю", + "Garden" : "Сад", + "Farm" : "Ферма", "Movie" : "Фільм", - "Cinema" : "Кінотеатр", + "Cinema" : "Кіно", "Graduation" : "Випускний", - "Brainstorm" : "Мозговий штурм", - "Baseball" : "Бейзбол", - "Meet" : "Зустріти", - "Planning" : "Планується", + "Brainstorm" : "Обговорення", + "Review" : "Перегляд", + "Audit" : "Аудит", + "Inspection" : "Перевірка", + "Proofreading" : "Вичитка", + "Baseball" : "Бейсбол", + "Meet" : "Зустріч", + "Planning" : "Планування", "Pointing" : "Призначено", "Retrospective" : "Ретроспектива", - "Review" : "На перегляд", - "Office" : "Офіс", + "Office" : "Робота", "Contributor week" : "Тиждень постачальника", - "Party" : "Вечірка", - "Celebration" : "Святкування", "Mail" : "Пошта", "Soccer" : "Футбол", "Football" : "Американський футбол", "Gaming" : "Ігри", - "Play" : "Грати", - "Game" : "Гра", - "Drive" : "Їхати автомобілем", - "Bicycle" : "Їхати велосипедом", - "Cycle" : "Їхати колесами", - "Biking" : "Їхати мотоциклом", + "Drive" : "Автівка", + "Driving" : "Водіння", + "Bicycle" : "Велосипед", + "Cycle" : "Колісний транспорт", + "Cycling" : "Велосипед", + "Biking" : "Мотоцикл", + "Bike" : "Велосипед", "Podcast" : "Подкаст", "Basketball" : "Баскетбол", - "Fishing" : "Рибалити", - "Hiking" : "Пішки", + "Fishing" : "Рибалка", + "Hiking" : "Ходьба", "Hike" : "Похід", "Art" : "Мистецтво", "Exhibition" : "Виставка", "Museum" : "Музей", "Pilates" : "Пілатес", "Park" : "Парк", + "Walk" : "Прогулянка", "Studying" : "Навчання", "Doctor" : "Лікар", "Health" : "Здоров'я", "Dentist" : "Стоматолог", + "Hospital" : "Лікарня", "Interview" : "Співбесіда", "Training" : "Тренування", "Practice" : "Практика", @@ -353,7 +592,10 @@ "Gym" : "Тренажерний зал", "Barber" : "Перукар", "Haircut" : "Зачіска", + "Hairdresser" : "Перукар", "Exam" : "Іспит", + "Written test" : "Письмовий тест", + "Oral test" : "Усний тест", "Working" : "Працюю", "New Years Eve" : "Новий рік", "NYE" : "Новий рік", @@ -372,20 +614,27 @@ "Conference" : "Конференція", "Pizza" : "Піцца", "Travelling" : "Подорожую", + "Trip" : "Поїздка", "Journey" : "Подорож", "Collaborate" : "Співпраця", "Pair" : "Пара", "Lecture" : "Лекція", "Seminar" : "Семінар", + "Teaching" : "Викладання", "Photograph" : "Фотограф", + "Party" : "Вечірка", + "Celebration" : "Святкування", "Celebrate" : "Святкування", + "Birthday" : "Дата народження", "Shopping" : "Шопінг", + "Groceries" : "Бакалія", "Skate" : "Ковзани", "Skateboard" : "Скейт", "Wine tasting" : "Дегустація", "Golf" : "Гольф", "Dinner" : "Вечеря", "Lunch" : "Обід", - "Global" : "Загальний" + "Appointment not found" : "Запрошення на зустріч не знайдено", + "User not found" : "Користувача не знайдено" },"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 6e62bf119a..2297867788 100644 --- a/l10n/ur_PK.js +++ b/l10n/ur_PK.js @@ -3,25 +3,36 @@ OC.L10N.register( { "Cheers!" : "واہ!", "Calendar" : "کیلنڈر", + "Personal" : "شخصی", "Today" : "آج", "Week" : "ہفتہ", "Month" : "ماہ", - "Download" : "ڈاؤن لوڈ", + "Edit" : "تدوین کریں", "Delete" : "حذف کریں", + "New calendar" : "جدید کیلنڈر", + "Name" : "اسم", + "Deleted" : "حذف شدہ ", + "Restore" : "بحال", "Share link" : "اشتراک لنک", "can edit" : "تبدیل کر سکے ھیں", - "New calendar" : "جدید کیلنڈر", + "Save" : "حفظ", "Cancel" : "منسوخ کریں", + "Location" : "مقام", + "Description" : "تصریح", + "Add" : "شامل کریں", + "Monday" : "سوموار", + "Tuesday" : "منگل", + "Wednesday" : "بدھ", + "Thursday" : "جمعرات", + "Friday" : "جمعہ", + "Saturday" : "ہفتہ", + "Sunday" : "اتوار", "Email" : "email", - "never" : "never", "Repeat" : "دہرایں", - "Monday" : "سوموار", + "never" : "never", "More" : "مزید", - "Save" : "حفظ", - "Personal" : "شخصی", "Close" : "بند ", - "today" : "آج", - "Location" : "مقام", - "Description" : "تصریح" + "Other" : "دیگر", + "Birthday" : "سالگرہ" }, "nplurals=2; plural=(n != 1);"); diff --git a/l10n/ur_PK.json b/l10n/ur_PK.json index 73551d77ce..7130fadcf8 100644 --- a/l10n/ur_PK.json +++ b/l10n/ur_PK.json @@ -1,25 +1,36 @@ { "translations": { "Cheers!" : "واہ!", "Calendar" : "کیلنڈر", + "Personal" : "شخصی", "Today" : "آج", "Week" : "ہفتہ", "Month" : "ماہ", - "Download" : "ڈاؤن لوڈ", + "Edit" : "تدوین کریں", "Delete" : "حذف کریں", + "New calendar" : "جدید کیلنڈر", + "Name" : "اسم", + "Deleted" : "حذف شدہ ", + "Restore" : "بحال", "Share link" : "اشتراک لنک", "can edit" : "تبدیل کر سکے ھیں", - "New calendar" : "جدید کیلنڈر", + "Save" : "حفظ", "Cancel" : "منسوخ کریں", + "Location" : "مقام", + "Description" : "تصریح", + "Add" : "شامل کریں", + "Monday" : "سوموار", + "Tuesday" : "منگل", + "Wednesday" : "بدھ", + "Thursday" : "جمعرات", + "Friday" : "جمعہ", + "Saturday" : "ہفتہ", + "Sunday" : "اتوار", "Email" : "email", - "never" : "never", "Repeat" : "دہرایں", - "Monday" : "سوموار", + "never" : "never", "More" : "مزید", - "Save" : "حفظ", - "Personal" : "شخصی", "Close" : "بند ", - "today" : "آج", - "Location" : "مقام", - "Description" : "تصریح" + "Other" : "دیگر", + "Birthday" : "سالگرہ" },"pluralForm" :"nplurals=2; plural=(n != 1);" } \ No newline at end of file diff --git a/l10n/vi.js b/l10n/vi.js index 05c3c0b452..9ed6ed0d91 100644 --- a/l10n/vi.js +++ b/l10n/vi.js @@ -5,54 +5,97 @@ OC.L10N.register( "Provided email-address is not valid" : "Thư điện tử được cung cấp không khả dụng", "%s has published the calendar »%s«" : "%s vừa đăng tải thông tin vào lịch »%s«", "Unexpected error sending email. Please contact your administrator." : "Một lỗi không mong đợi khi đang gửi thư điện tử. Vui lòng liên hệ quản trị viên của bạn", - "Successfully sent email to " : "Đã hoàn thành việc gửi thư điện tử đến", + "Successfully sent email to %1$s" : "Đã gửi email thành công đến %1$s", "Hello," : "Xin chào,", - "We wanted to inform you that %s has published the calendar »%s«." : "Chúng tôi muốn thông báo với bạn rằng %s vừa đăng tải thông tin vào lịch calendar »%s«.", + "We wanted to inform you that %s has published the calendar »%s«." : "Chúng tôi muốn thông báo với bạn rằng %s vừa đăng tải thông tin vào lịch »%s«.", "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", + "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", + "This confirmation link expires in %s hours." : "Liên kết xác nhận sẽ hết hạn trong %s giờ.", + "Date:" : "Ngày:", + "Where:" : "Địa điểm:", + "Anniversary" : "Ngày kỷ niệm", + "Appointment" : "Cuộc hẹn", + "Business" : "Doanh nghiệp", + "Education" : "Giáo dục", + "Holiday" : "Ngày lễ", + "Meeting" : "Cuộc họp", + "Miscellaneous" : "Hỗn hợp", + "Non-working hours" : "Ngoài giờ làm việc", + "Not in office" : "Ngoài văn phòng", + "Personal" : "Cá nhân", + "Phone call" : "Cuộc gọi", + "Sick day" : "Ngày nghỉ ốm", + "Special occasion" : "Dịp đặc biệt", + "Travel" : "Du lịch", + "Vacation" : "Kì nghỉ", "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", - "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ư", - "Download" : "Tải về", - "Unshare from me" : "Gỡ chia sẻ khỏi tôi", + "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 đề", "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.", "_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"], + "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://)", + "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", + "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.", + "Trash bin" : "Thùng rác", + "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", + "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?", + "Could not update calendar order." : "Không thể cập nhật thứ tự của lịch", "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", @@ -64,57 +107,105 @@ OC.L10N.register( "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", "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", - "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://)", - "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", "Calendar to import into" : "Lịch để nhập vào", "Cancel" : "Hủy", "_Import calendar_::_Import calendars_" : ["Nhập lịch"], - "{filename} is an unsupported file-type" : "{filename} là một kiểu loại tệp không được hỗ trợ", "{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 thành công"], + "_Successfully imported %n event_::_Successfully imported %n events_" : ["%n sự kiện đã được nhập vào thành công"], "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", + "Views" : "Lượt xem", "Day view" : "Xem theo ngày", "Week view" : "Xem theo tuần", "Month view" : "Xem theo tháng", + "List view" : "Xem theo danh sách", "Actions" : "Hành động", "Create event" : "Tạo sự kiện mới", - "Show shortcuts" : "Hiển thị các lối tắt", + "Show shortcuts" : "Hiển thị các phím tắt", + "Editor" : "Trình biên tập", + "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", "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", + "Default reminder" : "Nhác hẹn mặc định", "Copy primary CalDAV address" : "Sao chép địa chỉ CalDAV chính", "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", - "Settings & import" : "Thiết lập & Nhập vào", + "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ờ"], + "_{duration} day_::_{duration} days_" : ["{duration} ngày"], + "_{duration} week_::_{duration} weeks_" : ["{duration} tuần"], + "_{duration} month_::_{duration} months_" : ["{duration} tháng"], + "_{duration} year_::_{duration} years_" : ["{duration} năm"], + "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", + "Location" : "Vị trí", + "Description" : "Mô tả", + "Visibility" : "Hiển thị", + "Duration" : "Khoảng thời gian", + "Increments" : "Tăng thêm", + "Additional calendars to check for conflicts" : "Lịch phụ để kiểm tra trùng lặp", + "Pick time ranges where appointments are allowed" : "Chọn khoản thời gian khả dĩ cho các cuộc hẹn", + "to" : "đến", + "Delete slot" : "Xoá suất", + "No times set" : "Thời gian không được thiết lập", + "Add" : "Thêm", + "Monday" : "Thứ 2", + "Tuesday" : "Thứ ba", + "Wednesday" : "Thứ tư", + "Thursday" : "Thứ năm", + "Friday" : "Thứ sáu", + "Saturday" : "Thứ bảy", + "Sunday" : "Chủ Nhật", + "Add time before and after the event" : "Thêm thời gian trước và sau sự kiện", + "Before the event" : "Trước sự kiện", + "After the event" : "Sau sự kiện", + "Planning restrictions" : "Các loại trừ cho kế hoạch", + "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", + "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", "before at" : "trước lúc", "Notification" : "Thông báo", "Email" : "Thư điện tử", @@ -128,54 +219,64 @@ OC.L10N.register( "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"], - "No reminders yet" : "Chưa có lịch nhắc hẹn nào ", + "Delete file" : "Xóa tệp", + "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", + "Invitation accepted" : "Lời mời đã được chấp nhận", + "Available" : "khả dụng", + "Suggested" : "Được đề xuất", + "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}", + "Checking availability" : "Đang kiểm tra lịch trống", "Availability of attendees, resources and rooms" : "Tình trạng tham gia của người dự, nguồn lực và phòng ", + "{organizer} (organizer)" : "{organizer} (người tổ chức)", + "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", - "{name} accepted your invitation." : "{name} đã chấp nhận lời mởi của bạn.", - "{name} accepted {organizerName}'s invitation." : "{name} đã chấp nhận lời mời của {organizerName}", - "{name} declined your invitation." : "{name} đã từ chối lời mơi của bạn", - "{name} declined {organizerName}'s invitation." : "{name} đã từ chối lời mời của {organizerName}", - "{name} has delegated their invitation." : "{name} đã ủy thác lời mời của họ", - "{name} marked their participation as tentative." : "{name} đã đánh dấu sự tham dự của họ với trạng thái không chắc chắn", - "{name} did not respond to your invitation yet." : "{name} chưa trả lời lời mời của bạn", - "{name} did not respond to {organizerName}'s invitation yet." : "{name} chưa trả lời cho lời mời của {organizerName}", + "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 e-mail" : "Gửi email", + "Send email" : "Gửi email", "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 e-mails, users, contacts, resources or rooms" : "Tìm kiếm cho email, người dùng, liên hệ, nguồn lực hoặc phòng ốc", + "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", - "No attendees yet" : "Chưa có giờ tham gia", "(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", - "Can not modify all-day setting for events that are part of a recurrence-set." : "Không thể chỉnh sửa thiết lập cho cả-ngày dành cho các sự kiện có một phần là của sự kiện lặp lại", + "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}", + "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", "never" : "không thay đổi", "on date" : "vào ngày", "after" : "sau khi", "_time_::_times_" : ["lần"], - "This event is the recurrence-exception of a recurrence-set. You can not add a recurrence-rule to it." : "Sự kiện này là một sự kiện không có trong chũi sự kiện lặp lại. bạn không thể thêm vào một luật lệ lặp lại cho nó. ", + "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ư", @@ -183,70 +284,88 @@ OC.L10N.register( "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" : "Lặp lại", "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", + "On the" : "Trên", "_month_::_months_" : ["tháng"], "_year_::_years_" : ["năm"], - "Monday" : "Thứ 2", "weekday" : "ngày làm việc", "weekend day" : "ngày cuối tuần", - "Summary" : "tóm tắt", - "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 Nextcloud. 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 ", - "More" : "hơn", - "Save" : "Lưu", - "Update" : "Cập nhật", + "No recurrence" : "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", + "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", + "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", "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 timezone:" : "Vui lòng chọn múi giờ:", - "Pick a time" : "chọn thời gian", + "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}", - "from {formattedDate} at {formattedTime}" : "từ {formattedDate} vào lúc {formattedTime}", + "from {formattedDate} at {formattedTime}" : "từ {formattedDate} vào lúc {formattedTime}", "to {formattedDate} at {formattedTime}" : "đến {formattedDate} vào lúc {formattedTime}", "on {formattedDate} at {formattedTime}" : "vào {formattedDate} vào lúc {formattedTime}", "{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", - "Type to search timezone" : "Nhập để tìm kiếm múi giờ", - "Personal" : "Cá nhân", - "The automatic timezone detection determined your timezone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your timezone manually in the calendar settings." : "Tự động phát hiện múi giờ xác định múi giờ của bạn trên hệ thống UTC. \nĐây gần như là một trong những kết quả của các phương thức bảo mật của trình duyệt của bạn.\nVui lòng đặt múi giờ của bạn một cách thủ công trong các thiết lập của Lịch. ", - "Your configured timezone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your timezone in the settings and report this issue." : "Múi giờ được cấu hình của bạn ({timezoneId}) không được tìm thấy. Đang trở về lại hệ thống UTC.\nVui lòng thay đổi múi giờ của bạn trong Thiết lập và báo cáo vấn đề này. ", - "No more events today" : "Không có thêm sự kiện nào hôm nay", + "Type to search time zone" : "Nhập để kiếm cho múi thời gian", + "Global" : "Chung", + "Subscribed" : "Đã đăng ký", + "Subscribe" : "Theo dõi", + "Select date" : "Chọn ngày", + "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", + "Appointment Details:" : "Chi tiết cuộc hẹn:", + "Time:" : "Thời gian:", + "Booked for:" : "Đã đặt cho:", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "Cảm ơn. Lịch hẹn của bạn từ {startDate} đến {endDate} đã được xác nhận.", + "Book another appointment:" : "Đặt một cuộc hẹn khác:", + "See all available slots" : "Hiển thị toàn bộ các suất trống ", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "Suất cho cuộc hẹn của bạn từ {startDate} đến {endDate} hiện không còn trống.", + "Please book a different slot:" : "Vui lòng đặt một suất khác:", + "Book an appointment with {name}" : "Đặt một cuộc hẹn với {name}", + "No public appointments found for {name}" : "Không cuộc hẹn công khai nào cho {name} được tìm thấy", + "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. ", + "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", "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", + "Invite" : "Mời", "Attendees" : "Người tham gia", - "Reminders" : "Nhắc nhở", + "Resources" : "Các nguồn lực", "Close" : "Đóng", "Show more details" : "Cho thấy thêm chi tiết", "Subscribe to {name}" : "Dõi theo {name}", - "Download {name}" : "Tải xuống {name}", - "Anniversary" : "Ngày kỷ niệm", - "Appointment" : "Cuộc hẹn", - "Business" : "Doanh nghiệp", - "Education" : "Giáo dục", - "Holiday" : "Ngày lễ", - "Meeting" : "Cuộc họp", - "Miscellaneous" : "Hỗn hợp", - "Non-working hours" : "Ngoài giờ làm việc", - "Not in office" : "Ngoài văn phòng", - "Phone call" : "Cuộc gọi", - "Sick day" : "Ngày nghỉ ốm", - "Special occasion" : "Dịp đặc biệt", - "Travel" : "Du lịch", - "Vacation" : "Kì nghỉ", "Midnight on the day the event starts" : "Giữa đêm vào ngày mà sự kiện bắt đầu", "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n ngày trước khi sự kiện bắt đầu vào lúc {formattedHourMinute}"], "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n tuần trước khi sự kiện bắt đầu vào lúc {formattedHourMinute}"], "on the day of the event at {formattedHourMinute}" : "vào ngày sự kiện bắt đầu vào lúc {formattedHourMinute}", - "at the event's start" : "Vào lúc sự kiện bắt đầu", + "at the event's start" : "vào lúc sự kiện bắt đầu", "at the event's end" : "vào lúc sự kiện kết thúc", "{time} before the event starts" : "{time} trước khi sự kiện bắt đầu", "{time} before the event ends" : "{time} trước khi sự kiện kết thúc", @@ -266,7 +385,7 @@ OC.L10N.register( "_Every %n year_::_Every %n years_" : ["Mỗi %n năm"], "_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}", + "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}", @@ -274,77 +393,99 @@ OC.L10N.register( "Untitled event" : "Sự kiện không tiêu đề", "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 tới", - "today" : "hôm nay", - "list" : "danh sách", - "W" : "w", - "all-day" : "nguyên-ngày", + "W" : "T", "%n more" : "thêm %n", "No events to display" : "không có sự kiện để hiển thị", "_+%n more_::_+%n more_" : ["+ thêm %n "], - "No events" : "không có sự kiện", + "No events" : "Không có sự kiện", "Create a new event or change the visible time-range" : "Tạo sự kiện mới hoặc thay đổi khung thời gian hiển thị", "It might have been deleted, or there was a typo in a link" : "Đường dẫn có thể đã bị xóa, hoặc đã có lỗi đánh máy trong liên kết", "It might have been deleted, or there was a typo in the link" : "Đường dẫn có thể đã bị xóa, hoặc đã có lỗi đánh máy trong liên kết", - "When shared show" : "Khi được chia sẻ thì cho thấy", - "When shared show full event" : "Khi được chia sẻ thì cho thấy đầy đủ sự kiện", - "When shared show only busy" : "Khi được chia sẻ thì chỉ cho thấy đang bận", + "Meeting room" : "Phòng họp", + "Lecture hall" : "Giảng đường", + "Seminar room" : "Phòng hội nghị", + "Other" : "Khác", + "When shared show" : "Khi được chia sẻ thì hiển thị", + "When shared show full event" : "Khi được chia sẻ thì hiển thị đầy đủ sự kiện", + "When shared show only busy" : "Khi được chia sẻ thì chỉ hiển thị đang bận", "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ẻ", - "Location" : "Vị trí", "Add a location" : "Thêm vào một địa điểm", - "Description" : "Mô tả", "Add a description" : "Thêm vào một mô tả", "Status" : "Trạng thái", "Confirmed" : "Đã xác nhận", - "Tentative" : "Chưa chắc chắn", "Canceled" : "Đã bị hủy", - "Confirmation about the overall status of the event." : "Sự xác nhận về tình trạng tổng thể của sự kiện.", - "Show as" : "Cho thấy với", - "Take this event into account when calculating free-busy information." : "Lưu ý sự kiện này vào tài khoản khi tính toán về thông tin bận-rãnh", - "Free" : "Rãnh", + "Confirmation about the overall status of the event." : "Xác nhận về tình trạng tổng thể của sự kiện.", + "Show as" : "Hiển thị như", + "Take this event into account when calculating free-busy information." : "Lưu ý đến sự kiện này khi tính toán về thông tin bận-rãnh", "Categories" : "Các hạng mục", "Categories help you to structure and organize your events." : "Các hạng mục này giúp bạn lên sườn và sắp xếp các sự kiện của bạn", "Search or add categories" : "Tìm kiếm và thêm vào các hạng mục", "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", + "Error while sharing file" : "Lỗi khi chia sẻ tệp", "Chat room for event" : "Phòng trò chuyện cho sự kiện", + "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" : "Thư giã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", - "Present" : "Trình bày", + "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", - "Review" : "Đánh giá", "Office" : "Văn phòng", "Contributor week" : "Tuần lễ đóng góp", - "Party" : "Tiệc tùng", - "Celebration" : "Lễ kỉ niệm", "Mail" : "Thư điện tử", "Soccer" : "Đá banh", "Football" : "Bóng bầu dục", "Gaming" : "Chơi game", - "Play" : "Play", - "Game" : "Trò chơi", "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á", @@ -355,10 +496,12 @@ OC.L10N.register( "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", @@ -369,10 +512,13 @@ OC.L10N.register( "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" : "NYE", + "NYE" : "Giao thừa", "Fireworks" : "Pháo hoa", "Running" : "Chạy bộ", "Go for a run" : "Đi chạy bộ", @@ -388,20 +534,27 @@ OC.L10N.register( "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", - "Global" : "Chung" + "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" }, "nplurals=1; plural=0;"); diff --git a/l10n/vi.json b/l10n/vi.json index f4f23fdf8e..fb8bf01860 100644 --- a/l10n/vi.json +++ b/l10n/vi.json @@ -3,54 +3,97 @@ "Provided email-address is not valid" : "Thư điện tử được cung cấp không khả dụng", "%s has published the calendar »%s«" : "%s vừa đăng tải thông tin vào lịch »%s«", "Unexpected error sending email. Please contact your administrator." : "Một lỗi không mong đợi khi đang gửi thư điện tử. Vui lòng liên hệ quản trị viên của bạn", - "Successfully sent email to " : "Đã hoàn thành việc gửi thư điện tử đến", + "Successfully sent email to %1$s" : "Đã gửi email thành công đến %1$s", "Hello," : "Xin chào,", - "We wanted to inform you that %s has published the calendar »%s«." : "Chúng tôi muốn thông báo với bạn rằng %s vừa đăng tải thông tin vào lịch calendar »%s«.", + "We wanted to inform you that %s has published the calendar »%s«." : "Chúng tôi muốn thông báo với bạn rằng %s vừa đăng tải thông tin vào lịch »%s«.", "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", + "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", + "This confirmation link expires in %s hours." : "Liên kết xác nhận sẽ hết hạn trong %s giờ.", + "Date:" : "Ngày:", + "Where:" : "Địa điểm:", + "Anniversary" : "Ngày kỷ niệm", + "Appointment" : "Cuộc hẹn", + "Business" : "Doanh nghiệp", + "Education" : "Giáo dục", + "Holiday" : "Ngày lễ", + "Meeting" : "Cuộc họp", + "Miscellaneous" : "Hỗn hợp", + "Non-working hours" : "Ngoài giờ làm việc", + "Not in office" : "Ngoài văn phòng", + "Personal" : "Cá nhân", + "Phone call" : "Cuộc gọi", + "Sick day" : "Ngày nghỉ ốm", + "Special occasion" : "Dịp đặc biệt", + "Travel" : "Du lịch", + "Vacation" : "Kì nghỉ", "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", - "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ư", - "Download" : "Tải về", - "Unshare from me" : "Gỡ chia sẻ khỏi tôi", + "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 đề", "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.", "_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"], + "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://)", + "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", + "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.", + "Trash bin" : "Thùng rác", + "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", + "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?", + "Could not update calendar order." : "Không thể cập nhật thứ tự của lịch", "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", @@ -62,57 +105,105 @@ "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", "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", - "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://)", - "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", "Calendar to import into" : "Lịch để nhập vào", "Cancel" : "Hủy", "_Import calendar_::_Import calendars_" : ["Nhập lịch"], - "{filename} is an unsupported file-type" : "{filename} là một kiểu loại tệp không được hỗ trợ", "{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 thành công"], + "_Successfully imported %n event_::_Successfully imported %n events_" : ["%n sự kiện đã được nhập vào thành công"], "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", + "Views" : "Lượt xem", "Day view" : "Xem theo ngày", "Week view" : "Xem theo tuần", "Month view" : "Xem theo tháng", + "List view" : "Xem theo danh sách", "Actions" : "Hành động", "Create event" : "Tạo sự kiện mới", - "Show shortcuts" : "Hiển thị các lối tắt", + "Show shortcuts" : "Hiển thị các phím tắt", + "Editor" : "Trình biên tập", + "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", "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", + "Default reminder" : "Nhác hẹn mặc định", "Copy primary CalDAV address" : "Sao chép địa chỉ CalDAV chính", "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", - "Settings & import" : "Thiết lập & Nhập vào", + "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ờ"], + "_{duration} day_::_{duration} days_" : ["{duration} ngày"], + "_{duration} week_::_{duration} weeks_" : ["{duration} tuần"], + "_{duration} month_::_{duration} months_" : ["{duration} tháng"], + "_{duration} year_::_{duration} years_" : ["{duration} năm"], + "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", + "Location" : "Vị trí", + "Description" : "Mô tả", + "Visibility" : "Hiển thị", + "Duration" : "Khoảng thời gian", + "Increments" : "Tăng thêm", + "Additional calendars to check for conflicts" : "Lịch phụ để kiểm tra trùng lặp", + "Pick time ranges where appointments are allowed" : "Chọn khoản thời gian khả dĩ cho các cuộc hẹn", + "to" : "đến", + "Delete slot" : "Xoá suất", + "No times set" : "Thời gian không được thiết lập", + "Add" : "Thêm", + "Monday" : "Thứ 2", + "Tuesday" : "Thứ ba", + "Wednesday" : "Thứ tư", + "Thursday" : "Thứ năm", + "Friday" : "Thứ sáu", + "Saturday" : "Thứ bảy", + "Sunday" : "Chủ Nhật", + "Add time before and after the event" : "Thêm thời gian trước và sau sự kiện", + "Before the event" : "Trước sự kiện", + "After the event" : "Sau sự kiện", + "Planning restrictions" : "Các loại trừ cho kế hoạch", + "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", + "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", "before at" : "trước lúc", "Notification" : "Thông báo", "Email" : "Thư điện tử", @@ -126,54 +217,64 @@ "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"], - "No reminders yet" : "Chưa có lịch nhắc hẹn nào ", + "Delete file" : "Xóa tệp", + "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", + "Invitation accepted" : "Lời mời đã được chấp nhận", + "Available" : "khả dụng", + "Suggested" : "Được đề xuất", + "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}", + "Checking availability" : "Đang kiểm tra lịch trống", "Availability of attendees, resources and rooms" : "Tình trạng tham gia của người dự, nguồn lực và phòng ", + "{organizer} (organizer)" : "{organizer} (người tổ chức)", + "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", - "{name} accepted your invitation." : "{name} đã chấp nhận lời mởi của bạn.", - "{name} accepted {organizerName}'s invitation." : "{name} đã chấp nhận lời mời của {organizerName}", - "{name} declined your invitation." : "{name} đã từ chối lời mơi của bạn", - "{name} declined {organizerName}'s invitation." : "{name} đã từ chối lời mời của {organizerName}", - "{name} has delegated their invitation." : "{name} đã ủy thác lời mời của họ", - "{name} marked their participation as tentative." : "{name} đã đánh dấu sự tham dự của họ với trạng thái không chắc chắn", - "{name} did not respond to your invitation yet." : "{name} chưa trả lời lời mời của bạn", - "{name} did not respond to {organizerName}'s invitation yet." : "{name} chưa trả lời cho lời mời của {organizerName}", + "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 e-mail" : "Gửi email", + "Send email" : "Gửi email", "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 e-mails, users, contacts, resources or rooms" : "Tìm kiếm cho email, người dùng, liên hệ, nguồn lực hoặc phòng ốc", + "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", - "No attendees yet" : "Chưa có giờ tham gia", "(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", - "Can not modify all-day setting for events that are part of a recurrence-set." : "Không thể chỉnh sửa thiết lập cho cả-ngày dành cho các sự kiện có một phần là của sự kiện lặp lại", + "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}", + "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", "never" : "không thay đổi", "on date" : "vào ngày", "after" : "sau khi", "_time_::_times_" : ["lần"], - "This event is the recurrence-exception of a recurrence-set. You can not add a recurrence-rule to it." : "Sự kiện này là một sự kiện không có trong chũi sự kiện lặp lại. bạn không thể thêm vào một luật lệ lặp lại cho nó. ", + "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ư", @@ -181,70 +282,88 @@ "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" : "Lặp lại", "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", + "On the" : "Trên", "_month_::_months_" : ["tháng"], "_year_::_years_" : ["năm"], - "Monday" : "Thứ 2", "weekday" : "ngày làm việc", "weekend day" : "ngày cuối tuần", - "Summary" : "tóm tắt", - "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 Nextcloud. 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 ", - "More" : "hơn", - "Save" : "Lưu", - "Update" : "Cập nhật", + "No recurrence" : "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", + "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", + "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", "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 timezone:" : "Vui lòng chọn múi giờ:", - "Pick a time" : "chọn thời gian", + "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}", - "from {formattedDate} at {formattedTime}" : "từ {formattedDate} vào lúc {formattedTime}", + "from {formattedDate} at {formattedTime}" : "từ {formattedDate} vào lúc {formattedTime}", "to {formattedDate} at {formattedTime}" : "đến {formattedDate} vào lúc {formattedTime}", "on {formattedDate} at {formattedTime}" : "vào {formattedDate} vào lúc {formattedTime}", "{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", - "Type to search timezone" : "Nhập để tìm kiếm múi giờ", - "Personal" : "Cá nhân", - "The automatic timezone detection determined your timezone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your timezone manually in the calendar settings." : "Tự động phát hiện múi giờ xác định múi giờ của bạn trên hệ thống UTC. \nĐây gần như là một trong những kết quả của các phương thức bảo mật của trình duyệt của bạn.\nVui lòng đặt múi giờ của bạn một cách thủ công trong các thiết lập của Lịch. ", - "Your configured timezone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your timezone in the settings and report this issue." : "Múi giờ được cấu hình của bạn ({timezoneId}) không được tìm thấy. Đang trở về lại hệ thống UTC.\nVui lòng thay đổi múi giờ của bạn trong Thiết lập và báo cáo vấn đề này. ", - "No more events today" : "Không có thêm sự kiện nào hôm nay", + "Type to search time zone" : "Nhập để kiếm cho múi thời gian", + "Global" : "Chung", + "Subscribed" : "Đã đăng ký", + "Subscribe" : "Theo dõi", + "Select date" : "Chọn ngày", + "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", + "Appointment Details:" : "Chi tiết cuộc hẹn:", + "Time:" : "Thời gian:", + "Booked for:" : "Đã đặt cho:", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "Cảm ơn. Lịch hẹn của bạn từ {startDate} đến {endDate} đã được xác nhận.", + "Book another appointment:" : "Đặt một cuộc hẹn khác:", + "See all available slots" : "Hiển thị toàn bộ các suất trống ", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "Suất cho cuộc hẹn của bạn từ {startDate} đến {endDate} hiện không còn trống.", + "Please book a different slot:" : "Vui lòng đặt một suất khác:", + "Book an appointment with {name}" : "Đặt một cuộc hẹn với {name}", + "No public appointments found for {name}" : "Không cuộc hẹn công khai nào cho {name} được tìm thấy", + "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. ", + "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", "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", + "Invite" : "Mời", "Attendees" : "Người tham gia", - "Reminders" : "Nhắc nhở", + "Resources" : "Các nguồn lực", "Close" : "Đóng", "Show more details" : "Cho thấy thêm chi tiết", "Subscribe to {name}" : "Dõi theo {name}", - "Download {name}" : "Tải xuống {name}", - "Anniversary" : "Ngày kỷ niệm", - "Appointment" : "Cuộc hẹn", - "Business" : "Doanh nghiệp", - "Education" : "Giáo dục", - "Holiday" : "Ngày lễ", - "Meeting" : "Cuộc họp", - "Miscellaneous" : "Hỗn hợp", - "Non-working hours" : "Ngoài giờ làm việc", - "Not in office" : "Ngoài văn phòng", - "Phone call" : "Cuộc gọi", - "Sick day" : "Ngày nghỉ ốm", - "Special occasion" : "Dịp đặc biệt", - "Travel" : "Du lịch", - "Vacation" : "Kì nghỉ", "Midnight on the day the event starts" : "Giữa đêm vào ngày mà sự kiện bắt đầu", "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n ngày trước khi sự kiện bắt đầu vào lúc {formattedHourMinute}"], "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n tuần trước khi sự kiện bắt đầu vào lúc {formattedHourMinute}"], "on the day of the event at {formattedHourMinute}" : "vào ngày sự kiện bắt đầu vào lúc {formattedHourMinute}", - "at the event's start" : "Vào lúc sự kiện bắt đầu", + "at the event's start" : "vào lúc sự kiện bắt đầu", "at the event's end" : "vào lúc sự kiện kết thúc", "{time} before the event starts" : "{time} trước khi sự kiện bắt đầu", "{time} before the event ends" : "{time} trước khi sự kiện kết thúc", @@ -264,7 +383,7 @@ "_Every %n year_::_Every %n years_" : ["Mỗi %n năm"], "_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}", + "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}", @@ -272,77 +391,99 @@ "Untitled event" : "Sự kiện không tiêu đề", "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 tới", - "today" : "hôm nay", - "list" : "danh sách", - "W" : "w", - "all-day" : "nguyên-ngày", + "W" : "T", "%n more" : "thêm %n", "No events to display" : "không có sự kiện để hiển thị", "_+%n more_::_+%n more_" : ["+ thêm %n "], - "No events" : "không có sự kiện", + "No events" : "Không có sự kiện", "Create a new event or change the visible time-range" : "Tạo sự kiện mới hoặc thay đổi khung thời gian hiển thị", "It might have been deleted, or there was a typo in a link" : "Đường dẫn có thể đã bị xóa, hoặc đã có lỗi đánh máy trong liên kết", "It might have been deleted, or there was a typo in the link" : "Đường dẫn có thể đã bị xóa, hoặc đã có lỗi đánh máy trong liên kết", - "When shared show" : "Khi được chia sẻ thì cho thấy", - "When shared show full event" : "Khi được chia sẻ thì cho thấy đầy đủ sự kiện", - "When shared show only busy" : "Khi được chia sẻ thì chỉ cho thấy đang bận", + "Meeting room" : "Phòng họp", + "Lecture hall" : "Giảng đường", + "Seminar room" : "Phòng hội nghị", + "Other" : "Khác", + "When shared show" : "Khi được chia sẻ thì hiển thị", + "When shared show full event" : "Khi được chia sẻ thì hiển thị đầy đủ sự kiện", + "When shared show only busy" : "Khi được chia sẻ thì chỉ hiển thị đang bận", "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ẻ", - "Location" : "Vị trí", "Add a location" : "Thêm vào một địa điểm", - "Description" : "Mô tả", "Add a description" : "Thêm vào một mô tả", "Status" : "Trạng thái", "Confirmed" : "Đã xác nhận", - "Tentative" : "Chưa chắc chắn", "Canceled" : "Đã bị hủy", - "Confirmation about the overall status of the event." : "Sự xác nhận về tình trạng tổng thể của sự kiện.", - "Show as" : "Cho thấy với", - "Take this event into account when calculating free-busy information." : "Lưu ý sự kiện này vào tài khoản khi tính toán về thông tin bận-rãnh", - "Free" : "Rãnh", + "Confirmation about the overall status of the event." : "Xác nhận về tình trạng tổng thể của sự kiện.", + "Show as" : "Hiển thị như", + "Take this event into account when calculating free-busy information." : "Lưu ý đến sự kiện này khi tính toán về thông tin bận-rãnh", "Categories" : "Các hạng mục", "Categories help you to structure and organize your events." : "Các hạng mục này giúp bạn lên sườn và sắp xếp các sự kiện của bạn", "Search or add categories" : "Tìm kiếm và thêm vào các hạng mục", "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", + "Error while sharing file" : "Lỗi khi chia sẻ tệp", "Chat room for event" : "Phòng trò chuyện cho sự kiện", + "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" : "Thư giã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", - "Present" : "Trình bày", + "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", - "Review" : "Đánh giá", "Office" : "Văn phòng", "Contributor week" : "Tuần lễ đóng góp", - "Party" : "Tiệc tùng", - "Celebration" : "Lễ kỉ niệm", "Mail" : "Thư điện tử", "Soccer" : "Đá banh", "Football" : "Bóng bầu dục", "Gaming" : "Chơi game", - "Play" : "Play", - "Game" : "Trò chơi", "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á", @@ -353,10 +494,12 @@ "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", @@ -367,10 +510,13 @@ "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" : "NYE", + "NYE" : "Giao thừa", "Fireworks" : "Pháo hoa", "Running" : "Chạy bộ", "Go for a run" : "Đi chạy bộ", @@ -386,20 +532,27 @@ "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", - "Global" : "Chung" + "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" },"pluralForm" :"nplurals=1; plural=0;" } \ No newline at end of file diff --git a/l10n/zh_CN.js b/l10n/zh_CN.js index e0e3f2734e..e307a8c1da 100644 --- a/l10n/zh_CN.js +++ b/l10n/zh_CN.js @@ -1,96 +1,172 @@ OC.L10N.register( "calendar", { - "User-Session unexpectedly expired" : "用户会话已意外过期", + "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 " : "成功发送邮件到", + "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" : "即将到来的事件", + "More events" : "更多事件", + "No more events today" : "今天没有更多事件", + "No upcoming 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" : "确认", + "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:" : "日期:", + "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)与您预约了。", + "Anniversary" : "周年", + "Appointment" : "预约", + "Business" : "商业", + "Education" : "教育", + "Holiday" : "节假日", + "Meeting" : "会议", + "Miscellaneous" : "杂项", + "Non-working hours" : "非工作时间", + "Not in office" : "不在办公室", + "Personal" : "个人", + "Phone call" : "电话通话", + "Sick day" : "病假", + "Special occasion" : "特殊场合", + "Travel" : "旅行", + "Vacation" : "假期", + "Custom Categories" : "自定义分类", + "Collaborative Tags" : "协作标签", + "Standard Categories" : "标准分类", "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) 库开发。", + "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" : "前一天", "Previous week" : "上周", + "Previous year" : "前一年", "Previous month" : "上个月", "Next day" : "后一天", "Next week" : "下周", + "Next year" : "下一年", "Next month" : "下个月", - "+ New event" : "+ 新事件", + "Event" : "事件", + "Create new event" : "创建新事件", "Today" : "今天", "Day" : "日", "Week" : "星期", "Month" : "月", + "Year" : "年", "List" : "列表", - "Untitled calendar" : "未命名的日历", - "Edit name" : "编辑名称", - "Saving name …" : "正在保存名称 …", - "Edit color" : "编辑颜色", - "Saving color …" : "正在保存颜色 …", - "Copy private link" : "复制私有链接", - "Download" : "下载", - "Unshare from me" : "我取消的共享", + "Preview" : "预览", + "Copy link" : "复制链接", + "Edit" : "编辑", "Delete" : "删除", + "Appointment link was copied to clipboard" : "预约链接已复制到剪贴板", + "Appointment link could not be copied to clipboard" : "无法将预约链接复制到剪贴板", + "Add new" : "新增", + "Untitled calendar" : "未命名的日历", + "Shared with you by" : "与您共享,由", + "Edit and share calendar" : "编辑并分享日历", + "Edit calendar" : "编辑日历", + "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." : "日历链接已复制到剪切板。", + "_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}秒后删除日历"], + "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" : "添加公众节假期日历", + "An error occurred, unable to create the calendar." : "发生了错误,无法创建日历。", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "请输入合法的链接(以http://、https://、webcal://、或者webcals://开头)", + "Copy subscription link" : "复制订阅链接", + "Copying link …" : "正在复制链接 ...", + "Copied link" : "已复制链接", + "Could not copy link" : "无法复制链接", + "Export" : "导出", + "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}秒内删除日历"], + "Trash bin" : "回收站", + "Loading deleted items." : "正在加载已删除的项目。", + "You do not have any deleted items." : "您没有任何已删除的项目。", + "Name" : "名称", + "Deleted" : "已删除", + "Restore" : "还原", + "Delete permanently" : "永久删除", + "Empty trash bin" : "清空回收站", + "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?" : "您真的想要清空回收站吗?", + "_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." : "无法更改日历顺序。", + "Internal link" : "内部链接", + "A private link that can be used with external clients" : "可以与外部客户端一起使用的私人链接", + "Copy internal link" : "复制内部链接", "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 …" : "正在删除共享链接 …", + "Deleting share link …" : "正在删除共享链接 ...", "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 could not be copied to clipboard." : "嵌入代码无法复制到剪贴板。", "Unpublishing calendar failed" : "取消发布日历失败", - "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." : "发生了错误,无法取消日历共享。", + "Unshare with {displayName}" : "取消与 {displayName} 的共享", + "An error occurred while unsharing 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://开头)", - "Could not update calendar order." : "无法更新日历顺序", + "Share with users or groups" : "与用户或分组共享", + "No users or groups" : "无用户或分组", + "Calendar name …" : "日历名称 ...", + "Share calendar" : "共享日历", + "Unshare from me" : "我取消的共享", + "Save" : "保存", + "Failed to save calendar name and color" : "保存日历名称和颜色失败", "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} is an unsupported file-type" : "{filename} 是不被支持的文件类型", - "{filename} could not be parsed" : "{filename} 无法进行解析", + "Default attachments location" : "默认附件位置", + "Select the default location for attachments" : "选择附件的默认位置", + "Invalid location selected" : "所选位置无效", + "Attachments folder successfully saved." : "附件文件夹已成功保存。", + "Error on saving attachments folder." : "保存附件文件夹时发生错误。", + "{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} 个。", + "_Successfully imported %n event_::_Successfully imported %n events_" : ["成功导入%n个事件"], "Automatic" : "自动", "Automatic ({detected})" : "自动({detected})", "New setting was not saved successfully." : "新的设置没有成功保存。", @@ -103,155 +179,263 @@ 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" : "重复的事件", "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" : "显示星期数", - "Copy primary CalDAV address" : "复制主要的CalDAV地址", - "Copy iOS/macOS CalDAV address" : "复制iOS/macOS CalDAV地址", + "Time increments" : "时间增量", + "Default reminder" : "默认提醒", + "Copy primary CalDAV address" : "复制主要的 CalDAV 地址", + "Copy iOS/macOS CalDAV address" : "复制 iOS/macOS CalDAV 地址", + "Personal availability settings" : "个人可用性设置", "Show keyboard shortcuts" : "显示键盘快捷方式", - "Settings & import" : "设置与导入", - "CalDAV link copied to clipboard." : "CalDAV链接已复制到剪贴板。", - "CalDAV link could not be copied to clipboard." : "CalDAV链接无法复制到剪贴板。", + "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}分钟"], + "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 name" : "预约名称", + "Location" : "地点", + "Create a Talk room" : "创建聊天室", + "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" : "周二", + "Wednesday" : "周三", + "Thursday" : "周四", + "Friday" : "周五", + "Saturday" : "周六", + "Sunday" : "周日", + "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" : "编辑预约", + "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" : "提醒", "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_" : ["周"], - "No reminders yet" : "暂无提醒", - "Availability of attendees, resources and rooms" : "与会者,资源和会议室的可用性", - "Busy (tentative)" : "繁忙(暂定)", + "No attachments" : "无附件", + "Add from Files" : "添加文件", + "Upload from device" : "从设备上传", + "Delete file" : "删除文件", + "Choose a file to add as attachment" : "选择文件添加为附件", + "Choose a file to share as a link" : "选择要共享的文件作为链接", + "Attachment {name} already exist!" : "附件{name}已存在!", + "_{count} attachment_::_{count} attachments_" : ["{count} 附件"], + "Invitation accepted" : "已接受邀请", + "Available" : "可用", + "Suggested" : "建议", + "Participation marked as tentative" : "参与被标记为暂定", + "Accepted {organizerName}'s invitation" : "已接受 {organizerName} 的邀请", + "Not available" : "不可用", + "Invitation declined" : "邀请被拒绝", + "Declined {organizerName}'s invitation" : "已拒绝 {organizerName} 的邀请", + "Invitation is delegated" : "邀请已委派", + "Checking availability" : "正在检查可用性", + "Invitation sent" : "已发送邀请", + "Has not responded to {organizerName}'s invitation yet" : "尚未回应 {organizerName} 的邀请", + "Availability of attendees, resources and rooms" : "参与者、资源和会议室的可用性", + "{organizer} (organizer)" : "{organizer} (organizer) ", + "Free" : "空闲", + "Busy (tentative)" : "忙碌(暂定)", "Busy" : "忙碌", "Out of office" : "不在办公室", "Unknown" : "未知", - "{name} accepted your invitation." : "{name}接受了您的邀请。", - "{name} accepted {organizerName}'s invitation." : "{name}接受了{organizerName}的邀请。", - "{name} declined your invitation." : "{name}拒绝了您的邀请。", - "{name} declined {organizerName}'s invitation." : "{name}拒绝了{organizerName}的邀请。", - "{name} has delegated their invitation." : "{name}已委托他们的邀请。", - "{name} marked their participation as tentative." : "{name}标记为他们不确定是否参加。", - "{name} did not respond to your invitation yet." : "{name}还没有回复您的邀请。", - "{name} did not respond to {organizerName}'s invitation yet." : "{name}还没有回复{organizerName}的邀请。", + "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" : "显示繁忙时间", + "Show busy times" : "显示忙碌时间", + "No attendees yet" : "暂无与会者", "Successfully appended link to talk room to description." : "成功将链接添加到聊天室的描述。", "Error creating Talk room" : "建立聊天室时发生错误", - "Send e-mail" : "发送电子邮箱", + "Send email" : "发送电子邮件", "Chairperson" : "主席", "Required participant" : "必要的参与者", "Optional participant" : "可选的参与者", "Non-participant" : "非参与者", "Remove attendee" : "移除与会者", - "Search for e-mails, users, contacts, resources or rooms" : "查找邮件、用户、联系人、资源或聊天室", + "Search for emails, users or contacts" : "搜索电子邮件、用户或联系人", "No match found" : "未找到匹配项", - "No attendees 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" : "全天", - "Can not 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 {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" : "从不", - "on date" : "到期", + "on date" : "在特定日期", "after" : "之后", "_time_::_times_" : ["次数"], - "This event is the recurrence-exception of a recurrence-set. You can not 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" : "重复", + "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" : "以每月的天数", + "By day of the month" : "每月特定日", "On the" : "在", "_month_::_months_" : ["月"], "_year_::_years_" : ["年"], - "Monday" : "星期一", "weekday" : "工作日", "weekend day" : "周末", - "Summary" : "总结", - "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 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" : "建议", + "No rooms or resources yet" : "尚无房间或资源", + "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" : "不可用", + "Room type" : "房间类型", + "Any" : "任意", + "Minimum seating capacity" : "最少座位数", "More" : "更多", - "Save" : "保存", - "Update" : "更新", "Update this occurrence" : "更新此重复事件", "Update this and all future" : "更新此项及以后的项目", "Public calendar does not exist" : "公开日历不存在", - "Maybe the share was deleted or has expired?" : "也许共享已删除或过期?", - "Please select a timezone:" : "请选择一个时区:", + "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}", + "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 timezone" : "输入以搜索时区", - "Personal" : "个人", - "The automatic timezone detection determined your timezone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your timezone manually in the calendar settings." : "自动时区检测确定您的时区为世界标准时间(UTC)。\n这很可能是您网页浏览器的安全措施导致的结果。\n请在日历设置中手动设置您的时区。", - "Your configured timezone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your timezone in the settings and report this issue." : "找不到您配置的时区({timezoneId})。 将退回到世界标准时间(UTC)。\n请在设置中更改您的时区并报告此问题。", - "No more events today" : "今天没有更多事件", - "No upcoming events" : "没有即将到来的事件", + "Type to search time zone" : "输入以搜索时区 ", + "Global" : "全球", + "Public holiday calendars" : "公众节假日日历", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "公众节假日日历由Thunderbird提供。将从{website}下载日历数据。", + "By {authors}" : "作者为{authors}", + "Subscribed" : "已订阅", + "Subscribe" : "订阅", + "Holidays in {region}" : "{region}的节假日", + "An error occurred, unable to create the public holiday calendar." : "发生错误,无法创建公众节假日日历。", + "Select 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} 的公开预约", + "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请在设置中更改您的时区并报告此问题。", "Create a new event" : "创建一个新的事件", "[Today]" : "[今天]", "[Tomorrow]" : "[明天]", "[Yesterday]" : "[昨天]", - "[Last] dddd" : "[上一个] 工作日", + "[Last] dddd" : "[上一个] dddd", "Event does not exist" : "事件不存在", + "Duplicate" : "重复", "Delete this occurrence" : "删除此重复事件", "Delete this and all future" : "删除此项及以后的项目", "Details" : "详情", + "Managing shared access" : "管理已分享的访问权限", + "Deny access" : "拒绝访问", + "Invite" : "邀请", "Attendees" : "与会者", - "Reminders" : "提醒", + "Resources" : "资源", + "_User requires access to your file_::_Users require access to your file_" : ["用户要求访问您的文件"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["需要分享访问权限的附件"], "Close" : "关闭", "Show more details" : "显示更多详情", - "Subscribe to {name}" : "订阅{name}", - "Download {name}" : "下载{name}", - "Anniversary" : "周年", - "Appointment" : "预约", - "Business" : "公司", - "Education" : "教育", - "Holiday" : "假日", - "Meeting" : "会议", - "Miscellaneous" : "杂项", - "Non-working hours" : "非工作时间", - "Not in office" : "不在办公室", - "Phone call" : "电话通话", - "Sick day" : "病假", - "Special occasion" : "特殊场合", - "Travel" : "旅行", - "Vacation" : "假期", + "Subscribe to {name}" : "订阅 {name}", + "Export {name}" : "导出 {name}", "Midnight on the day the event starts" : "事件开始时当天午夜", "_%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}"], @@ -264,7 +448,7 @@ OC.L10N.register( "{time} after the event ends" : "事件结束后 {time}", "on {time}" : "在 {time}", "on {time} ({timezoneId})" : "在 {time} ({timezoneId})", - "Week {number} of {year}" : "{year}年的第{number}周", + "Week {number} of {year}" : "{year} 年的第 {number} 周", "Does not repeat" : "不重复", "Daily" : "每天", "Weekly" : "每周", @@ -272,26 +456,19 @@ OC.L10N.register( "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}" : "在 {monthNames}", + "in {monthNames} on the {ordinalNumber} {byDaySet}" : "在 {monthNames} 的 {ordinalNumber} {byDaySet}", "until {untilDate}" : "直到 {untilDate}", "_%n time_::_%n times_" : ["%n次"], "Untitled event" : "未命名事件", "Untitled task" : "无标题任务", - "Please ask your administrator to enable the Tasks App." : "请让您的管理员启用这个应用。", - "prev" : "上一页", - "next" : "下一页", - "prev year" : "去年", - "next year" : "明年", - "today" : "今天", - "list" : "列表", + "Please ask your administrator to enable the Tasks App." : "请让您的管理员启用此应用。", "W" : "周", - "all-day" : "全天", "%n more" : "%n更多", "No events to display" : "没有事件可显示", "_+%n more_::_+%n more_" : ["再 +%n 项"], @@ -299,93 +476,131 @@ OC.L10N.register( "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" : "研讨室", + "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." : "在共享日历中此事项的可见性。", - "Location" : "地点", "Add a location" : "添加地点", - "Description" : "描述", "Add a description" : "添加描述", "Status" : "状态", "Confirmed" : "已确认", - "Tentative" : "暂定", "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." : "在计算闲忙信息时将此事项考虑在内。", - "Free" : "空闲", + "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." : "此事件的特殊颜色。 覆盖日历颜色。", + "Error while sharing file" : "共享文件时出错", + "Error while sharing file with user" : "与用户分享档案时发生错误", + "Attachment {fileName} already exists!" : "附件{fileName}已存在!", + "An error occurred during getting file information" : "获取文件信息时发生错误", "Chat room for event" : "事件聊天室", + "An error occurred, unable to delete the calendar." : "发生错误,无法删除日历。", "Imported {filename}" : "已导入 {filename}", + "This is an event reminder." : "这是一个事件提醒。", "Meditation" : "冥想", - "Relaxing" : "正在放松", + "Relaxing" : "放松", "Relax" : "放松", + "Break" : "休息", + "Commute" : "通勤", + "Commuting" : "通勤", + "Shuttle" : "穿梭", + "Invoice" : "发票", + "Finance" : "财务", + "Bank" : "银行", + "Money" : "钱", + "Wedding" : "婚礼", + "Dog" : "狗", + "Concert" : "音乐会", + "Festival" : "节日", + "Theater" : "剧院", + "Theatre" : "剧场", "Presentation" : "报告", - "Present" : "当前", - "Camping" : "正在露营", + "Talk" : "通话", + "Speech" : "演讲", + "Deadline" : "截止期", + "Submission" : "提交", + "Reporting" : "报告", + "Camping" : "露营", "Camp" : "露营", + "Election" : "选举", + "Voting" : "投票", + "Vote" : "投票", + "Barbecue" : "烧烤", + "Barbeque" : "烧烤", + "Garden" : "园艺", + "Farm" : "农场", "Movie" : "影片", - "Cinema" : "电影", + "Cinema" : "电影院", "Graduation" : "毕业", "Brainstorm" : "头脑风暴", + "Review" : "审阅", + "Audit" : "审计", + "Inspection" : "检查", + "Proofreading" : "校对", "Baseball" : "棒球", "Meet" : "见面", "Planning" : "规划", "Pointing" : "指点", "Retrospective" : "怀旧", - "Review" : "预览", "Office" : "办公", "Contributor week" : "贡献者周", - "Party" : "派对", - "Celebration" : "庆祝活动", "Mail" : "邮件", "Soccer" : "足球", "Football" : "橄榄球", "Gaming" : "游戏", - "Play" : "播放", - "Game" : "比赛", "Drive" : "驾驶", + "Driving" : "驾驶", "Bicycle" : "自行车", - "Cycle" : "自行车", + "Cycle" : "单车", + "Cycling" : "骑车", "Biking" : "骑自行车", + "Bike" : "自行车", "Podcast" : "播客", "Basketball" : "篮球", "Fishing" : "钓鱼", - "Hiking" : "徒步中", + "Hiking" : "徒步", "Hike" : "徒步", "Art" : "艺术", "Exhibition" : "展览", "Museum" : "博物馆", "Pilates" : "普拉提", "Park" : "公园", - "Studying" : "学习中", + "Walk" : "走路", + "Studying" : "学习", "Doctor" : "医生", "Health" : "健康", "Dentist" : "牙医", + "Hospital" : "医院", "Interview" : "面试", "Training" : "训练", - "Practice" : "实践", + "Practice" : "练习", "Sports" : "体育", - "Exercise" : "练习", + "Exercise" : "运动", "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" : "去跑步", + "Go for a run" : "跑步", "Marathon" : "马拉松", "Video-conference" : "视频会议", "Conference-call" : "电话会议", @@ -393,25 +608,32 @@ OC.L10N.register( "Video-chat" : "视频聊天", "Video-meeting" : "视频会议", "Call" : "打电话", - "Calling" : "呼叫中", + "Calling" : "通话", "Christmas" : "圣诞节", "Conference" : "会议", "Pizza" : "披萨", - "Travelling" : "旅行中", + "Travelling" : "旅行", + "Trip" : "旅游", "Journey" : "旅行", "Collaborate" : "协作", - "Pair" : "配对", + "Pair" : "结对", "Lecture" : "讲座", "Seminar" : "研讨会", - "Photograph" : "照片", + "Teaching" : "教学", + "Photograph" : "摄影", + "Party" : "派对", + "Celebration" : "庆祝", "Celebrate" : "庆祝", + "Birthday" : "生日", "Shopping" : "购物", - "Skate" : "溜冰", + "Groceries" : "杂货", + "Skate" : "滑冰", "Skateboard" : "滑板", "Wine tasting" : "品酒", "Golf" : "高尔夫", "Dinner" : "晚餐", "Lunch" : "午餐", - "Global" : "全球" + "Appointment not found" : "未找到预约", + "User not found" : "未找到用户" }, "nplurals=1; plural=0;"); diff --git a/l10n/zh_CN.json b/l10n/zh_CN.json index 96a4f02b84..1bac4ce90c 100644 --- a/l10n/zh_CN.json +++ b/l10n/zh_CN.json @@ -1,94 +1,170 @@ { "translations": { - "User-Session unexpectedly expired" : "用户会话已意外过期", + "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 " : "成功发送邮件到", + "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" : "即将到来的事件", + "More events" : "更多事件", + "No more events today" : "今天没有更多事件", + "No upcoming 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" : "确认", + "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:" : "日期:", + "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)与您预约了。", + "Anniversary" : "周年", + "Appointment" : "预约", + "Business" : "商业", + "Education" : "教育", + "Holiday" : "节假日", + "Meeting" : "会议", + "Miscellaneous" : "杂项", + "Non-working hours" : "非工作时间", + "Not in office" : "不在办公室", + "Personal" : "个人", + "Phone call" : "电话通话", + "Sick day" : "病假", + "Special occasion" : "特殊场合", + "Travel" : "旅行", + "Vacation" : "假期", + "Custom Categories" : "自定义分类", + "Collaborative Tags" : "协作标签", + "Standard Categories" : "标准分类", "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) 库开发。", + "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" : "前一天", "Previous week" : "上周", + "Previous year" : "前一年", "Previous month" : "上个月", "Next day" : "后一天", "Next week" : "下周", + "Next year" : "下一年", "Next month" : "下个月", - "+ New event" : "+ 新事件", + "Event" : "事件", + "Create new event" : "创建新事件", "Today" : "今天", "Day" : "日", "Week" : "星期", "Month" : "月", + "Year" : "年", "List" : "列表", - "Untitled calendar" : "未命名的日历", - "Edit name" : "编辑名称", - "Saving name …" : "正在保存名称 …", - "Edit color" : "编辑颜色", - "Saving color …" : "正在保存颜色 …", - "Copy private link" : "复制私有链接", - "Download" : "下载", - "Unshare from me" : "我取消的共享", + "Preview" : "预览", + "Copy link" : "复制链接", + "Edit" : "编辑", "Delete" : "删除", + "Appointment link was copied to clipboard" : "预约链接已复制到剪贴板", + "Appointment link could not be copied to clipboard" : "无法将预约链接复制到剪贴板", + "Add new" : "新增", + "Untitled calendar" : "未命名的日历", + "Shared with you by" : "与您共享,由", + "Edit and share calendar" : "编辑并分享日历", + "Edit calendar" : "编辑日历", + "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." : "日历链接已复制到剪切板。", + "_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}秒后删除日历"], + "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" : "添加公众节假期日历", + "An error occurred, unable to create the calendar." : "发生了错误,无法创建日历。", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "请输入合法的链接(以http://、https://、webcal://、或者webcals://开头)", + "Copy subscription link" : "复制订阅链接", + "Copying link …" : "正在复制链接 ...", + "Copied link" : "已复制链接", + "Could not copy link" : "无法复制链接", + "Export" : "导出", + "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}秒内删除日历"], + "Trash bin" : "回收站", + "Loading deleted items." : "正在加载已删除的项目。", + "You do not have any deleted items." : "您没有任何已删除的项目。", + "Name" : "名称", + "Deleted" : "已删除", + "Restore" : "还原", + "Delete permanently" : "永久删除", + "Empty trash bin" : "清空回收站", + "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?" : "您真的想要清空回收站吗?", + "_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." : "无法更改日历顺序。", + "Internal link" : "内部链接", + "A private link that can be used with external clients" : "可以与外部客户端一起使用的私人链接", + "Copy internal link" : "复制内部链接", "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 …" : "正在删除共享链接 …", + "Deleting share link …" : "正在删除共享链接 ...", "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 could not be copied to clipboard." : "嵌入代码无法复制到剪贴板。", "Unpublishing calendar failed" : "取消发布日历失败", - "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." : "发生了错误,无法取消日历共享。", + "Unshare with {displayName}" : "取消与 {displayName} 的共享", + "An error occurred while unsharing 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://开头)", - "Could not update calendar order." : "无法更新日历顺序", + "Share with users or groups" : "与用户或分组共享", + "No users or groups" : "无用户或分组", + "Calendar name …" : "日历名称 ...", + "Share calendar" : "共享日历", + "Unshare from me" : "我取消的共享", + "Save" : "保存", + "Failed to save calendar name and color" : "保存日历名称和颜色失败", "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} is an unsupported file-type" : "{filename} 是不被支持的文件类型", - "{filename} could not be parsed" : "{filename} 无法进行解析", + "Default attachments location" : "默认附件位置", + "Select the default location for attachments" : "选择附件的默认位置", + "Invalid location selected" : "所选位置无效", + "Attachments folder successfully saved." : "附件文件夹已成功保存。", + "Error on saving attachments folder." : "保存附件文件夹时发生错误。", + "{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} 个。", + "_Successfully imported %n event_::_Successfully imported %n events_" : ["成功导入%n个事件"], "Automatic" : "自动", "Automatic ({detected})" : "自动({detected})", "New setting was not saved successfully." : "新的设置没有成功保存。", @@ -101,155 +177,263 @@ "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" : "重复的事件", "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" : "显示星期数", - "Copy primary CalDAV address" : "复制主要的CalDAV地址", - "Copy iOS/macOS CalDAV address" : "复制iOS/macOS CalDAV地址", + "Time increments" : "时间增量", + "Default reminder" : "默认提醒", + "Copy primary CalDAV address" : "复制主要的 CalDAV 地址", + "Copy iOS/macOS CalDAV address" : "复制 iOS/macOS CalDAV 地址", + "Personal availability settings" : "个人可用性设置", "Show keyboard shortcuts" : "显示键盘快捷方式", - "Settings & import" : "设置与导入", - "CalDAV link copied to clipboard." : "CalDAV链接已复制到剪贴板。", - "CalDAV link could not be copied to clipboard." : "CalDAV链接无法复制到剪贴板。", + "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}分钟"], + "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 name" : "预约名称", + "Location" : "地点", + "Create a Talk room" : "创建聊天室", + "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" : "周二", + "Wednesday" : "周三", + "Thursday" : "周四", + "Friday" : "周五", + "Saturday" : "周六", + "Sunday" : "周日", + "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" : "编辑预约", + "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" : "提醒", "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_" : ["周"], - "No reminders yet" : "暂无提醒", - "Availability of attendees, resources and rooms" : "与会者,资源和会议室的可用性", - "Busy (tentative)" : "繁忙(暂定)", + "No attachments" : "无附件", + "Add from Files" : "添加文件", + "Upload from device" : "从设备上传", + "Delete file" : "删除文件", + "Choose a file to add as attachment" : "选择文件添加为附件", + "Choose a file to share as a link" : "选择要共享的文件作为链接", + "Attachment {name} already exist!" : "附件{name}已存在!", + "_{count} attachment_::_{count} attachments_" : ["{count} 附件"], + "Invitation accepted" : "已接受邀请", + "Available" : "可用", + "Suggested" : "建议", + "Participation marked as tentative" : "参与被标记为暂定", + "Accepted {organizerName}'s invitation" : "已接受 {organizerName} 的邀请", + "Not available" : "不可用", + "Invitation declined" : "邀请被拒绝", + "Declined {organizerName}'s invitation" : "已拒绝 {organizerName} 的邀请", + "Invitation is delegated" : "邀请已委派", + "Checking availability" : "正在检查可用性", + "Invitation sent" : "已发送邀请", + "Has not responded to {organizerName}'s invitation yet" : "尚未回应 {organizerName} 的邀请", + "Availability of attendees, resources and rooms" : "参与者、资源和会议室的可用性", + "{organizer} (organizer)" : "{organizer} (organizer) ", + "Free" : "空闲", + "Busy (tentative)" : "忙碌(暂定)", "Busy" : "忙碌", "Out of office" : "不在办公室", "Unknown" : "未知", - "{name} accepted your invitation." : "{name}接受了您的邀请。", - "{name} accepted {organizerName}'s invitation." : "{name}接受了{organizerName}的邀请。", - "{name} declined your invitation." : "{name}拒绝了您的邀请。", - "{name} declined {organizerName}'s invitation." : "{name}拒绝了{organizerName}的邀请。", - "{name} has delegated their invitation." : "{name}已委托他们的邀请。", - "{name} marked their participation as tentative." : "{name}标记为他们不确定是否参加。", - "{name} did not respond to your invitation yet." : "{name}还没有回复您的邀请。", - "{name} did not respond to {organizerName}'s invitation yet." : "{name}还没有回复{organizerName}的邀请。", + "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" : "显示繁忙时间", + "Show busy times" : "显示忙碌时间", + "No attendees yet" : "暂无与会者", "Successfully appended link to talk room to description." : "成功将链接添加到聊天室的描述。", "Error creating Talk room" : "建立聊天室时发生错误", - "Send e-mail" : "发送电子邮箱", + "Send email" : "发送电子邮件", "Chairperson" : "主席", "Required participant" : "必要的参与者", "Optional participant" : "可选的参与者", "Non-participant" : "非参与者", "Remove attendee" : "移除与会者", - "Search for e-mails, users, contacts, resources or rooms" : "查找邮件、用户、联系人、资源或聊天室", + "Search for emails, users or contacts" : "搜索电子邮件、用户或联系人", "No match found" : "未找到匹配项", - "No attendees 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" : "全天", - "Can not 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 {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" : "从不", - "on date" : "到期", + "on date" : "在特定日期", "after" : "之后", "_time_::_times_" : ["次数"], - "This event is the recurrence-exception of a recurrence-set. You can not 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" : "重复", + "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" : "以每月的天数", + "By day of the month" : "每月特定日", "On the" : "在", "_month_::_months_" : ["月"], "_year_::_years_" : ["年"], - "Monday" : "星期一", "weekday" : "工作日", "weekend day" : "周末", - "Summary" : "总结", - "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 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" : "建议", + "No rooms or resources yet" : "尚无房间或资源", + "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" : "不可用", + "Room type" : "房间类型", + "Any" : "任意", + "Minimum seating capacity" : "最少座位数", "More" : "更多", - "Save" : "保存", - "Update" : "更新", "Update this occurrence" : "更新此重复事件", "Update this and all future" : "更新此项及以后的项目", "Public calendar does not exist" : "公开日历不存在", - "Maybe the share was deleted or has expired?" : "也许共享已删除或过期?", - "Please select a timezone:" : "请选择一个时区:", + "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}", + "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 timezone" : "输入以搜索时区", - "Personal" : "个人", - "The automatic timezone detection determined your timezone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your timezone manually in the calendar settings." : "自动时区检测确定您的时区为世界标准时间(UTC)。\n这很可能是您网页浏览器的安全措施导致的结果。\n请在日历设置中手动设置您的时区。", - "Your configured timezone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your timezone in the settings and report this issue." : "找不到您配置的时区({timezoneId})。 将退回到世界标准时间(UTC)。\n请在设置中更改您的时区并报告此问题。", - "No more events today" : "今天没有更多事件", - "No upcoming events" : "没有即将到来的事件", + "Type to search time zone" : "输入以搜索时区 ", + "Global" : "全球", + "Public holiday calendars" : "公众节假日日历", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "公众节假日日历由Thunderbird提供。将从{website}下载日历数据。", + "By {authors}" : "作者为{authors}", + "Subscribed" : "已订阅", + "Subscribe" : "订阅", + "Holidays in {region}" : "{region}的节假日", + "An error occurred, unable to create the public holiday calendar." : "发生错误,无法创建公众节假日日历。", + "Select 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} 的公开预约", + "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请在设置中更改您的时区并报告此问题。", "Create a new event" : "创建一个新的事件", "[Today]" : "[今天]", "[Tomorrow]" : "[明天]", "[Yesterday]" : "[昨天]", - "[Last] dddd" : "[上一个] 工作日", + "[Last] dddd" : "[上一个] dddd", "Event does not exist" : "事件不存在", + "Duplicate" : "重复", "Delete this occurrence" : "删除此重复事件", "Delete this and all future" : "删除此项及以后的项目", "Details" : "详情", + "Managing shared access" : "管理已分享的访问权限", + "Deny access" : "拒绝访问", + "Invite" : "邀请", "Attendees" : "与会者", - "Reminders" : "提醒", + "Resources" : "资源", + "_User requires access to your file_::_Users require access to your file_" : ["用户要求访问您的文件"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["需要分享访问权限的附件"], "Close" : "关闭", "Show more details" : "显示更多详情", - "Subscribe to {name}" : "订阅{name}", - "Download {name}" : "下载{name}", - "Anniversary" : "周年", - "Appointment" : "预约", - "Business" : "公司", - "Education" : "教育", - "Holiday" : "假日", - "Meeting" : "会议", - "Miscellaneous" : "杂项", - "Non-working hours" : "非工作时间", - "Not in office" : "不在办公室", - "Phone call" : "电话通话", - "Sick day" : "病假", - "Special occasion" : "特殊场合", - "Travel" : "旅行", - "Vacation" : "假期", + "Subscribe to {name}" : "订阅 {name}", + "Export {name}" : "导出 {name}", "Midnight on the day the event starts" : "事件开始时当天午夜", "_%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}"], @@ -262,7 +446,7 @@ "{time} after the event ends" : "事件结束后 {time}", "on {time}" : "在 {time}", "on {time} ({timezoneId})" : "在 {time} ({timezoneId})", - "Week {number} of {year}" : "{year}年的第{number}周", + "Week {number} of {year}" : "{year} 年的第 {number} 周", "Does not repeat" : "不重复", "Daily" : "每天", "Weekly" : "每周", @@ -270,26 +454,19 @@ "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}" : "在 {monthNames}", + "in {monthNames} on the {ordinalNumber} {byDaySet}" : "在 {monthNames} 的 {ordinalNumber} {byDaySet}", "until {untilDate}" : "直到 {untilDate}", "_%n time_::_%n times_" : ["%n次"], "Untitled event" : "未命名事件", "Untitled task" : "无标题任务", - "Please ask your administrator to enable the Tasks App." : "请让您的管理员启用这个应用。", - "prev" : "上一页", - "next" : "下一页", - "prev year" : "去年", - "next year" : "明年", - "today" : "今天", - "list" : "列表", + "Please ask your administrator to enable the Tasks App." : "请让您的管理员启用此应用。", "W" : "周", - "all-day" : "全天", "%n more" : "%n更多", "No events to display" : "没有事件可显示", "_+%n more_::_+%n more_" : ["再 +%n 项"], @@ -297,93 +474,131 @@ "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" : "研讨室", + "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." : "在共享日历中此事项的可见性。", - "Location" : "地点", "Add a location" : "添加地点", - "Description" : "描述", "Add a description" : "添加描述", "Status" : "状态", "Confirmed" : "已确认", - "Tentative" : "暂定", "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." : "在计算闲忙信息时将此事项考虑在内。", - "Free" : "空闲", + "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." : "此事件的特殊颜色。 覆盖日历颜色。", + "Error while sharing file" : "共享文件时出错", + "Error while sharing file with user" : "与用户分享档案时发生错误", + "Attachment {fileName} already exists!" : "附件{fileName}已存在!", + "An error occurred during getting file information" : "获取文件信息时发生错误", "Chat room for event" : "事件聊天室", + "An error occurred, unable to delete the calendar." : "发生错误,无法删除日历。", "Imported {filename}" : "已导入 {filename}", + "This is an event reminder." : "这是一个事件提醒。", "Meditation" : "冥想", - "Relaxing" : "正在放松", + "Relaxing" : "放松", "Relax" : "放松", + "Break" : "休息", + "Commute" : "通勤", + "Commuting" : "通勤", + "Shuttle" : "穿梭", + "Invoice" : "发票", + "Finance" : "财务", + "Bank" : "银行", + "Money" : "钱", + "Wedding" : "婚礼", + "Dog" : "狗", + "Concert" : "音乐会", + "Festival" : "节日", + "Theater" : "剧院", + "Theatre" : "剧场", "Presentation" : "报告", - "Present" : "当前", - "Camping" : "正在露营", + "Talk" : "通话", + "Speech" : "演讲", + "Deadline" : "截止期", + "Submission" : "提交", + "Reporting" : "报告", + "Camping" : "露营", "Camp" : "露营", + "Election" : "选举", + "Voting" : "投票", + "Vote" : "投票", + "Barbecue" : "烧烤", + "Barbeque" : "烧烤", + "Garden" : "园艺", + "Farm" : "农场", "Movie" : "影片", - "Cinema" : "电影", + "Cinema" : "电影院", "Graduation" : "毕业", "Brainstorm" : "头脑风暴", + "Review" : "审阅", + "Audit" : "审计", + "Inspection" : "检查", + "Proofreading" : "校对", "Baseball" : "棒球", "Meet" : "见面", "Planning" : "规划", "Pointing" : "指点", "Retrospective" : "怀旧", - "Review" : "预览", "Office" : "办公", "Contributor week" : "贡献者周", - "Party" : "派对", - "Celebration" : "庆祝活动", "Mail" : "邮件", "Soccer" : "足球", "Football" : "橄榄球", "Gaming" : "游戏", - "Play" : "播放", - "Game" : "比赛", "Drive" : "驾驶", + "Driving" : "驾驶", "Bicycle" : "自行车", - "Cycle" : "自行车", + "Cycle" : "单车", + "Cycling" : "骑车", "Biking" : "骑自行车", + "Bike" : "自行车", "Podcast" : "播客", "Basketball" : "篮球", "Fishing" : "钓鱼", - "Hiking" : "徒步中", + "Hiking" : "徒步", "Hike" : "徒步", "Art" : "艺术", "Exhibition" : "展览", "Museum" : "博物馆", "Pilates" : "普拉提", "Park" : "公园", - "Studying" : "学习中", + "Walk" : "走路", + "Studying" : "学习", "Doctor" : "医生", "Health" : "健康", "Dentist" : "牙医", + "Hospital" : "医院", "Interview" : "面试", "Training" : "训练", - "Practice" : "实践", + "Practice" : "练习", "Sports" : "体育", - "Exercise" : "练习", + "Exercise" : "运动", "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" : "去跑步", + "Go for a run" : "跑步", "Marathon" : "马拉松", "Video-conference" : "视频会议", "Conference-call" : "电话会议", @@ -391,25 +606,32 @@ "Video-chat" : "视频聊天", "Video-meeting" : "视频会议", "Call" : "打电话", - "Calling" : "呼叫中", + "Calling" : "通话", "Christmas" : "圣诞节", "Conference" : "会议", "Pizza" : "披萨", - "Travelling" : "旅行中", + "Travelling" : "旅行", + "Trip" : "旅游", "Journey" : "旅行", "Collaborate" : "协作", - "Pair" : "配对", + "Pair" : "结对", "Lecture" : "讲座", "Seminar" : "研讨会", - "Photograph" : "照片", + "Teaching" : "教学", + "Photograph" : "摄影", + "Party" : "派对", + "Celebration" : "庆祝", "Celebrate" : "庆祝", + "Birthday" : "生日", "Shopping" : "购物", - "Skate" : "溜冰", + "Groceries" : "杂货", + "Skate" : "滑冰", "Skateboard" : "滑板", "Wine tasting" : "品酒", "Golf" : "高尔夫", "Dinner" : "晚餐", "Lunch" : "午餐", - "Global" : "全球" + "Appointment not found" : "未找到预约", + "User not found" : "未找到用户" },"pluralForm" :"nplurals=1; plural=0;" } \ No newline at end of file diff --git a/l10n/zh_HK.js b/l10n/zh_HK.js index 043a83a9cb..b1f6ef8e50 100644 --- a/l10n/zh_HK.js +++ b/l10n/zh_HK.js @@ -1,59 +1,137 @@ OC.L10N.register( "calendar", { - "User-Session unexpectedly expired" : "使用者連線階段過期", + "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 " : "成功地傳送電子郵件給", + "Successfully sent email to %1$s" : "成功傳送電子郵件給%1$s", "Hello," : "嗨,", - "We wanted to inform you that %s has published the calendar »%s«." : "通知您,%s 發佈了日曆 »%s«.", + "We wanted to inform you that %s has published the calendar »%s«." : "通知您,%s 發佈了日曆 »%s«。", "Open »%s«" : "開啟 »%s«", "Cheers!" : "太棒了!", "Upcoming events" : "接下來的活動", + "More events" : "更多活動", + "No more events today" : "今日沒有其他活動", + "No upcoming 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" : "確認", + "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) 與您預約了。", + "Anniversary" : "週年", + "Appointment" : "約會", + "Business" : "商業", + "Education" : "教育", + "Holiday" : "假日", + "Meeting" : "會議", + "Miscellaneous" : "其他", + "Non-working hours" : "非工作時間", + "Not in office" : "不在辦公室", + "Personal" : "個人", + "Phone call" : "通話", + "Sick day" : "病假", + "Special occasion" : "特殊場合", + "Travel" : "旅行", + "Vacation" : "度假", + "Custom Categories" : "自訂分類", + "Collaborative Tags" : "協作標籤", + "Standard Categories" : "標準分類", "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) 函式庫為基礎。", + "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" : "前一日", "Previous week" : "上星期", + "Previous year" : "上一年", "Previous month" : "上個月", - "Next day" : "隔天", + "Next day" : "隔日", "Next week" : "下星期", + "Next year" : "下一年", "Next month" : "下個月", - "+ New event" : "+ 新活動", - "Today" : "今天", + "Event" : "活動", + "Create new event" : "創建新活動", + "Today" : "今日", "Day" : "日", - "Week" : "週", + "Week" : "星期", "Month" : "月", + "Year" : "年", "List" : "清單", - "Untitled calendar" : "未命名日曆", - "Edit name" : "編輯名稱", - "Saving name …" : "儲存名稱 …", - "Edit color" : "編輯顏色", - "Saving color …" : "儲存顏色…", - "Copy private link" : "複製私人連結", - "Download" : "下載", - "Unshare from me" : "取消與我分享", + "Preview" : "預覽", + "Copy link" : "複製連結", + "Edit" : "編輯", "Delete" : "刪除", + "Appointment link was copied to clipboard" : "約會連結已複製到剪貼板", + "Appointment link could not be copied to clipboard" : "約會連結無法複製到剪貼板", + "Add new" : "新增", + "Untitled calendar" : "未命名日曆", + "Shared with you by" : "分享給您藉由", + "Edit and share calendar" : "編輯及分享日曆", + "Edit calendar" : "編輯日曆", + "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." : "發生錯誤,無法變更日曆的顏色", - "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["將在 {countdown} 秒後取消分享日曆"], + "_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} 秒後刪除日曆"], - "Share link" : "分享連結", - "Publish calendar" : "發布日曆", - "Publishing calendar" : "正在發布日曆", - "Copy public link" : "複製公開連結", - "Send link to calendar via email" : "透過電子郵件傳送日曆連結", - "Enter one address" : "輸入一個位址", - "Sending email …" : "正在傳送電子郵件…", + "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" : "添加公眾假期日曆", + "An error occurred, unable to create the calendar." : "發生錯誤,無法建立日曆", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "請輸入有效的連結(以 http://,https://,webcal://,或 webcals:// 開頭)", "Copy subscription link" : "複製訂閱的連結", "Copying link …" : "正在複製連結…", "Copied link" : "連結已複製", "Could not copy link" : "無法複製連結", + "Export" : "導出", + "Calendar link copied to clipboard." : "複製日曆連結到剪貼板", + "Calendar link could not be copied to clipboard." : "日曆連結無法複製到剪貼板", + "Trash bin" : "回收桶", + "Loading deleted items." : "正加載已删除的項目。", + "You do not have any deleted items." : "你没有已删除的項目。", + "Name" : "姓名", + "Deleted" : "已刪除", + "Restore" : "復原", + "Delete permanently" : "永久刪除", + "Empty trash bin" : "清空回收桶", + "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?" : "您真的想要清空回收桶嗎?", + "_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." : "無法變更日曆順序", + "Internal link" : "內部連結", + "A private link that can be used with external clients" : "可與外部客戶端一起使用的私人連結", + "Copy internal link" : "複製內部連結", + "Share link" : "分享連結", + "Copy public link" : "複製公開連結", + "Send link to calendar via email" : "透過電子郵件傳送日曆連結", + "Enter one address" : "輸入一個地址", + "Sending email …" : "正在傳送電子郵件…", "Copy embedding code" : "複製內嵌程式碼", "Copying code …" : "正在複製程式碼…", "Copied code" : "已複製程式碼", @@ -62,35 +140,35 @@ OC.L10N.register( "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." : "無法複製內嵌程式碼到剪貼簿", + "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" : "沒有使用者或群組", "can edit" : "可編輯", "Unshare with {displayName}" : "取消與 {displayName} 的分享", - "An error occurred, unable to change the unshare the calendar." : "發生錯誤,無法變更日曆", + "An error occurred while unsharing 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:// 開頭)", - "Could not update calendar order." : "無法變更日曆順序", + "Share with users or groups" : "與用戶或群組分享", + "No users or groups" : "沒有用戶或群組", + "Calendar name …" : "日曆名稱 ...", + "Share calendar" : "分享日曆", + "Unshare from me" : "由我取消的分享", + "Save" : "儲存", + "Failed to save calendar name and color" : "儲存日曆名稱或色彩失敗", "Import calendars" : "匯入日曆", "Please select a calendar to import into …" : "請選擇將匯入的日曆", "Filename" : "檔案名稱", "Calendar to import into" : "將匯入的日曆", "Cancel" : "取消", "_Import calendar_::_Import calendars_" : ["匯入日曆"], - "{filename} is an unsupported file-type" : "{filename} 是不支援的檔案類型", + "Default attachments location" : "默認附件位置", + "Select the default location for attachments" : "選擇附件的默認位置", + "Invalid location selected" : "所選的位置無效", + "Attachments folder successfully saved." : "附件資料夾已成功保存。", + "Error on saving attachments folder." : "儲存附件資料夾時發生錯誤。", "{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 個活動"], + "_Successfully imported %n event_::_Successfully imported %n events_" : ["成功匯入 %n 個活動"], "Automatic" : "自動", "Automatic ({detected})" : "自動({detected})", "New setting was not saved successfully." : "新設定未成功儲存", @@ -99,27 +177,89 @@ OC.L10N.register( "Navigation" : "導覽列", "Previous period" : "前一期間", "Next period" : "下一期間", - "Views" : "顯示", - "Day view" : "每日", - "Week view" : "每週", - "Month view" : "每月", - "Actions" : "動作", + "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" : "重複活動", "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 reminder" : "默認提醒", "Copy primary CalDAV address" : "複製主要的 CalDAV 位址", "Copy iOS/macOS CalDAV address" : "複製 iOS/macOS 的 CalDAV 位址", - "Show keyboard shortcuts" : "顯示快速鍵", - "Settings & import" : "設定及匯入", - "CalDAV link copied to clipboard." : "已複製 CalDAV 連結至剪貼簿", - "CalDAV link could not be copied to clipboard." : "無法複製 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} 分鐘"], + "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 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" : "星期二", + "Wednesday" : "星期三", + "Thursday" : "星期四", + "Friday" : "星期五", + "Saturday" : "星期六", + "Sunday" : "星期日", + "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" : "編輯預約", + "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" : "提醒", "before at" : "之前於", - "Notification" : "通知", + "Notification" : "通告", "Email" : "電子郵件", "Audio notification" : "音訊通知", "Other notification" : "其他通知", @@ -131,81 +271,119 @@ OC.L10N.register( "on" : "在", "at" : "在", "+ Add reminder" : "+ 加入提醒", + "Add reminder" : "添加提醒", "_second_::_seconds_" : ["秒"], "_minute_::_minutes_" : ["分鐘"], "_hour_::_hours_" : ["時"], "_day_::_days_" : ["天"], - "_week_::_weeks_" : ["週"], - "No reminders yet" : "目前沒有任何提醒", - "Availability of attendees, resources and rooms" : "參與者、資源和空間的可用性", + "_week_::_weeks_" : ["星期"], + "No attachments" : "無附件", + "Add from Files" : "從檔案添加", + "Upload from device" : "從裝置上傳", + "Delete file" : "刪除檔案", + "Choose a file to add as attachment" : "選擇要作為附件的檔案", + "Choose a file to share as a link" : "選擇要作為連結分享的檔案", + "Attachment {name} already exist!" : "附件 {name} 已存在!", + "_{count} attachment_::_{count} attachments_" : ["{count} 個附件"], + "Invitation accepted" : "已接受邀請", + "Available" : "可用", + "Suggested" : "建議", + "Participation marked as tentative" : "參與標記為暫定", + "Accepted {organizerName}'s invitation" : "已接受 {organizerName} 的邀請", + "Not available" : "不可用", + "Invitation declined" : "邀請被婉拒", + "Declined {organizerName}'s invitation" : "已婉拒 {organizerName} 的邀請", + "Invitation is delegated" : "邀請已委派", + "Checking availability" : "檢查空閒時間", + "Invitation sent" : "邀請已傳送", + "Has not responded to {organizerName}'s invitation yet" : "尚未回覆 {organizerName} 的邀請", + "Availability of attendees, resources and rooms" : "參與者、資源和會議室的空閒時間", + "{organizer} (organizer)" : "{organizer}(主辦人)", + "Free" : "有空", "Busy (tentative)" : "忙碌(暫定)", "Busy" : "忙碌", "Out of office" : "不在辦公室", "Unknown" : "不詳", - "{name} accepted your invitation." : "{name} 已接受您的邀請。", - "{name} accepted {organizerName}'s invitation." : "{name} 已接受 {organizerName} 的邀請", - "{name} declined your invitation." : "{name} 已婉拒您的邀請", - "{name} declined {organizerName}'s invitation." : "{name} 已婉拒 {organizerName} 的邀請", - "{name} has delegated their invitation." : "{name} 已將邀請轉給他人", - "{name} marked their participation as tentative." : "{name} 表示他暫定可以出席", - "{name} did not respond to your invitation yet." : "{name} 尚未回覆您的邀請", - "{name} did not respond to {organizerName}'s invitation yet." : "{name} 尚未回覆 {organizerName} 的邀請", + "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" : "顯示忙碌時段", + "No attendees yet" : "還沒有任何參與者", + "You don't own this calendar, so you cannot add attendees to this event" : "您並未擁有此日曆,因此您無法新增參與者到此活動", + "Successfully appended link to talk room to location." : "成功將線上會議室的連結加至位置。", "Successfully appended link to talk room to description." : "成功將線上會議室的連結加至活動細節", "Error creating Talk room" : "建立線上會議室發生錯誤", - "Send e-mail" : "傳送電子郵件", + "Send email" : "傳送電郵", "Chairperson" : "主席", "Required participant" : "需出席的參與者", "Optional participant" : "可不出席的參與者", "Non-participant" : "非參與者", "Remove attendee" : "移除參與者", - "Search for e-mails, users, contacts, resources or rooms" : "搜尋電子郵件、使用者、聯絡人、資源或會議室", + "Search for emails, users or contacts" : "搜尋電郵地址、用戶或聯絡人", "No match found" : "找不到符合的項目", - "No attendees yet" : "還沒有任何參與者", "(organizer)" : "(主辦人)", - "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "若要送出邀請函並處理回覆,[linkopen]請至個人設定頁加入您的電郵地址[linkclose]", + "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "若要送出邀請函並處理回覆,[linkopen] 請到個人設定頁加入您的電郵地址 [linkclose]", "Remove color" : "移除顏色", "Event title" : "活動標題", - "All day" : "全天", - "Can not modify all-day setting for events that are part of a recurrence-set." : "無法變更定期重複活動的全日設定", + "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} 止", + "Repeat" : "重複", "End repeat" : "停止重複", "Select to end repeat" : "選擇以結束重複", "never" : "永不", "on date" : "在特定日期", "after" : "之後", "_time_::_times_" : ["次"], - "This event is the recurrence-exception of a recurrence-set. You can not 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" : "倒數第一", + "second to last" : "尾二", + "last" : "最尾", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "變更的重複規則只會套用至這項活動和重複的未來活動", - "Repeat" : "重複", "Repeat every" : "重複循環", "By day of the month" : "每月中特定日", "On the" : "在", "_month_::_months_" : ["月"], "_year_::_years_" : ["年"], - "Monday" : "星期一", - "weekday" : "週間", + "weekday" : "平日", "weekend day" : "週末", - "Summary" : "摘要", + "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" : "建議", + "No rooms or resources yet" : "尚無可用會議室或資源", + "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" : "不可用", + "Room type" : "房間類型", + "Any" : "任何", + "Minimum seating capacity" : "最小座位數量", "More" : "更多", - "Save" : "儲存", - "Update" : "更新", "Update this occurrence" : "更新此重複", - "Update this and all future" : "更新這次和所有未來的重複", + "Update this and all future" : "更新此次和以後的活動", "Public calendar does not exist" : "公開日曆不存在", "Maybe the share was deleted or has expired?" : "分享是否已刪除或過期?", - "Please select a timezone:" : "請選取時區:", + "Please select a time zone:" : "請選擇時區:", "Pick a time" : "挑選時間", "Pick a date" : "挑選日期", "from {formattedDate}" : "從 {formattedDate}", @@ -217,45 +395,57 @@ OC.L10N.register( "{formattedDate} at {formattedTime}" : "{formattedDate} {formattedTime}", "Please enter a valid date" : "請輸入有效的日期", "Please enter a valid date and time" : "請輸入有效的日期和時間", - "Type to search timezone" : "開始輸入以搜尋時區", - "Personal" : "私人", - "The automatic timezone detection determined your timezone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your timezone manually in the calendar settings." : "系統偵測到您的時區為 UTC,這可能是因為網頁伺服器的安全設定,請至日曆設定中手動設定您的時區", - "Your configured timezone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your timezone in the settings and report this issue." : "找不到您選擇的時區 {timezoneId} ,先以 UTC 替代\n請至設定改變您的時區並回報此問題", - "No more events today" : "今天沒有其他活動", - "No upcoming events" : "沒有接下來的活動", + "Type to search time zone" : "輸入以搜尋時區", + "Global" : "全球", + "Public holiday calendars" : "公眾假期日曆", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "公眾假期日曆由 Thunderbird 提供。將從 {website} 下載日曆數據", + "By {authors}" : "作者 {authors}", + "Subscribed" : "已訂閱", + "Subscribe" : "訂閱", + "Holidays in {region}" : "{region} 的假期", + "An error occurred, unable to create the public holiday calendar." : "發生錯誤,無法創建公眾假期日曆。", + "Select date" : "選擇日期", + "Select slot" : "選擇時段", + "No slots available" : "沒有可用的時段", + "Could not fetch slots" : "無法擷取時段", + "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} 的公開預約", + "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請至設定改變您的時區並舉報此問題。", "Create a new event" : "建立新活動", - "[Today]" : "[今天]", - "[Tomorrow]" : "[明天]", - "[Yesterday]" : "[昨天]", + "[Today]" : "[今日]", + "[Tomorrow]" : "[明日]", + "[Yesterday]" : "[昨日]", "[Last] dddd" : "[上] dddd", "Event does not exist" : "活動不存在", - "Delete this occurrence" : "刪除這次活動", - "Delete this and all future" : "刪除這次和所有未來重複", + "Duplicate" : "重複", + "Delete this occurrence" : "刪除此次活動", + "Delete this and all future" : "刪除此次和以後的活動", "Details" : "詳細資料", + "Managing shared access" : "管理已分享的存取權限", + "Deny access" : "拒絕存取", + "Invite" : "邀請", "Attendees" : "參與者", - "Reminders" : "提醒", + "Resources" : "資源", + "_User requires access to your file_::_Users require access to your file_" : ["用戶要求存取您的檔案"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["需要分享存取權限的附件"], "Close" : " 關閉", "Show more details" : "顯示更多細節", "Subscribe to {name}" : "訂閱 {name}", - "Download {name}" : "下載 {name}", - "Anniversary" : "週年", - "Appointment" : "約會", - "Business" : "商業", - "Education" : "教育", - "Holiday" : "假日", - "Meeting" : "會議", - "Miscellaneous" : "其他", - "Non-working hours" : "下班時段", - "Not in office" : "不在辦公室", - "Phone call" : "通話", - "Sick day" : "病假", - "Special occasion" : "特殊場合", - "Travel" : "旅行", - "Vacation" : "度假", + "Export {name}" : "導出 {name}", "Midnight on the day the event starts" : "活動開始日的午夜", - "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["於 {formattedHourMinute} 的活動 %n 天前"], - "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["於 {formattedHourMinute} 的活動 %n 週前"], - "on the day of the event at {formattedHourMinute}" : "於 {formattedHourMinute} 的活動當天", + "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["於 {formattedHourMinute} 的活動 %n 日前"], + "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["於 {formattedHourMinute} 的活動 %n 星期前"], + "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}", @@ -263,15 +453,15 @@ OC.L10N.register( "{time} after the event starts" : "活動開始後 {time}", "{time} after the event ends" : "活動結束後 {time}", "on {time}" : "於 {time}", - "on {time} ({timezoneId})" : "於 {time} ({timezoneId})", - "Week {number} of {year}" : "{year} 的第 {number} 週", + "on {time} ({timezoneId})" : "於 {time}({timezoneId})", + "Week {number} of {year}" : "{year} 的第 {number} 星期", "Does not repeat" : "不要重複", "Daily" : "每日", - "Weekly" : "每週", + "Weekly" : "每星期", "Monthly" : "每月", "Yearly" : "每年", - "_Every %n day_::_Every %n days_" : ["每 %n 天"], - "_Every %n week_::_Every %n weeks_" : ["每 %n 週"], + "_Every %n day_::_Every %n days_" : ["每 %n 日"], + "_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}_" : ["於 {weekdays}"], @@ -282,16 +472,9 @@ OC.L10N.register( "until {untilDate}" : "到 {untilDate}", "_%n time_::_%n times_" : ["%n 次"], "Untitled event" : "未命名活動", - "Untitled task" : "未命名工作項目", - "Please ask your administrator to enable the Tasks App." : "請要求您的管理員啟用工作項目應用程式。", - "prev" : "上一個", - "next" : "下一個", - "prev year" : "上一年", - "next year" : "明年", - "today" : "今天", - "list" : "列表", - "W" : "週", - "all-day" : "整天", + "Untitled task" : "未命名任務", + "Please ask your administrator to enable the Tasks App." : "請要求您的管理員啟用任務應用程式。", + "W" : "星期", "%n more" : "其餘 %n 項", "No events to display" : "無可顯示的活動", "_+%n more_::_+%n more_" : ["* 和其他 %n 個"], @@ -299,62 +482,95 @@ OC.L10N.register( "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" : "研討室", + "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." : "此活動在分享的日曆可見程度。", - "Location" : "地點", "Add a location" : "加入地點", - "Description" : "描述", "Add a description" : "加入描述", "Status" : "狀態", "Confirmed" : "已確認", - "Tentative" : "暫定", "Canceled" : "已取消", "Confirmation about the overall status of the event." : "有關活動整體狀態的確認。", "Show as" : "顯示為", "Take this event into account when calculating free-busy information." : "計算有空與忙碌資訊時,請將此活動考慮在內。", - "Free" : "有空", "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" : "取得檔案資訊時發生錯誤", "Chat room for event" : "活動的聊天室", + "An error occurred, unable to delete the calendar." : "發生錯誤,無法刪除日曆", "Imported {filename}" : "匯入的 {filename}", + "This is an event reminder." : "這是一個活動提醒。", "Meditation" : "冥想", "Relaxing" : "放鬆", "Relax" : "放鬆", + "Break" : "休息", + "Commute" : "通勤", + "Commuting" : "通勤中", + "Shuttle" : "穿梭巴士", + "Invoice" : "發票", + "Finance" : "財政", + "Bank" : "銀行", + "Money" : "金錢", + "Wedding" : "婚禮", + "Dog" : "狗", + "Concert" : "音樂會", + "Festival" : "節日", + "Theater" : "戲劇", + "Theatre" : "戲劇", "Presentation" : "簡報", - "Present" : "簡報", + "Talk" : "講座", + "Speech" : "演講", + "Deadline" : "最後期限", + "Submission" : "遞交", + "Reporting" : "報告", "Camping" : "露營", "Camp" : "露營", + "Election" : "選舉", + "Voting" : "投票", + "Vote" : "投票", + "Barbecue" : "BBQ", + "Barbeque" : "BBQ", + "Garden" : "園藝", + "Farm" : "農務 ", "Movie" : "電影", "Cinema" : "戲院", "Graduation" : "畢業", - "Brainstorm" : "腦力激盪", + "Brainstorm" : "腦力震盪", + "Review" : "審閱", + "Audit" : "審計", + "Inspection" : "檢查", + "Proofreading" : "校對", "Baseball" : "棒球", "Meet" : "會面", - "Planning" : "計劃中", + "Planning" : "規劃", "Pointing" : "指向", "Retrospective" : "回顧", - "Review" : "檢視", "Office" : "辦公室", "Contributor week" : "貢獻週", - "Party" : "派對", - "Celebration" : "慶祝", "Mail" : "郵件", "Soccer" : "足球", "Football" : "美式足球", "Gaming" : "打機", - "Play" : "嬉戲", - "Game" : "遊戲", "Drive" : "駕駛", + "Driving" : "駕駛", "Bicycle" : "單車", "Cycle" : "單車", + "Cycling" : "踩單車 ", "Biking" : "電單車", + "Bike" : "單車", "Podcast" : "Podcast", "Basketball" : "籃球", "Fishing" : "釣魚", @@ -365,10 +581,12 @@ OC.L10N.register( "Museum" : "博物館", "Pilates" : "Pilates", "Park" : "公園", + "Walk" : "步行", "Studying" : "讀書", "Doctor" : "醫生", "Health" : "健康", "Dentist" : "牙醫", + "Hospital" : "醫院", "Interview" : "面試", "Training" : "訓練", "Practice" : "練習", @@ -379,7 +597,10 @@ OC.L10N.register( "Gym" : "健身室", "Barber" : "理髮師", "Haircut" : "理髮", + "Hairdresser" : "髮型師", "Exam" : "考試", + "Written test" : "筆試", + "Oral test" : "口試", "Working" : "工作", "New Years Eve" : "除夕", "NYE" : "除夕", @@ -387,31 +608,38 @@ OC.L10N.register( "Running" : "跑步", "Go for a run" : "去跑步", "Marathon" : "馬拉松", - "Video-conference" : "視訊會議", + "Video-conference" : "視像會議", "Conference-call" : "電話會議", - "Video-call" : "視訊通話", - "Video-chat" : "視訊聊天", - "Video-meeting" : "視訊會議", + "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" : "午餐", - "Global" : "全球" + "Appointment not found" : "找不到預約", + "User not found" : "找不到用戶" }, "nplurals=1; plural=0;"); diff --git a/l10n/zh_HK.json b/l10n/zh_HK.json index b7a66407d1..df63bac2ab 100644 --- a/l10n/zh_HK.json +++ b/l10n/zh_HK.json @@ -1,57 +1,135 @@ { "translations": { - "User-Session unexpectedly expired" : "使用者連線階段過期", + "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 " : "成功地傳送電子郵件給", + "Successfully sent email to %1$s" : "成功傳送電子郵件給%1$s", "Hello," : "嗨,", - "We wanted to inform you that %s has published the calendar »%s«." : "通知您,%s 發佈了日曆 »%s«.", + "We wanted to inform you that %s has published the calendar »%s«." : "通知您,%s 發佈了日曆 »%s«。", "Open »%s«" : "開啟 »%s«", "Cheers!" : "太棒了!", "Upcoming events" : "接下來的活動", + "More events" : "更多活動", + "No more events today" : "今日沒有其他活動", + "No upcoming 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" : "確認", + "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) 與您預約了。", + "Anniversary" : "週年", + "Appointment" : "約會", + "Business" : "商業", + "Education" : "教育", + "Holiday" : "假日", + "Meeting" : "會議", + "Miscellaneous" : "其他", + "Non-working hours" : "非工作時間", + "Not in office" : "不在辦公室", + "Personal" : "個人", + "Phone call" : "通話", + "Sick day" : "病假", + "Special occasion" : "特殊場合", + "Travel" : "旅行", + "Vacation" : "度假", + "Custom Categories" : "自訂分類", + "Collaborative Tags" : "協作標籤", + "Standard Categories" : "標準分類", "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) 函式庫為基礎。", + "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" : "前一日", "Previous week" : "上星期", + "Previous year" : "上一年", "Previous month" : "上個月", - "Next day" : "隔天", + "Next day" : "隔日", "Next week" : "下星期", + "Next year" : "下一年", "Next month" : "下個月", - "+ New event" : "+ 新活動", - "Today" : "今天", + "Event" : "活動", + "Create new event" : "創建新活動", + "Today" : "今日", "Day" : "日", - "Week" : "週", + "Week" : "星期", "Month" : "月", + "Year" : "年", "List" : "清單", - "Untitled calendar" : "未命名日曆", - "Edit name" : "編輯名稱", - "Saving name …" : "儲存名稱 …", - "Edit color" : "編輯顏色", - "Saving color …" : "儲存顏色…", - "Copy private link" : "複製私人連結", - "Download" : "下載", - "Unshare from me" : "取消與我分享", + "Preview" : "預覽", + "Copy link" : "複製連結", + "Edit" : "編輯", "Delete" : "刪除", + "Appointment link was copied to clipboard" : "約會連結已複製到剪貼板", + "Appointment link could not be copied to clipboard" : "約會連結無法複製到剪貼板", + "Add new" : "新增", + "Untitled calendar" : "未命名日曆", + "Shared with you by" : "分享給您藉由", + "Edit and share calendar" : "編輯及分享日曆", + "Edit calendar" : "編輯日曆", + "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." : "發生錯誤,無法變更日曆的顏色", - "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["將在 {countdown} 秒後取消分享日曆"], + "_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} 秒後刪除日曆"], - "Share link" : "分享連結", - "Publish calendar" : "發布日曆", - "Publishing calendar" : "正在發布日曆", - "Copy public link" : "複製公開連結", - "Send link to calendar via email" : "透過電子郵件傳送日曆連結", - "Enter one address" : "輸入一個位址", - "Sending email …" : "正在傳送電子郵件…", + "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" : "添加公眾假期日曆", + "An error occurred, unable to create the calendar." : "發生錯誤,無法建立日曆", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "請輸入有效的連結(以 http://,https://,webcal://,或 webcals:// 開頭)", "Copy subscription link" : "複製訂閱的連結", "Copying link …" : "正在複製連結…", "Copied link" : "連結已複製", "Could not copy link" : "無法複製連結", + "Export" : "導出", + "Calendar link copied to clipboard." : "複製日曆連結到剪貼板", + "Calendar link could not be copied to clipboard." : "日曆連結無法複製到剪貼板", + "Trash bin" : "回收桶", + "Loading deleted items." : "正加載已删除的項目。", + "You do not have any deleted items." : "你没有已删除的項目。", + "Name" : "姓名", + "Deleted" : "已刪除", + "Restore" : "復原", + "Delete permanently" : "永久刪除", + "Empty trash bin" : "清空回收桶", + "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?" : "您真的想要清空回收桶嗎?", + "_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." : "無法變更日曆順序", + "Internal link" : "內部連結", + "A private link that can be used with external clients" : "可與外部客戶端一起使用的私人連結", + "Copy internal link" : "複製內部連結", + "Share link" : "分享連結", + "Copy public link" : "複製公開連結", + "Send link to calendar via email" : "透過電子郵件傳送日曆連結", + "Enter one address" : "輸入一個地址", + "Sending email …" : "正在傳送電子郵件…", "Copy embedding code" : "複製內嵌程式碼", "Copying code …" : "正在複製程式碼…", "Copied code" : "已複製程式碼", @@ -60,35 +138,35 @@ "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." : "無法複製內嵌程式碼到剪貼簿", + "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" : "沒有使用者或群組", "can edit" : "可編輯", "Unshare with {displayName}" : "取消與 {displayName} 的分享", - "An error occurred, unable to change the unshare the calendar." : "發生錯誤,無法變更日曆", + "An error occurred while unsharing 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:// 開頭)", - "Could not update calendar order." : "無法變更日曆順序", + "Share with users or groups" : "與用戶或群組分享", + "No users or groups" : "沒有用戶或群組", + "Calendar name …" : "日曆名稱 ...", + "Share calendar" : "分享日曆", + "Unshare from me" : "由我取消的分享", + "Save" : "儲存", + "Failed to save calendar name and color" : "儲存日曆名稱或色彩失敗", "Import calendars" : "匯入日曆", "Please select a calendar to import into …" : "請選擇將匯入的日曆", "Filename" : "檔案名稱", "Calendar to import into" : "將匯入的日曆", "Cancel" : "取消", "_Import calendar_::_Import calendars_" : ["匯入日曆"], - "{filename} is an unsupported file-type" : "{filename} 是不支援的檔案類型", + "Default attachments location" : "默認附件位置", + "Select the default location for attachments" : "選擇附件的默認位置", + "Invalid location selected" : "所選的位置無效", + "Attachments folder successfully saved." : "附件資料夾已成功保存。", + "Error on saving attachments folder." : "儲存附件資料夾時發生錯誤。", "{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 個活動"], + "_Successfully imported %n event_::_Successfully imported %n events_" : ["成功匯入 %n 個活動"], "Automatic" : "自動", "Automatic ({detected})" : "自動({detected})", "New setting was not saved successfully." : "新設定未成功儲存", @@ -97,27 +175,89 @@ "Navigation" : "導覽列", "Previous period" : "前一期間", "Next period" : "下一期間", - "Views" : "顯示", - "Day view" : "每日", - "Week view" : "每週", - "Month view" : "每月", - "Actions" : "動作", + "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" : "重複活動", "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 reminder" : "默認提醒", "Copy primary CalDAV address" : "複製主要的 CalDAV 位址", "Copy iOS/macOS CalDAV address" : "複製 iOS/macOS 的 CalDAV 位址", - "Show keyboard shortcuts" : "顯示快速鍵", - "Settings & import" : "設定及匯入", - "CalDAV link copied to clipboard." : "已複製 CalDAV 連結至剪貼簿", - "CalDAV link could not be copied to clipboard." : "無法複製 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} 分鐘"], + "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 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" : "星期二", + "Wednesday" : "星期三", + "Thursday" : "星期四", + "Friday" : "星期五", + "Saturday" : "星期六", + "Sunday" : "星期日", + "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" : "編輯預約", + "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" : "提醒", "before at" : "之前於", - "Notification" : "通知", + "Notification" : "通告", "Email" : "電子郵件", "Audio notification" : "音訊通知", "Other notification" : "其他通知", @@ -129,81 +269,119 @@ "on" : "在", "at" : "在", "+ Add reminder" : "+ 加入提醒", + "Add reminder" : "添加提醒", "_second_::_seconds_" : ["秒"], "_minute_::_minutes_" : ["分鐘"], "_hour_::_hours_" : ["時"], "_day_::_days_" : ["天"], - "_week_::_weeks_" : ["週"], - "No reminders yet" : "目前沒有任何提醒", - "Availability of attendees, resources and rooms" : "參與者、資源和空間的可用性", + "_week_::_weeks_" : ["星期"], + "No attachments" : "無附件", + "Add from Files" : "從檔案添加", + "Upload from device" : "從裝置上傳", + "Delete file" : "刪除檔案", + "Choose a file to add as attachment" : "選擇要作為附件的檔案", + "Choose a file to share as a link" : "選擇要作為連結分享的檔案", + "Attachment {name} already exist!" : "附件 {name} 已存在!", + "_{count} attachment_::_{count} attachments_" : ["{count} 個附件"], + "Invitation accepted" : "已接受邀請", + "Available" : "可用", + "Suggested" : "建議", + "Participation marked as tentative" : "參與標記為暫定", + "Accepted {organizerName}'s invitation" : "已接受 {organizerName} 的邀請", + "Not available" : "不可用", + "Invitation declined" : "邀請被婉拒", + "Declined {organizerName}'s invitation" : "已婉拒 {organizerName} 的邀請", + "Invitation is delegated" : "邀請已委派", + "Checking availability" : "檢查空閒時間", + "Invitation sent" : "邀請已傳送", + "Has not responded to {organizerName}'s invitation yet" : "尚未回覆 {organizerName} 的邀請", + "Availability of attendees, resources and rooms" : "參與者、資源和會議室的空閒時間", + "{organizer} (organizer)" : "{organizer}(主辦人)", + "Free" : "有空", "Busy (tentative)" : "忙碌(暫定)", "Busy" : "忙碌", "Out of office" : "不在辦公室", "Unknown" : "不詳", - "{name} accepted your invitation." : "{name} 已接受您的邀請。", - "{name} accepted {organizerName}'s invitation." : "{name} 已接受 {organizerName} 的邀請", - "{name} declined your invitation." : "{name} 已婉拒您的邀請", - "{name} declined {organizerName}'s invitation." : "{name} 已婉拒 {organizerName} 的邀請", - "{name} has delegated their invitation." : "{name} 已將邀請轉給他人", - "{name} marked their participation as tentative." : "{name} 表示他暫定可以出席", - "{name} did not respond to your invitation yet." : "{name} 尚未回覆您的邀請", - "{name} did not respond to {organizerName}'s invitation yet." : "{name} 尚未回覆 {organizerName} 的邀請", + "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" : "顯示忙碌時段", + "No attendees yet" : "還沒有任何參與者", + "You don't own this calendar, so you cannot add attendees to this event" : "您並未擁有此日曆,因此您無法新增參與者到此活動", + "Successfully appended link to talk room to location." : "成功將線上會議室的連結加至位置。", "Successfully appended link to talk room to description." : "成功將線上會議室的連結加至活動細節", "Error creating Talk room" : "建立線上會議室發生錯誤", - "Send e-mail" : "傳送電子郵件", + "Send email" : "傳送電郵", "Chairperson" : "主席", "Required participant" : "需出席的參與者", "Optional participant" : "可不出席的參與者", "Non-participant" : "非參與者", "Remove attendee" : "移除參與者", - "Search for e-mails, users, contacts, resources or rooms" : "搜尋電子郵件、使用者、聯絡人、資源或會議室", + "Search for emails, users or contacts" : "搜尋電郵地址、用戶或聯絡人", "No match found" : "找不到符合的項目", - "No attendees yet" : "還沒有任何參與者", "(organizer)" : "(主辦人)", - "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "若要送出邀請函並處理回覆,[linkopen]請至個人設定頁加入您的電郵地址[linkclose]", + "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "若要送出邀請函並處理回覆,[linkopen] 請到個人設定頁加入您的電郵地址 [linkclose]", "Remove color" : "移除顏色", "Event title" : "活動標題", - "All day" : "全天", - "Can not modify all-day setting for events that are part of a recurrence-set." : "無法變更定期重複活動的全日設定", + "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} 止", + "Repeat" : "重複", "End repeat" : "停止重複", "Select to end repeat" : "選擇以結束重複", "never" : "永不", "on date" : "在特定日期", "after" : "之後", "_time_::_times_" : ["次"], - "This event is the recurrence-exception of a recurrence-set. You can not 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" : "倒數第一", + "second to last" : "尾二", + "last" : "最尾", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "變更的重複規則只會套用至這項活動和重複的未來活動", - "Repeat" : "重複", "Repeat every" : "重複循環", "By day of the month" : "每月中特定日", "On the" : "在", "_month_::_months_" : ["月"], "_year_::_years_" : ["年"], - "Monday" : "星期一", - "weekday" : "週間", + "weekday" : "平日", "weekend day" : "週末", - "Summary" : "摘要", + "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" : "建議", + "No rooms or resources yet" : "尚無可用會議室或資源", + "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" : "不可用", + "Room type" : "房間類型", + "Any" : "任何", + "Minimum seating capacity" : "最小座位數量", "More" : "更多", - "Save" : "儲存", - "Update" : "更新", "Update this occurrence" : "更新此重複", - "Update this and all future" : "更新這次和所有未來的重複", + "Update this and all future" : "更新此次和以後的活動", "Public calendar does not exist" : "公開日曆不存在", "Maybe the share was deleted or has expired?" : "分享是否已刪除或過期?", - "Please select a timezone:" : "請選取時區:", + "Please select a time zone:" : "請選擇時區:", "Pick a time" : "挑選時間", "Pick a date" : "挑選日期", "from {formattedDate}" : "從 {formattedDate}", @@ -215,45 +393,57 @@ "{formattedDate} at {formattedTime}" : "{formattedDate} {formattedTime}", "Please enter a valid date" : "請輸入有效的日期", "Please enter a valid date and time" : "請輸入有效的日期和時間", - "Type to search timezone" : "開始輸入以搜尋時區", - "Personal" : "私人", - "The automatic timezone detection determined your timezone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your timezone manually in the calendar settings." : "系統偵測到您的時區為 UTC,這可能是因為網頁伺服器的安全設定,請至日曆設定中手動設定您的時區", - "Your configured timezone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your timezone in the settings and report this issue." : "找不到您選擇的時區 {timezoneId} ,先以 UTC 替代\n請至設定改變您的時區並回報此問題", - "No more events today" : "今天沒有其他活動", - "No upcoming events" : "沒有接下來的活動", + "Type to search time zone" : "輸入以搜尋時區", + "Global" : "全球", + "Public holiday calendars" : "公眾假期日曆", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "公眾假期日曆由 Thunderbird 提供。將從 {website} 下載日曆數據", + "By {authors}" : "作者 {authors}", + "Subscribed" : "已訂閱", + "Subscribe" : "訂閱", + "Holidays in {region}" : "{region} 的假期", + "An error occurred, unable to create the public holiday calendar." : "發生錯誤,無法創建公眾假期日曆。", + "Select date" : "選擇日期", + "Select slot" : "選擇時段", + "No slots available" : "沒有可用的時段", + "Could not fetch slots" : "無法擷取時段", + "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} 的公開預約", + "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請至設定改變您的時區並舉報此問題。", "Create a new event" : "建立新活動", - "[Today]" : "[今天]", - "[Tomorrow]" : "[明天]", - "[Yesterday]" : "[昨天]", + "[Today]" : "[今日]", + "[Tomorrow]" : "[明日]", + "[Yesterday]" : "[昨日]", "[Last] dddd" : "[上] dddd", "Event does not exist" : "活動不存在", - "Delete this occurrence" : "刪除這次活動", - "Delete this and all future" : "刪除這次和所有未來重複", + "Duplicate" : "重複", + "Delete this occurrence" : "刪除此次活動", + "Delete this and all future" : "刪除此次和以後的活動", "Details" : "詳細資料", + "Managing shared access" : "管理已分享的存取權限", + "Deny access" : "拒絕存取", + "Invite" : "邀請", "Attendees" : "參與者", - "Reminders" : "提醒", + "Resources" : "資源", + "_User requires access to your file_::_Users require access to your file_" : ["用戶要求存取您的檔案"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["需要分享存取權限的附件"], "Close" : " 關閉", "Show more details" : "顯示更多細節", "Subscribe to {name}" : "訂閱 {name}", - "Download {name}" : "下載 {name}", - "Anniversary" : "週年", - "Appointment" : "約會", - "Business" : "商業", - "Education" : "教育", - "Holiday" : "假日", - "Meeting" : "會議", - "Miscellaneous" : "其他", - "Non-working hours" : "下班時段", - "Not in office" : "不在辦公室", - "Phone call" : "通話", - "Sick day" : "病假", - "Special occasion" : "特殊場合", - "Travel" : "旅行", - "Vacation" : "度假", + "Export {name}" : "導出 {name}", "Midnight on the day the event starts" : "活動開始日的午夜", - "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["於 {formattedHourMinute} 的活動 %n 天前"], - "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["於 {formattedHourMinute} 的活動 %n 週前"], - "on the day of the event at {formattedHourMinute}" : "於 {formattedHourMinute} 的活動當天", + "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["於 {formattedHourMinute} 的活動 %n 日前"], + "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["於 {formattedHourMinute} 的活動 %n 星期前"], + "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}", @@ -261,15 +451,15 @@ "{time} after the event starts" : "活動開始後 {time}", "{time} after the event ends" : "活動結束後 {time}", "on {time}" : "於 {time}", - "on {time} ({timezoneId})" : "於 {time} ({timezoneId})", - "Week {number} of {year}" : "{year} 的第 {number} 週", + "on {time} ({timezoneId})" : "於 {time}({timezoneId})", + "Week {number} of {year}" : "{year} 的第 {number} 星期", "Does not repeat" : "不要重複", "Daily" : "每日", - "Weekly" : "每週", + "Weekly" : "每星期", "Monthly" : "每月", "Yearly" : "每年", - "_Every %n day_::_Every %n days_" : ["每 %n 天"], - "_Every %n week_::_Every %n weeks_" : ["每 %n 週"], + "_Every %n day_::_Every %n days_" : ["每 %n 日"], + "_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}_" : ["於 {weekdays}"], @@ -280,16 +470,9 @@ "until {untilDate}" : "到 {untilDate}", "_%n time_::_%n times_" : ["%n 次"], "Untitled event" : "未命名活動", - "Untitled task" : "未命名工作項目", - "Please ask your administrator to enable the Tasks App." : "請要求您的管理員啟用工作項目應用程式。", - "prev" : "上一個", - "next" : "下一個", - "prev year" : "上一年", - "next year" : "明年", - "today" : "今天", - "list" : "列表", - "W" : "週", - "all-day" : "整天", + "Untitled task" : "未命名任務", + "Please ask your administrator to enable the Tasks App." : "請要求您的管理員啟用任務應用程式。", + "W" : "星期", "%n more" : "其餘 %n 項", "No events to display" : "無可顯示的活動", "_+%n more_::_+%n more_" : ["* 和其他 %n 個"], @@ -297,62 +480,95 @@ "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" : "研討室", + "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." : "此活動在分享的日曆可見程度。", - "Location" : "地點", "Add a location" : "加入地點", - "Description" : "描述", "Add a description" : "加入描述", "Status" : "狀態", "Confirmed" : "已確認", - "Tentative" : "暫定", "Canceled" : "已取消", "Confirmation about the overall status of the event." : "有關活動整體狀態的確認。", "Show as" : "顯示為", "Take this event into account when calculating free-busy information." : "計算有空與忙碌資訊時,請將此活動考慮在內。", - "Free" : "有空", "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" : "取得檔案資訊時發生錯誤", "Chat room for event" : "活動的聊天室", + "An error occurred, unable to delete the calendar." : "發生錯誤,無法刪除日曆", "Imported {filename}" : "匯入的 {filename}", + "This is an event reminder." : "這是一個活動提醒。", "Meditation" : "冥想", "Relaxing" : "放鬆", "Relax" : "放鬆", + "Break" : "休息", + "Commute" : "通勤", + "Commuting" : "通勤中", + "Shuttle" : "穿梭巴士", + "Invoice" : "發票", + "Finance" : "財政", + "Bank" : "銀行", + "Money" : "金錢", + "Wedding" : "婚禮", + "Dog" : "狗", + "Concert" : "音樂會", + "Festival" : "節日", + "Theater" : "戲劇", + "Theatre" : "戲劇", "Presentation" : "簡報", - "Present" : "簡報", + "Talk" : "講座", + "Speech" : "演講", + "Deadline" : "最後期限", + "Submission" : "遞交", + "Reporting" : "報告", "Camping" : "露營", "Camp" : "露營", + "Election" : "選舉", + "Voting" : "投票", + "Vote" : "投票", + "Barbecue" : "BBQ", + "Barbeque" : "BBQ", + "Garden" : "園藝", + "Farm" : "農務 ", "Movie" : "電影", "Cinema" : "戲院", "Graduation" : "畢業", - "Brainstorm" : "腦力激盪", + "Brainstorm" : "腦力震盪", + "Review" : "審閱", + "Audit" : "審計", + "Inspection" : "檢查", + "Proofreading" : "校對", "Baseball" : "棒球", "Meet" : "會面", - "Planning" : "計劃中", + "Planning" : "規劃", "Pointing" : "指向", "Retrospective" : "回顧", - "Review" : "檢視", "Office" : "辦公室", "Contributor week" : "貢獻週", - "Party" : "派對", - "Celebration" : "慶祝", "Mail" : "郵件", "Soccer" : "足球", "Football" : "美式足球", "Gaming" : "打機", - "Play" : "嬉戲", - "Game" : "遊戲", "Drive" : "駕駛", + "Driving" : "駕駛", "Bicycle" : "單車", "Cycle" : "單車", + "Cycling" : "踩單車 ", "Biking" : "電單車", + "Bike" : "單車", "Podcast" : "Podcast", "Basketball" : "籃球", "Fishing" : "釣魚", @@ -363,10 +579,12 @@ "Museum" : "博物館", "Pilates" : "Pilates", "Park" : "公園", + "Walk" : "步行", "Studying" : "讀書", "Doctor" : "醫生", "Health" : "健康", "Dentist" : "牙醫", + "Hospital" : "醫院", "Interview" : "面試", "Training" : "訓練", "Practice" : "練習", @@ -377,7 +595,10 @@ "Gym" : "健身室", "Barber" : "理髮師", "Haircut" : "理髮", + "Hairdresser" : "髮型師", "Exam" : "考試", + "Written test" : "筆試", + "Oral test" : "口試", "Working" : "工作", "New Years Eve" : "除夕", "NYE" : "除夕", @@ -385,31 +606,38 @@ "Running" : "跑步", "Go for a run" : "去跑步", "Marathon" : "馬拉松", - "Video-conference" : "視訊會議", + "Video-conference" : "視像會議", "Conference-call" : "電話會議", - "Video-call" : "視訊通話", - "Video-chat" : "視訊聊天", - "Video-meeting" : "視訊會議", + "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" : "午餐", - "Global" : "全球" + "Appointment not found" : "找不到預約", + "User not found" : "找不到用戶" },"pluralForm" :"nplurals=1; plural=0;" } \ No newline at end of file diff --git a/l10n/zh_TW.js b/l10n/zh_TW.js index 4e90aa2232..4420eac7b8 100644 --- a/l10n/zh_TW.js +++ b/l10n/zh_TW.js @@ -1,59 +1,137 @@ 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 " : "成功地傳送電子郵件給", + "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" : "接下來的活動", + "More events" : "更多活動", + "No more events today" : "今天沒有其他活動", + "No upcoming 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" : "確認", + "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) 與您預約了。", + "Anniversary" : "週年", + "Appointment" : "預約", + "Business" : "商業", + "Education" : "教育", + "Holiday" : "假日", + "Meeting" : "會議", + "Miscellaneous" : "其他", + "Non-working hours" : "下班時段", + "Not in office" : "不在辦公室", + "Personal" : "私人", + "Phone call" : "通話", + "Sick day" : "病假", + "Special occasion" : "特殊場合", + "Travel" : "旅行", + "Vacation" : "度假", + "Custom Categories" : "自訂分類", + "Collaborative Tags" : "協作標籤", + "Standard Categories" : "標準分類", "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" : "前一日", "Previous week" : "前週", - "Previous month" : "前月", + "Previous year" : "前一年", + "Previous month" : "上個月", "Next day" : "隔天", "Next week" : "下週", + "Next year" : "明年", "Next month" : "下個月", - "+ New event" : "+ 新活動", + "Event" : "事件", + "Create new event" : "建立新事件", "Today" : "今天", "Day" : "日", "Week" : "週", "Month" : "月", + "Year" : "年", "List" : "清單", - "Untitled calendar" : "未命名日曆", - "Edit name" : "編輯名稱", - "Saving name …" : "儲存名稱…", - "Edit color" : "編輯顏色", - "Saving color …" : "儲存顏色…", - "Copy private link" : "複製私人連結", - "Download" : "下載", - "Unshare from me" : "取消與我分享", + "Preview" : "預覽", + "Copy link" : "複製連結", + "Edit" : "編輯", "Delete" : "刪除", + "Appointment link was copied to clipboard" : "預約連結已複製到剪貼簿", + "Appointment link could not be copied to clipboard" : "預約連結無法複製到剪貼簿", + "Add new" : "新增", + "Untitled calendar" : "未命名日曆", + "Shared with you by" : "分享給您藉由", + "Edit and share calendar" : "編輯並分享行事曆", + "Edit calendar" : "編輯行事曆", + "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." : "發生錯誤,無法變更日曆的顏色", "_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} 秒後刪除日曆"], + "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" : "新增公眾節日行事曆", + "An error occurred, unable to create the calendar." : "發生錯誤,無法建立日曆", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "請輸入有效的連結(以 http:// , https:// , webcal:// , 或 webcals:// 開頭)", + "Copy subscription link" : "複製訂閱的連結", + "Copying link …" : "正在複製連結…", + "Copied link" : "連結已複製", + "Could not copy link" : "無法複製連結", + "Export" : "匯出", + "Calendar link copied to clipboard." : "複製日曆連結到剪貼簿", + "Calendar link could not be copied to clipboard." : "日曆連結無法複製到剪貼簿", + "Trash bin" : "回收桶", + "Loading deleted items." : "載入已刪除的項目。", + "You do not have any deleted items." : "您沒有任何已刪除的項目。", + "Name" : "名稱", + "Deleted" : "已刪除", + "Restore" : "還原", + "Delete permanently" : "永久刪除", + "Empty trash bin" : "清空回收桶", + "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?" : "您真的想要清空回收桶嗎?", + "_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." : "無法變更日曆順序", + "Internal link" : "內部連結", + "A private link that can be used with external clients" : "可與外部客戶端一起使用的私人連結", + "Copy internal link" : "複製內部連結", "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" : "已複製程式碼", @@ -65,32 +143,32 @@ OC.L10N.register( "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" : "沒有使用者或群組", "can edit" : "可編輯", "Unshare with {displayName}" : "取消與 {displayName} 的分享", - "An error occurred, unable to change the unshare the calendar." : "發生錯誤,無法變更日曆", + "An error occurred while unsharing 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:// 開頭)", - "Could not update calendar order." : "無法變更日曆順序", + "Share with users or groups" : "與使用者或群組分享", + "No users or groups" : "沒有使用者或群組", + "Calendar name …" : "行事曆名稱……", + "Share calendar" : "分享行事曆", + "Unshare from me" : "取消與我分享", + "Save" : "儲存", + "Failed to save calendar name and color" : "儲存行事曆名稱或色彩失敗", "Import calendars" : "匯入日曆", "Please select a calendar to import into …" : "請選擇將匯入的日曆", "Filename" : "檔案名稱", "Calendar to import into" : "將匯入的日曆", "Cancel" : "取消", "_Import calendar_::_Import calendars_" : ["匯入日曆"], - "{filename} is an unsupported file-type" : "{filename} 是不支援的檔案類型", + "Default attachments location" : "預設附件位置", + "Select the default location for attachments" : "選取附件的預設位置", + "Invalid location selected" : "選取無效的位置", + "Attachments folder successfully saved." : "附件資料夾已成功儲存。", + "Error on saving attachments folder." : "儲存附件資料夾時發生錯誤。", "{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 個活動"], + "_Successfully imported %n event_::_Successfully imported %n events_" : ["成功匯入 %n 個活動"], "Automatic" : "自動", "Automatic ({detected})" : "自動({detected})", "New setting was not saved successfully." : "新設定未成功儲存", @@ -103,21 +181,83 @@ 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" : "重複事件", "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 reminder" : "預設提醒", "Copy primary CalDAV address" : "複製主要的 CalDAV 位址", "Copy iOS/macOS CalDAV address" : "複製 iOS/macOS 的 CalDAV 位址", + "Personal availability settings" : "個人可用設定", "Show keyboard shortcuts" : "顯示快速鍵", - "Settings & import" : "設定及匯入", + "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} 分鐘"], + "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 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" : "週二", + "Wednesday" : "週三", + "Thursday" : "週四", + "Friday" : "週五", + "Saturday" : "週六", + "Sunday" : "週日", + "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" : "編輯預約", + "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" : "提醒", "before at" : "之前於", "Notification" : "通知", "Email" : "Email", @@ -131,55 +271,81 @@ OC.L10N.register( "on" : "在", "at" : "在", "+ Add reminder" : "+ 加入提醒", + "Add reminder" : "新增提醒", "_second_::_seconds_" : ["秒"], "_minute_::_minutes_" : ["分鐘"], "_hour_::_hours_" : ["時"], "_day_::_days_" : ["天"], "_week_::_weeks_" : ["週"], - "No reminders yet" : "目前沒有任何提醒", + "No attachments" : "無附件", + "Add from Files" : "新增自檔案", + "Upload from device" : "從裝置上傳", + "Delete file" : "刪除檔案", + "Choose a file to add as attachment" : "選擇要作為附件的檔案", + "Choose a file to share as a link" : "選擇要作為連結分享的檔案", + "Attachment {name} already exist!" : "附件 {name} 已存在!", + "_{count} attachment_::_{count} attachments_" : ["{count} 個附件"], + "Invitation accepted" : "已接受邀請", + "Available" : "可用", + "Suggested" : "建議", + "Participation marked as tentative" : "將參與標記為暫定", + "Accepted {organizerName}'s invitation" : "已接受 {organizerName} 的邀請", + "Not available" : "無法使用", + "Invitation declined" : "邀請被拒絕", + "Declined {organizerName}'s invitation" : "已拒絕 {organizerName} 的邀請", + "Invitation is delegated" : "邀請已配送", + "Checking availability" : "正在檢查可用性。", + "Invitation sent" : "邀請已傳送", + "Has not responded to {organizerName}'s invitation yet" : "尚未回覆 {organizerName} 的邀請", "Availability of attendees, resources and rooms" : "參與者、資源和空間的可用性", + "{organizer} (organizer)" : "{organizer} (organizer)", + "Free" : "有空", "Busy (tentative)" : "忙碌(暫定)", "Busy" : "忙碌", "Out of office" : "不在辦公室", "Unknown" : "不明", - "{name} accepted your invitation." : "{name} 已接受您的邀請。", - "{name} accepted {organizerName}'s invitation." : "{name} 已接受 {organizerName} 的邀請", - "{name} declined your invitation." : "{name} 已婉拒您的邀請", - "{name} declined {organizerName}'s invitation." : "{name} 已婉拒 {organizerName} 的邀請", - "{name} has delegated their invitation." : "{name} 已將邀請轉給他人", - "{name} marked their participation as tentative." : "{name} 表示他暫定可以出席", - "{name} did not respond to your invitation yet." : "{name} 尚未回覆您的邀請", - "{name} did not respond to {organizerName}'s invitation yet." : "{name} 尚未回覆 {organizerName} 的邀請", + "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" : "顯示忙碌時段", + "No attendees yet" : "還沒有任何參與者", + "You don't own this calendar, so you cannot add attendees to this event" : "您並未擁有此行事曆,因此您無法新增參與者到此活動", + "Successfully appended link to talk room to location." : "成功將線上會議室的連結加至位置", "Successfully appended link to talk room to description." : "成功將線上會議室的連結加至活動細節", "Error creating Talk room" : "建立線上會議室發生錯誤", - "Send e-mail" : "傳送電子郵件", + "Send email" : "傳送電子郵件", "Chairperson" : "主席", "Required participant" : "需出席的參與者", "Optional participant" : "可不出席的參與者", "Non-participant" : "非參與者", "Remove attendee" : "移除參與者", - "Search for e-mails, users, contacts, resources or rooms" : "搜尋電子郵件、使用者、聯絡人、資源或會議室", + "Search for emails, users or contacts" : "搜尋電子郵件、使用者與聯絡人", "No match found" : "找不到符合的項目", - "No attendees 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" : "全天", - "Can not 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 {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" : "永不", "on date" : "在特定日期", "after" : "之後", "_time_::_times_" : ["次"], - "This event is the recurrence-exception of a recurrence-set. You can not 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" : "第四", @@ -187,25 +353,37 @@ OC.L10N.register( "second to last" : "倒數第二", "last" : "倒數第一", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "變更的重複規則只會套用至這項活動和重複的未來活動", - "Repeat" : "重複", "Repeat every" : "重複循環", "By day of the month" : "每月中特定日", "On the" : "在", "_month_::_months_" : ["月"], "_year_::_years_" : ["年"], - "Monday" : "週一", "weekday" : "週間", "weekend day" : "週末", - "Summary" : "摘要", + "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" : "建議", + "No rooms or resources yet" : "還沒有聊天室或資源", + "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" : "不可用", + "Room type" : "房間類型", + "Any" : "任何", + "Minimum seating capacity" : "最小座位數", "More" : "更多", - "Save" : "儲存", - "Update" : "更新", "Update this occurrence" : "更新此重複", "Update this and all future" : "更新這次和所有未來的重複", "Public calendar does not exist" : "公開日曆不存在", "Maybe the share was deleted or has expired?" : "分享是否已刪除或過期?", - "Please select a timezone:" : "請選取時區:", + "Please select a time zone:" : "請選取時區:", "Pick a time" : "挑選時間", "Pick a date" : "挑選日期", "from {formattedDate}" : "從 {formattedDate}", @@ -217,41 +395,53 @@ OC.L10N.register( "{formattedDate} at {formattedTime}" : "{formattedDate} {formattedTime}", "Please enter a valid date" : "請輸入有效的日期", "Please enter a valid date and time" : "請輸入有效的日期和時間", - "Type to search timezone" : "開始輸入以搜尋時區", - "Personal" : "私人", - "The automatic timezone detection determined your timezone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your timezone manually in the calendar settings." : "系統偵測到您的時區為 UTC,這可能是因為網頁伺服器的安全設定,請至日曆設定中手動設定您的時區", - "Your configured timezone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your timezone in the settings and report this issue." : "找不到您選擇的時區 {timezoneId} ,先以 UTC 替代\n請至設定改變您的時區並回報此問題", - "No more events today" : "今天沒有其他活動", - "No upcoming events" : "沒有接下來的活動", + "Type to search time zone" : "輸入以搜尋時區", + "Global" : "全球", + "Public holiday calendars" : "公眾節日行事曆", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "公眾節日行事曆由 Thunderbird 提供。將會從 {website} 下載行事曆資料", + "By {authors}" : "作者為 {authors}", + "Subscribed" : "已訂閱", + "Subscribe" : "訂閱", + "Holidays in {region}" : "{region} 的節日", + "An error occurred, unable to create the public holiday calendar." : "發生錯誤,無法建立公眾節日行事曆。", + "Select date" : "選取日期", + "Select slot" : "選取時段", + "No slots available" : "無可用時段", + "Could not fetch slots" : "無法擷取時段", + "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} 的公開預約", + "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請在設定中變更您的時區並回報此問題。", "Create a new event" : "建立新活動", "[Today]" : "[今天]", "[Tomorrow]" : "[明天]", "[Yesterday]" : "[昨天]", "[Last] dddd" : "[上] dddd", "Event does not exist" : "活動不存在", + "Duplicate" : "重複", "Delete this occurrence" : "刪除這次活動", "Delete this and all future" : "刪除這次和所有未來重複", "Details" : "詳細資料", + "Managing shared access" : "管理已分享的存取權限", + "Deny access" : "拒絕存取", + "Invite" : "邀請", "Attendees" : "參與者", - "Reminders" : "提醒", + "Resources" : "資源", + "_User requires access to your file_::_Users require access to your file_" : ["使用者要求存取您的檔案"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["需要分享存取權限的附件"], "Close" : " 關閉", "Show more details" : "顯示更多細節", "Subscribe to {name}" : "訂閱 {name}", - "Download {name}" : "下載 {name}", - "Anniversary" : "週年", - "Appointment" : "預約", - "Business" : "商業", - "Education" : "教育", - "Holiday" : "假日", - "Meeting" : "會議", - "Miscellaneous" : "其他", - "Non-working hours" : "下班時段", - "Not in office" : "不在辦公室", - "Phone call" : "通話", - "Sick day" : "病假", - "Special occasion" : "特殊場合", - "Travel" : "旅行", - "Vacation" : "度假", + "Export {name}" : "匯出 {name}", "Midnight on the day the event starts" : "活動開始日的午夜", "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["於 {formattedHourMinute} 的活動 %n 天前"], "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["於 {formattedHourMinute} 的活動 %n 週前"], @@ -284,14 +474,7 @@ OC.L10N.register( "Untitled event" : "未命名活動", "Untitled task" : "未命名工作項目", "Please ask your administrator to enable the Tasks App." : "請要求您的管理員啟用工作項目應用程式。", - "prev" : "上一個", - "next" : "下一個", - "prev year" : "上一年", - "next year" : "明年", - "today" : "今天", - "list" : "列表", "W" : "週", - "all-day" : "全天", "%n more" : "其餘 %n 項", "No events to display" : "無可顯示的活動", "_+%n more_::_+%n more_" : ["* 和其他 %n 個"], @@ -299,62 +482,95 @@ OC.L10N.register( "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" : "研討室", + "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." : "此活動在分享的日曆可見程度。", - "Location" : "地點", "Add a location" : "加入地點", - "Description" : "描述", "Add a description" : "加入描述", "Status" : "狀態", "Confirmed" : "已確認", - "Tentative" : "暫定", "Canceled" : "已取消", "Confirmation about the overall status of the event." : "有關活動整體狀態的確認。", "Show as" : "顯示為", "Take this event into account when calculating free-busy information." : "計算有空與忙碌資訊時,請將此活動考慮在內。", - "Free" : "有空", "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" : "取得檔案資訊時發生錯誤", "Chat room for event" : "活動的聊天室", + "An error occurred, unable to delete the calendar." : "發生錯誤,無法刪除日曆", "Imported {filename}" : "匯入的 {filename}", + "This is an event reminder." : "這是一個事件提醒。", "Meditation" : "冥想", "Relaxing" : "放鬆", "Relax" : "放鬆", + "Break" : "休息", + "Commute" : "通勤", + "Commuting" : "通勤中", + "Shuttle" : "穿梭", + "Invoice" : "發票", + "Finance" : "金融", + "Bank" : "銀行", + "Money" : "錢", + "Wedding" : "婚禮", + "Dog" : "狗", + "Concert" : "音樂會", + "Festival" : "節日", + "Theater" : "劇院", + "Theatre" : "劇院", "Presentation" : "簡報", - "Present" : "簡報", + "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" : "回顧", - "Review" : "檢閱", "Office" : "辦公室", "Contributor week" : "貢獻週", - "Party" : "派對", - "Celebration" : "慶祝", "Mail" : "郵件", "Soccer" : "足球", "Football" : "美式足球", "Gaming" : "遊戲", - "Play" : "播放", - "Game" : "遊戲", "Drive" : "駕駛", + "Driving" : "駕駛", "Bicycle" : "單車", "Cycle" : "腳踏車", + "Cycling" : "騎車", "Biking" : "自行車", + "Bike" : "腳踏車", "Podcast" : "Podcast", "Basketball" : "籃球", "Fishing" : "釣魚", @@ -365,10 +581,12 @@ OC.L10N.register( "Museum" : "博物館", "Pilates" : "皮拉提斯", "Park" : "公園", + "Walk" : "步行", "Studying" : "讀書", "Doctor" : "醫生", "Health" : "健康", "Dentist" : "牙醫", + "Hospital" : "醫院", "Interview" : "面試", "Training" : "訓練", "Practice" : "練習", @@ -379,7 +597,10 @@ OC.L10N.register( "Gym" : "健身房", "Barber" : "理髮師", "Haircut" : "理髮", + "Hairdresser" : "美髮師", "Exam" : "考試", + "Written test" : "筆試", + "Oral test" : "口試", "Working" : "工作", "New Years Eve" : "新年前夕", "NYE" : "新年前夕", @@ -398,20 +619,27 @@ OC.L10N.register( "Conference" : "會議", "Pizza" : "披薩", "Travelling" : "旅行", + "Trip" : "旅行", "Journey" : "旅程", "Collaborate" : "協作", "Pair" : "配對", "Lecture" : "演講", "Seminar" : "專題討論", + "Teaching" : "教學", "Photograph" : "攝影", + "Party" : "派對", + "Celebration" : "慶祝", "Celebrate" : "慶祝", + "Birthday" : "生日", "Shopping" : "購物", + "Groceries" : "雜貨", "Skate" : "溜冰", "Skateboard" : "滑板", "Wine tasting" : "品酒", "Golf" : "高爾夫球", "Dinner" : "晚餐", "Lunch" : "午餐", - "Global" : "全球" + "Appointment not found" : "找不到預約", + "User not found" : "找不到使用者" }, "nplurals=1; plural=0;"); diff --git a/l10n/zh_TW.json b/l10n/zh_TW.json index 141cf4715c..974b7009a7 100644 --- a/l10n/zh_TW.json +++ b/l10n/zh_TW.json @@ -1,57 +1,135 @@ { "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 " : "成功地傳送電子郵件給", + "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" : "接下來的活動", + "More events" : "更多活動", + "No more events today" : "今天沒有其他活動", + "No upcoming 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" : "確認", + "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) 與您預約了。", + "Anniversary" : "週年", + "Appointment" : "預約", + "Business" : "商業", + "Education" : "教育", + "Holiday" : "假日", + "Meeting" : "會議", + "Miscellaneous" : "其他", + "Non-working hours" : "下班時段", + "Not in office" : "不在辦公室", + "Personal" : "私人", + "Phone call" : "通話", + "Sick day" : "病假", + "Special occasion" : "特殊場合", + "Travel" : "旅行", + "Vacation" : "度假", + "Custom Categories" : "自訂分類", + "Collaborative Tags" : "協作標籤", + "Standard Categories" : "標準分類", "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" : "前一日", "Previous week" : "前週", - "Previous month" : "前月", + "Previous year" : "前一年", + "Previous month" : "上個月", "Next day" : "隔天", "Next week" : "下週", + "Next year" : "明年", "Next month" : "下個月", - "+ New event" : "+ 新活動", + "Event" : "事件", + "Create new event" : "建立新事件", "Today" : "今天", "Day" : "日", "Week" : "週", "Month" : "月", + "Year" : "年", "List" : "清單", - "Untitled calendar" : "未命名日曆", - "Edit name" : "編輯名稱", - "Saving name …" : "儲存名稱…", - "Edit color" : "編輯顏色", - "Saving color …" : "儲存顏色…", - "Copy private link" : "複製私人連結", - "Download" : "下載", - "Unshare from me" : "取消與我分享", + "Preview" : "預覽", + "Copy link" : "複製連結", + "Edit" : "編輯", "Delete" : "刪除", + "Appointment link was copied to clipboard" : "預約連結已複製到剪貼簿", + "Appointment link could not be copied to clipboard" : "預約連結無法複製到剪貼簿", + "Add new" : "新增", + "Untitled calendar" : "未命名日曆", + "Shared with you by" : "分享給您藉由", + "Edit and share calendar" : "編輯並分享行事曆", + "Edit calendar" : "編輯行事曆", + "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." : "發生錯誤,無法變更日曆的顏色", "_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} 秒後刪除日曆"], + "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" : "新增公眾節日行事曆", + "An error occurred, unable to create the calendar." : "發生錯誤,無法建立日曆", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "請輸入有效的連結(以 http:// , https:// , webcal:// , 或 webcals:// 開頭)", + "Copy subscription link" : "複製訂閱的連結", + "Copying link …" : "正在複製連結…", + "Copied link" : "連結已複製", + "Could not copy link" : "無法複製連結", + "Export" : "匯出", + "Calendar link copied to clipboard." : "複製日曆連結到剪貼簿", + "Calendar link could not be copied to clipboard." : "日曆連結無法複製到剪貼簿", + "Trash bin" : "回收桶", + "Loading deleted items." : "載入已刪除的項目。", + "You do not have any deleted items." : "您沒有任何已刪除的項目。", + "Name" : "名稱", + "Deleted" : "已刪除", + "Restore" : "還原", + "Delete permanently" : "永久刪除", + "Empty trash bin" : "清空回收桶", + "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?" : "您真的想要清空回收桶嗎?", + "_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." : "無法變更日曆順序", + "Internal link" : "內部連結", + "A private link that can be used with external clients" : "可與外部客戶端一起使用的私人連結", + "Copy internal link" : "複製內部連結", "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" : "已複製程式碼", @@ -63,32 +141,32 @@ "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" : "沒有使用者或群組", "can edit" : "可編輯", "Unshare with {displayName}" : "取消與 {displayName} 的分享", - "An error occurred, unable to change the unshare the calendar." : "發生錯誤,無法變更日曆", + "An error occurred while unsharing 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:// 開頭)", - "Could not update calendar order." : "無法變更日曆順序", + "Share with users or groups" : "與使用者或群組分享", + "No users or groups" : "沒有使用者或群組", + "Calendar name …" : "行事曆名稱……", + "Share calendar" : "分享行事曆", + "Unshare from me" : "取消與我分享", + "Save" : "儲存", + "Failed to save calendar name and color" : "儲存行事曆名稱或色彩失敗", "Import calendars" : "匯入日曆", "Please select a calendar to import into …" : "請選擇將匯入的日曆", "Filename" : "檔案名稱", "Calendar to import into" : "將匯入的日曆", "Cancel" : "取消", "_Import calendar_::_Import calendars_" : ["匯入日曆"], - "{filename} is an unsupported file-type" : "{filename} 是不支援的檔案類型", + "Default attachments location" : "預設附件位置", + "Select the default location for attachments" : "選取附件的預設位置", + "Invalid location selected" : "選取無效的位置", + "Attachments folder successfully saved." : "附件資料夾已成功儲存。", + "Error on saving attachments folder." : "儲存附件資料夾時發生錯誤。", "{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 個活動"], + "_Successfully imported %n event_::_Successfully imported %n events_" : ["成功匯入 %n 個活動"], "Automatic" : "自動", "Automatic ({detected})" : "自動({detected})", "New setting was not saved successfully." : "新設定未成功儲存", @@ -101,21 +179,83 @@ "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" : "重複事件", "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 reminder" : "預設提醒", "Copy primary CalDAV address" : "複製主要的 CalDAV 位址", "Copy iOS/macOS CalDAV address" : "複製 iOS/macOS 的 CalDAV 位址", + "Personal availability settings" : "個人可用設定", "Show keyboard shortcuts" : "顯示快速鍵", - "Settings & import" : "設定及匯入", + "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} 分鐘"], + "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 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" : "週二", + "Wednesday" : "週三", + "Thursday" : "週四", + "Friday" : "週五", + "Saturday" : "週六", + "Sunday" : "週日", + "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" : "編輯預約", + "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" : "提醒", "before at" : "之前於", "Notification" : "通知", "Email" : "Email", @@ -129,55 +269,81 @@ "on" : "在", "at" : "在", "+ Add reminder" : "+ 加入提醒", + "Add reminder" : "新增提醒", "_second_::_seconds_" : ["秒"], "_minute_::_minutes_" : ["分鐘"], "_hour_::_hours_" : ["時"], "_day_::_days_" : ["天"], "_week_::_weeks_" : ["週"], - "No reminders yet" : "目前沒有任何提醒", + "No attachments" : "無附件", + "Add from Files" : "新增自檔案", + "Upload from device" : "從裝置上傳", + "Delete file" : "刪除檔案", + "Choose a file to add as attachment" : "選擇要作為附件的檔案", + "Choose a file to share as a link" : "選擇要作為連結分享的檔案", + "Attachment {name} already exist!" : "附件 {name} 已存在!", + "_{count} attachment_::_{count} attachments_" : ["{count} 個附件"], + "Invitation accepted" : "已接受邀請", + "Available" : "可用", + "Suggested" : "建議", + "Participation marked as tentative" : "將參與標記為暫定", + "Accepted {organizerName}'s invitation" : "已接受 {organizerName} 的邀請", + "Not available" : "無法使用", + "Invitation declined" : "邀請被拒絕", + "Declined {organizerName}'s invitation" : "已拒絕 {organizerName} 的邀請", + "Invitation is delegated" : "邀請已配送", + "Checking availability" : "正在檢查可用性。", + "Invitation sent" : "邀請已傳送", + "Has not responded to {organizerName}'s invitation yet" : "尚未回覆 {organizerName} 的邀請", "Availability of attendees, resources and rooms" : "參與者、資源和空間的可用性", + "{organizer} (organizer)" : "{organizer} (organizer)", + "Free" : "有空", "Busy (tentative)" : "忙碌(暫定)", "Busy" : "忙碌", "Out of office" : "不在辦公室", "Unknown" : "不明", - "{name} accepted your invitation." : "{name} 已接受您的邀請。", - "{name} accepted {organizerName}'s invitation." : "{name} 已接受 {organizerName} 的邀請", - "{name} declined your invitation." : "{name} 已婉拒您的邀請", - "{name} declined {organizerName}'s invitation." : "{name} 已婉拒 {organizerName} 的邀請", - "{name} has delegated their invitation." : "{name} 已將邀請轉給他人", - "{name} marked their participation as tentative." : "{name} 表示他暫定可以出席", - "{name} did not respond to your invitation yet." : "{name} 尚未回覆您的邀請", - "{name} did not respond to {organizerName}'s invitation yet." : "{name} 尚未回覆 {organizerName} 的邀請", + "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" : "顯示忙碌時段", + "No attendees yet" : "還沒有任何參與者", + "You don't own this calendar, so you cannot add attendees to this event" : "您並未擁有此行事曆,因此您無法新增參與者到此活動", + "Successfully appended link to talk room to location." : "成功將線上會議室的連結加至位置", "Successfully appended link to talk room to description." : "成功將線上會議室的連結加至活動細節", "Error creating Talk room" : "建立線上會議室發生錯誤", - "Send e-mail" : "傳送電子郵件", + "Send email" : "傳送電子郵件", "Chairperson" : "主席", "Required participant" : "需出席的參與者", "Optional participant" : "可不出席的參與者", "Non-participant" : "非參與者", "Remove attendee" : "移除參與者", - "Search for e-mails, users, contacts, resources or rooms" : "搜尋電子郵件、使用者、聯絡人、資源或會議室", + "Search for emails, users or contacts" : "搜尋電子郵件、使用者與聯絡人", "No match found" : "找不到符合的項目", - "No attendees 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" : "全天", - "Can not 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 {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" : "永不", "on date" : "在特定日期", "after" : "之後", "_time_::_times_" : ["次"], - "This event is the recurrence-exception of a recurrence-set. You can not 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" : "第四", @@ -185,25 +351,37 @@ "second to last" : "倒數第二", "last" : "倒數第一", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "變更的重複規則只會套用至這項活動和重複的未來活動", - "Repeat" : "重複", "Repeat every" : "重複循環", "By day of the month" : "每月中特定日", "On the" : "在", "_month_::_months_" : ["月"], "_year_::_years_" : ["年"], - "Monday" : "週一", "weekday" : "週間", "weekend day" : "週末", - "Summary" : "摘要", + "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" : "建議", + "No rooms or resources yet" : "還沒有聊天室或資源", + "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" : "不可用", + "Room type" : "房間類型", + "Any" : "任何", + "Minimum seating capacity" : "最小座位數", "More" : "更多", - "Save" : "儲存", - "Update" : "更新", "Update this occurrence" : "更新此重複", "Update this and all future" : "更新這次和所有未來的重複", "Public calendar does not exist" : "公開日曆不存在", "Maybe the share was deleted or has expired?" : "分享是否已刪除或過期?", - "Please select a timezone:" : "請選取時區:", + "Please select a time zone:" : "請選取時區:", "Pick a time" : "挑選時間", "Pick a date" : "挑選日期", "from {formattedDate}" : "從 {formattedDate}", @@ -215,41 +393,53 @@ "{formattedDate} at {formattedTime}" : "{formattedDate} {formattedTime}", "Please enter a valid date" : "請輸入有效的日期", "Please enter a valid date and time" : "請輸入有效的日期和時間", - "Type to search timezone" : "開始輸入以搜尋時區", - "Personal" : "私人", - "The automatic timezone detection determined your timezone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your timezone manually in the calendar settings." : "系統偵測到您的時區為 UTC,這可能是因為網頁伺服器的安全設定,請至日曆設定中手動設定您的時區", - "Your configured timezone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your timezone in the settings and report this issue." : "找不到您選擇的時區 {timezoneId} ,先以 UTC 替代\n請至設定改變您的時區並回報此問題", - "No more events today" : "今天沒有其他活動", - "No upcoming events" : "沒有接下來的活動", + "Type to search time zone" : "輸入以搜尋時區", + "Global" : "全球", + "Public holiday calendars" : "公眾節日行事曆", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "公眾節日行事曆由 Thunderbird 提供。將會從 {website} 下載行事曆資料", + "By {authors}" : "作者為 {authors}", + "Subscribed" : "已訂閱", + "Subscribe" : "訂閱", + "Holidays in {region}" : "{region} 的節日", + "An error occurred, unable to create the public holiday calendar." : "發生錯誤,無法建立公眾節日行事曆。", + "Select date" : "選取日期", + "Select slot" : "選取時段", + "No slots available" : "無可用時段", + "Could not fetch slots" : "無法擷取時段", + "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} 的公開預約", + "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請在設定中變更您的時區並回報此問題。", "Create a new event" : "建立新活動", "[Today]" : "[今天]", "[Tomorrow]" : "[明天]", "[Yesterday]" : "[昨天]", "[Last] dddd" : "[上] dddd", "Event does not exist" : "活動不存在", + "Duplicate" : "重複", "Delete this occurrence" : "刪除這次活動", "Delete this and all future" : "刪除這次和所有未來重複", "Details" : "詳細資料", + "Managing shared access" : "管理已分享的存取權限", + "Deny access" : "拒絕存取", + "Invite" : "邀請", "Attendees" : "參與者", - "Reminders" : "提醒", + "Resources" : "資源", + "_User requires access to your file_::_Users require access to your file_" : ["使用者要求存取您的檔案"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["需要分享存取權限的附件"], "Close" : " 關閉", "Show more details" : "顯示更多細節", "Subscribe to {name}" : "訂閱 {name}", - "Download {name}" : "下載 {name}", - "Anniversary" : "週年", - "Appointment" : "預約", - "Business" : "商業", - "Education" : "教育", - "Holiday" : "假日", - "Meeting" : "會議", - "Miscellaneous" : "其他", - "Non-working hours" : "下班時段", - "Not in office" : "不在辦公室", - "Phone call" : "通話", - "Sick day" : "病假", - "Special occasion" : "特殊場合", - "Travel" : "旅行", - "Vacation" : "度假", + "Export {name}" : "匯出 {name}", "Midnight on the day the event starts" : "活動開始日的午夜", "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["於 {formattedHourMinute} 的活動 %n 天前"], "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["於 {formattedHourMinute} 的活動 %n 週前"], @@ -282,14 +472,7 @@ "Untitled event" : "未命名活動", "Untitled task" : "未命名工作項目", "Please ask your administrator to enable the Tasks App." : "請要求您的管理員啟用工作項目應用程式。", - "prev" : "上一個", - "next" : "下一個", - "prev year" : "上一年", - "next year" : "明年", - "today" : "今天", - "list" : "列表", "W" : "週", - "all-day" : "全天", "%n more" : "其餘 %n 項", "No events to display" : "無可顯示的活動", "_+%n more_::_+%n more_" : ["* 和其他 %n 個"], @@ -297,62 +480,95 @@ "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" : "研討室", + "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." : "此活動在分享的日曆可見程度。", - "Location" : "地點", "Add a location" : "加入地點", - "Description" : "描述", "Add a description" : "加入描述", "Status" : "狀態", "Confirmed" : "已確認", - "Tentative" : "暫定", "Canceled" : "已取消", "Confirmation about the overall status of the event." : "有關活動整體狀態的確認。", "Show as" : "顯示為", "Take this event into account when calculating free-busy information." : "計算有空與忙碌資訊時,請將此活動考慮在內。", - "Free" : "有空", "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" : "取得檔案資訊時發生錯誤", "Chat room for event" : "活動的聊天室", + "An error occurred, unable to delete the calendar." : "發生錯誤,無法刪除日曆", "Imported {filename}" : "匯入的 {filename}", + "This is an event reminder." : "這是一個事件提醒。", "Meditation" : "冥想", "Relaxing" : "放鬆", "Relax" : "放鬆", + "Break" : "休息", + "Commute" : "通勤", + "Commuting" : "通勤中", + "Shuttle" : "穿梭", + "Invoice" : "發票", + "Finance" : "金融", + "Bank" : "銀行", + "Money" : "錢", + "Wedding" : "婚禮", + "Dog" : "狗", + "Concert" : "音樂會", + "Festival" : "節日", + "Theater" : "劇院", + "Theatre" : "劇院", "Presentation" : "簡報", - "Present" : "簡報", + "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" : "回顧", - "Review" : "檢閱", "Office" : "辦公室", "Contributor week" : "貢獻週", - "Party" : "派對", - "Celebration" : "慶祝", "Mail" : "郵件", "Soccer" : "足球", "Football" : "美式足球", "Gaming" : "遊戲", - "Play" : "播放", - "Game" : "遊戲", "Drive" : "駕駛", + "Driving" : "駕駛", "Bicycle" : "單車", "Cycle" : "腳踏車", + "Cycling" : "騎車", "Biking" : "自行車", + "Bike" : "腳踏車", "Podcast" : "Podcast", "Basketball" : "籃球", "Fishing" : "釣魚", @@ -363,10 +579,12 @@ "Museum" : "博物館", "Pilates" : "皮拉提斯", "Park" : "公園", + "Walk" : "步行", "Studying" : "讀書", "Doctor" : "醫生", "Health" : "健康", "Dentist" : "牙醫", + "Hospital" : "醫院", "Interview" : "面試", "Training" : "訓練", "Practice" : "練習", @@ -377,7 +595,10 @@ "Gym" : "健身房", "Barber" : "理髮師", "Haircut" : "理髮", + "Hairdresser" : "美髮師", "Exam" : "考試", + "Written test" : "筆試", + "Oral test" : "口試", "Working" : "工作", "New Years Eve" : "新年前夕", "NYE" : "新年前夕", @@ -396,20 +617,27 @@ "Conference" : "會議", "Pizza" : "披薩", "Travelling" : "旅行", + "Trip" : "旅行", "Journey" : "旅程", "Collaborate" : "協作", "Pair" : "配對", "Lecture" : "演講", "Seminar" : "專題討論", + "Teaching" : "教學", "Photograph" : "攝影", + "Party" : "派對", + "Celebration" : "慶祝", "Celebrate" : "慶祝", + "Birthday" : "生日", "Shopping" : "購物", + "Groceries" : "雜貨", "Skate" : "溜冰", "Skateboard" : "滑板", "Wine tasting" : "品酒", "Golf" : "高爾夫球", "Dinner" : "晚餐", "Lunch" : "午餐", - "Global" : "全球" + "Appointment not found" : "找不到預約", + "User not found" : "找不到使用者" },"pluralForm" :"nplurals=1; plural=0;" } \ No newline at end of file diff --git a/lib/AppInfo/Application.php b/lib/AppInfo/Application.php index b1760fa918..c668e4acb1 100644 --- a/lib/AppInfo/Application.php +++ b/lib/AppInfo/Application.php @@ -5,6 +5,7 @@ * Calendar App * * @author Georg Ehrke + * @author Richard Steinmetz * @copyright 2019 Georg Ehrke * * This library is free software; you can redistribute it and/or @@ -24,18 +25,21 @@ namespace OCA\Calendar\AppInfo; use OCA\Calendar\Dashboard\CalendarWidget; +use OCA\Calendar\Dashboard\CalendarWidgetV2; +use OCA\Calendar\Events\BeforeAppointmentBookedEvent; +use OCA\Calendar\Listener\AppointmentBookedListener; +use OCA\Calendar\Listener\UserDeletedListener; +use OCA\Calendar\Notification\Notifier; +use OCA\Calendar\Profile\AppointmentsAction; use OCP\AppFramework\App; use OCP\AppFramework\Bootstrap\IBootContext; use OCP\AppFramework\Bootstrap\IBootstrap; use OCP\AppFramework\Bootstrap\IRegistrationContext; +use OCP\Dashboard\IAPIWidgetV2; +use OCP\User\Events\UserDeletedEvent; +use function method_exists; -/** - * Class Application - * - * @package OCA\Calendar\AppInfo - */ class Application extends App implements IBootstrap { - /** @var string */ public const APP_ID = 'calendar'; @@ -50,7 +54,22 @@ public function __construct(array $params = []) { * @inheritDoc */ public function register(IRegistrationContext $context): void { - $context->registerDashboardWidget(CalendarWidget::class); + // TODO: drop conditional code when the app is 27.1+ + if (interface_exists(IAPIWidgetV2::class)) { + $context->registerDashboardWidget(CalendarWidgetV2::class); + } else { + $context->registerDashboardWidget(CalendarWidget::class); + } + + // TODO: drop conditional code when the app is 23+ + if (method_exists($context, 'registerProfileLinkAction')) { + $context->registerProfileLinkAction(AppointmentsAction::class); + } + + $context->registerEventListener(BeforeAppointmentBookedEvent::class, AppointmentBookedListener::class); + $context->registerEventListener(UserDeletedEvent::class, UserDeletedListener::class); + + $context->registerNotifierService(Notifier::class); } /** diff --git a/lib/BackgroundJob/CleanUpOutdatedBookingsJob.php b/lib/BackgroundJob/CleanUpOutdatedBookingsJob.php new file mode 100644 index 0000000000..3a072d54e9 --- /dev/null +++ b/lib/BackgroundJob/CleanUpOutdatedBookingsJob.php @@ -0,0 +1,63 @@ + + * + * @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 . + * + */ + +namespace OCA\Calendar\BackgroundJob; + +use OCA\Calendar\Service\Appointments\BookingService; +use OCP\AppFramework\Utility\ITimeFactory; +use OCP\BackgroundJob\TimedJob; +use Psr\Log\LoggerInterface; +use function method_exists; + +class CleanUpOutdatedBookingsJob extends TimedJob { + /** @var LoggerInterface */ + private LoggerInterface $logger; + + /** @var BookingService */ + private $service; + + public function __construct(ITimeFactory $time, + BookingService $service, + LoggerInterface $logger) { + parent::__construct($time); + $this->service = $service; + $this->logger = $logger; + + $this->setInterval(24 * 60 * 60); + /** + * @todo remove check with 24+ + */ + if (method_exists($this, 'setTimeSensitivity')) { + $this->setTimeSensitivity(self::TIME_INSENSITIVE); + } + } + + + 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 new file mode 100644 index 0000000000..9a566d27b6 --- /dev/null +++ b/lib/Controller/AppointmentConfigController.php @@ -0,0 +1,309 @@ + + * + * @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 . + * + */ + +namespace OCA\Calendar\Controller; + +use InvalidArgumentException; +use OCA\Calendar\AppInfo\Application; +use OCA\Calendar\Exception\ClientException; +use OCA\Calendar\Exception\ServiceException; +use OCA\Calendar\Http\JsonResponse; +use OCA\Calendar\Service\Appointments\AppointmentConfigService; +use OCP\AppFramework\Controller; +use OCP\AppFramework\Http; +use OCP\IRequest; +use Psr\Log\LoggerInterface; +use function array_keys; +use function array_merge; +use function array_values; + +class AppointmentConfigController extends Controller { + /** @var AppointmentConfigService */ + private $appointmentConfigService; + + /** @var string|null */ + private $userId; + + /** @var LoggerInterface */ + private $logger; + + public function __construct(IRequest $request, + AppointmentConfigService $appointmentService, + LoggerInterface $logger, + ?string $userId) { + parent::__construct(Application::APP_ID, $request); + $this->appointmentConfigService = $appointmentService; + $this->userId = $userId; + $this->logger = $logger; + } + + /** + * @NoAdminRequired + */ + public function index(): JsonResponse { + if ($this->userId === null) { + $this->logger->warning('No user found'); + return JsonResponse::fail(null, Http::STATUS_NOT_FOUND); + } + + try { + $appointmentConfigs = $this->appointmentConfigService->getAllAppointmentConfigurations($this->userId); + return JsonResponse::success($appointmentConfigs); + } catch (ServiceException $e) { + $this->logger->error('No appointment configurations found', ['exception' => $e]); + return JsonResponse::fail([], $e->getHttpCode() ?? Http::STATUS_BAD_REQUEST); + } + } + + /** + * @param int $id + * + * @return JsonResponse + */ + public function show(int $id): JsonResponse { + if ($this->userId === null) { + $this->logger->warning('No user found'); + return JsonResponse::fail(); + } + + try { + $appointmentConfig = $this->appointmentConfigService->findByIdAndUser($id, $this->userId); + return JsonResponse::success($appointmentConfig); + } catch (ClientException $e) { + $this->logger->warning('No appointment configuration found with id ' . $id, ['exception' => $e]); + return JsonResponse::fail([], $e->getHttpCode() ?? Http::STATUS_BAD_REQUEST); + } + } + + /** + * @throws InvalidArgumentException + */ + private function validateAvailability(array $availability): void { + $expectedKeys = ['slots', 'timezoneId']; + $actualKeys = array_keys($availability); + sort($actualKeys); + if ($expectedKeys !== $actualKeys) { + throw new InvalidArgumentException('Invalid value for availability'); + } + + $expectedDayKeys = ['FR', 'MO', 'SA', 'SU', 'TH', 'TU', 'WE']; + $actualDayKeys = array_keys($availability['slots']); + sort($actualDayKeys); + if ($expectedDayKeys !== $actualDayKeys) { + throw new InvalidArgumentException('Invalid value for availability slots'); + } + + $slots = array_merge(...array_values($availability['slots'])); + foreach ($slots as $slot) { + $slotKeys = array_keys($slot); + sort($slotKeys); + if ($slotKeys !== ['end', 'start']) { + throw new InvalidArgumentException('Invalid value for availability slot'); + } + } + } + + /** + * @NoAdminRequired + * + * @param string $name + * @param string $description + * @param string|null $location + * @param string $visibility + * @param string $targetCalendarUri + * @param array $availability + * @param int $length + * @param int $increment + * @param int $preparationDuration + * @param int $followupDuration + * @param int $timeBeforeNextSlot + * @param int|null $dailyMax + * @param string[]|null $calendarFreeBusyUris + * @param int|null $start + * @param int|null $end + * @param int|null $futureLimit + * @return JsonResponse + */ + public function create( + string $name, + string $description, + ?string $location, + string $visibility, + string $targetCalendarUri, + array $availability, + int $length, + int $increment, + int $preparationDuration = 0, + int $followupDuration = 0, + int $timeBeforeNextSlot = 0, + ?int $dailyMax = null, + ?array $calendarFreeBusyUris = null, + ?int $start = null, + ?int $end = null, + ?int $futureLimit = null, + ?bool $createTalkRoom = false): JsonResponse { + if ($this->userId === null) { + return JsonResponse::fail(); + } + try { + $this->validateAvailability($availability); + } catch (InvalidArgumentException $e) { + return JsonResponse::fail($e->getMessage(), Http::STATUS_UNPROCESSABLE_ENTITY); + } + + try { + $appointmentConfig = $this->appointmentConfigService->create( + $name, + $description, + $location, + $visibility, + $this->userId, + $targetCalendarUri, + $availability, + $length, + $increment, + $preparationDuration, + $followupDuration, + $timeBeforeNextSlot, + $dailyMax, + $calendarFreeBusyUris, + $start, + $end, + $futureLimit, + $createTalkRoom + ); + return JsonResponse::success($appointmentConfig); + } catch (ServiceException $e) { + $this->logger->error('Could not create new configuration', ['exception' => $e]); + return JsonResponse::errorFromThrowable($e); + } + } + + /** + * @NoAdminRequired + * + * @param int $id + * @param string $name + * @param string $description + * @param string|null $location + * @param string $visibility + * @param string $targetCalendarUri + * @param array $availability + * @param int $length + * @param int $increment + * @param int $preparationDuration + * @param int $followupDuration + * @param int $timeBeforeNextSlot + * @param int|null $dailyMax + * @param string[] $calendarFreeBusyUris + * @param int|null $start + * @param int|null $end + * @param int|null $futureLimit + * @return JsonResponse + */ + public function update( + int $id, + string $name, + string $description, + ?string $location, + string $visibility, + string $targetCalendarUri, + array $availability, + int $length, + int $increment, + int $preparationDuration = 0, + int $followupDuration = 0, + int $timeBeforeNextSlot = 0, + ?int $dailyMax = null, + ?array $calendarFreeBusyUris = null, + ?int $start = null, + ?int $end = null, + ?int $futureLimit = null, + ?bool $createTalkRoom = false): JsonResponse { + if ($this->userId === null) { + return JsonResponse::fail(null, Http::STATUS_NOT_FOUND); + } + try { + $this->validateAvailability($availability); + } catch (InvalidArgumentException $e) { + return JsonResponse::fail($e->getMessage(), Http::STATUS_UNPROCESSABLE_ENTITY); + } + + try { + $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); + } + + $appointmentConfig->setName($name); + $appointmentConfig->setDescription($description); + $appointmentConfig->setLocation($location); + $appointmentConfig->setVisibility($visibility); + $appointmentConfig->setUserId($this->userId); + $appointmentConfig->setTargetCalendarUri($targetCalendarUri); + $appointmentConfig->setAvailabilityAsArray($availability); + $appointmentConfig->setLength($length); + $appointmentConfig->setIncrement($increment); + $appointmentConfig->setPreparationDuration($preparationDuration); + $appointmentConfig->setFollowupDuration($followupDuration); + $appointmentConfig->setTimeBeforeNextSlot($timeBeforeNextSlot); + $appointmentConfig->setDailyMax($dailyMax); + $appointmentConfig->setCalendarFreeBusyUrisAsArray($calendarFreeBusyUris ?? []); + $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); + } + } + + /** + * @NoAdminRequired + */ + public function destroy(int $id): JsonResponse { + if ($this->userId === null) { + $this->logger->warning('No user found'); + return JsonResponse::fail(null, Http::STATUS_NOT_FOUND); + } + + try { + // delete all outstanding bookings + $this->appointmentConfigService->delete($id, $this->userId); + return JsonResponse::success(); + } catch (ServiceException $e) { + $this->logger->error('Could not delete configuration with id ' . $id, ['exception' => $e]); + return JsonResponse::errorFromThrowable($e, 403); + } + } +} diff --git a/lib/Controller/AppointmentController.php b/lib/Controller/AppointmentController.php new file mode 100644 index 0000000000..4916468995 --- /dev/null +++ b/lib/Controller/AppointmentController.php @@ -0,0 +1,166 @@ + + * + * @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 . + */ + +namespace OCA\Calendar\Controller; + +use OCA\Calendar\AppInfo\Application; +use OCA\Calendar\Db\AppointmentConfig; +use OCA\Calendar\Exception\ClientException; +use OCA\Calendar\Exception\ServiceException; +use OCA\Calendar\Service\Appointments\AppointmentConfigService; +use OCP\AppFramework\Controller; +use OCP\AppFramework\Http; +use OCP\AppFramework\Http\Response; +use OCP\AppFramework\Http\TemplateResponse; +use OCP\AppFramework\Services\IInitialState; +use OCP\IRequest; +use OCP\IUserManager; +use RuntimeException; + +class AppointmentController extends Controller { + /** @var IUserManager */ + private $userManager; + + /** @var AppointmentConfigService */ + private $configService; + + /** @var IInitialState */ + private $initialState; + + /** @var string|null */ + private $userId; + + public function __construct(IRequest $request, + IUserManager $userManager, + AppointmentConfigService $configService, + IInitialState $initialState, + ?string $userId + ) { + parent::__construct(Application::APP_ID, $request); + + $this->userManager = $userManager; + $this->configService = $configService; + $this->initialState = $initialState; + $this->userId = $userId; + } + + /** + * @PublicPage + * @NoAdminRequired + * @NoCSRFRequired + * + * @return Response + */ + public function index(string $userId): Response { + $user = $this->userManager->get($userId); + if ($user === null) { + return new TemplateResponse( + Application::APP_ID, + 'appointments/404-index', + [], + TemplateResponse::RENDER_AS_GUEST + ); + } + + $this->initialState->provideInitialState( + 'userInfo', + [ + 'uid' => $user->getUID(), + 'displayName' => $user->getDisplayName(), + ] + ); + $this->initialState->provideInitialState( + 'appointmentConfigs', + $this->configService->getAllAppointmentConfigurations($userId, AppointmentConfig::VISIBILITY_PUBLIC) + ); + + return new TemplateResponse( + Application::APP_ID, + 'appointments/index', + [], + TemplateResponse::RENDER_AS_PUBLIC + ); + } + + /** + * @PublicPage + * @NoAdminRequired + * @NoCSRFRequired + * + * @return Response + */ + public function show(string $token): Response { + try { + $config = $this->configService->findByToken($token); + } catch (ClientException $e) { + if ($e->getHttpCode() === Http::STATUS_NOT_FOUND) { + return new TemplateResponse( + Application::APP_ID, + 'appointments/404-booking', + [], + TemplateResponse::RENDER_AS_GUEST + ); + } + } + + $configOwner = $this->userManager->get($config->getUserId()); + if ($configOwner === null) { + throw new ServiceException("Appointment config $token does not belong to a valid configOwner"); + } + $this->initialState->provideInitialState( + 'userInfo', + [ + 'uid' => $configOwner->getUID(), + 'displayName' => $configOwner->getDisplayName(), + ] + ); + $this->initialState->provideInitialState( + 'config', + $config + ); + + if ($this->userId !== null) { + $currentUser = $this->userManager->get($this->userId); + if ($currentUser === null) { + // This should never happen + throw new RuntimeException('User ' . $this->userId . ' could not be found'); + } + $this->initialState->provideInitialState( + 'visitorInfo', + [ + 'displayName' => $currentUser->getDisplayName(), + 'email' => $currentUser->getEMailAddress(), + ] + ); + } + + return new TemplateResponse( + Application::APP_ID, + 'appointments/booking', + [], + TemplateResponse::RENDER_AS_PUBLIC + ); + } +} diff --git a/lib/Controller/BookingController.php b/lib/Controller/BookingController.php new file mode 100644 index 0000000000..7697fd26e3 --- /dev/null +++ b/lib/Controller/BookingController.php @@ -0,0 +1,269 @@ + + * + * @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 . + * + */ +namespace OCA\Calendar\Controller; + +use DateTimeImmutable; +use DateTimeZone; +use InvalidArgumentException; +use OCA\Calendar\AppInfo\Application; +use OCA\Calendar\Exception\ClientException; +use OCA\Calendar\Exception\NoSlotFoundException; +use OCA\Calendar\Exception\ServiceException; +use OCA\Calendar\Http\JsonResponse; +use OCA\Calendar\Service\Appointments\AppointmentConfigService; +use OCA\Calendar\Service\Appointments\BookingService; +use OCP\AppFramework\Controller; +use OCP\AppFramework\Http; +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; + + /** @var ITimeFactory */ + private $timeFactory; + + /** @var AppointmentConfigService */ + private $appointmentConfigService; + + /** @var IInitialState */ + private $initialState; + + /** @var IURLGenerator */ + private $urlGenerator; + + /** @var LoggerInterface */ + private $logger; + + /** @var IMailer */ + private $mailer; + private IConfig $systemConfig; + + public function __construct(string $appName, + 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; + $this->timeFactory = $timeFactory; + $this->appointmentConfigService = $appointmentConfigService; + $this->initialState = $initialState; + $this->urlGenerator = $urlGenerator; + $this->logger = $logger; + $this->mailer = $mailer; + $this->systemConfig = $systemConfig; + } + + /** + * @NoAdminRequired + * @PublicPage + * + * @param int $appointmentConfigId + * @param int $startTime UNIX time stamp for the start time in UTC + * @param string $timeZone + * + * @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 + 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) + ->getTimestamp(); + $endTimeInTz = (new DateTimeImmutable()) + ->setTimestamp($startTime) + ->setTimezone($tz) + ->setTime(23, 59, 59) + ->getTimestamp(); + + if ($startTimeInTz > $endTimeInTz) { + $this->logger->warning('Invalid time range - end time ' . $endTimeInTz . ' before start time ' . $startTimeInTz); + return JsonResponse::fail('Invalid time range', Http::STATUS_UNPROCESSABLE_ENTITY); + } + // rate limit this to only allow ranges between 0 and 7 days + if (ceil(($endTimeInTz - $startTimeInTz) / 86400) > 7) { + $this->logger->warning('Date range too large for start ' . $startTimeInTz . ' end ' . $endTimeInTz); + return JsonResponse::fail('Date Range too large.', Http::STATUS_UNPROCESSABLE_ENTITY); + } + $now = $this->timeFactory->getTime(); + if ($now > $endTimeInTz) { + $this->logger->warning('Slot time must be in the future - now ' . $now . ' end ' . $endTimeInTz); + return JsonResponse::fail('Slot time range must be in the future', Http::STATUS_UNPROCESSABLE_ENTITY); + } + + try { + $config = $this->appointmentConfigService->findById($appointmentConfigId); + } catch (ServiceException $e) { + $this->logger->error('No appointment config found for id ' . $appointmentConfigId, ['exception' => $e]); + return JsonResponse::fail(null, Http::STATUS_NOT_FOUND); + } + + return JsonResponse::success( + $this->bookingService->getAvailableSlots($config, $startTimeInTz, $endTimeInTz) + ); + } + + /** + * @NoAdminRequired + * @PublicPage + * + * @param int $appointmentConfigId + * @param int $start + * @param int $end + * @param string $displayName + * @param string $email + * @param string $description + * @param string $timeZone + * @return JsonResponse + */ + public function bookSlot(int $appointmentConfigId, + 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); + } + + if ($start > $end) { + return JsonResponse::fail('Invalid time range', Http::STATUS_UNPROCESSABLE_ENTITY); + } + + try { + $config = $this->appointmentConfigService->findById($appointmentConfigId); + } catch (ServiceException $e) { + $this->logger->error('No appointment config found for id ' . $appointmentConfigId, ['exception' => $e]); + return JsonResponse::fail(null, Http::STATUS_NOT_FOUND); + } + try { + $booking = $this->bookingService->book($config, $start, $end, $timeZone, $displayName, $email, $description); + } catch (NoSlotFoundException $e) { + $this->logger->warning('No slot available for start: ' . $start . ', end: ' . $end . ', config id: ' . $appointmentConfigId, ['exception' => $e]); + return JsonResponse::fail(null, Http::STATUS_NOT_FOUND); + } catch (InvalidArgumentException $e) { + $this->logger->warning($e->getMessage(), ['exception' => $e]); + return JsonResponse::fail(null, Http::STATUS_UNPROCESSABLE_ENTITY); + } catch (ServiceException $e) { + $this->logger->error($e->getMessage(), ['exception' => $e]); + + 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); + } + + /** + * @PublicPage + * @NoCSRFRequired + * + * @param string $token + * @return TemplateResponse + * @throws Exception + */ + public function confirmBooking(string $token): TemplateResponse { + try { + $booking = $this->bookingService->findByToken($token); + } catch (ClientException $e) { + $this->logger->warning($e->getMessage(), ['exception' => $e]); + return new TemplateResponse( + Application::APP_ID, + 'appointments/404-booking', + [], + TemplateResponse::RENDER_AS_GUEST + ); + } + + try { + $config = $this->appointmentConfigService->findById($booking->getApptConfigId()); + } catch (ServiceException $e) { + $this->logger->error($e->getMessage(), ['exception' => $e]); + return new TemplateResponse( + Application::APP_ID, + 'appointments/404-booking', + [], + TemplateResponse::RENDER_AS_GUEST + ); + } + + $link = $this->urlGenerator->linkToRouteAbsolute('calendar.appointment.show', [ 'token' => $config->getToken() ]); + try { + $booking = $this->bookingService->confirmBooking($booking, $config); + } catch (ClientException $e) { + $this->logger->warning($e->getMessage(), ['exception' => $e]); + } + + $this->initialState->provideInitialState( + 'appointment-link', + $link + ); + $this->initialState->provideInitialState( + 'booking', + $booking + ); + + return new TemplateResponse( + Application::APP_ID, + 'appointments/booking-conflict', + [], + TemplateResponse::RENDER_AS_GUEST + ); + } +} diff --git a/lib/Controller/ContactController.php b/lib/Controller/ContactController.php index a6b3bad07b..34fce6f51d 100644 --- a/lib/Controller/ContactController.php +++ b/lib/Controller/ContactController.php @@ -40,7 +40,6 @@ * @package OCA\Calendar\Controller */ class ContactController extends Controller { - /** @var IManager */ private $contactsManager; @@ -52,8 +51,8 @@ class ContactController extends Controller { * @param IManager $contacts */ public function __construct(string $appName, - IRequest $request, - IManager $contacts) { + IRequest $request, + IManager $contacts) { parent::__construct($appName, $request); $this->contactsManager = $contacts; } diff --git a/lib/Controller/EmailController.php b/lib/Controller/EmailController.php index e7c3d45638..313e2d42b6 100644 --- a/lib/Controller/EmailController.php +++ b/lib/Controller/EmailController.php @@ -4,6 +4,7 @@ /** * @author Thomas Citharel * @author Georg Ehrke + * @author Richard Steinmetz * * @copyright 2016 Thomas Citharel * @copyright 2019 Georg Ehrke @@ -44,7 +45,6 @@ * @package OCA\Calendar\Controller */ class EmailController extends Controller { - /** @var IConfig */ private $config; @@ -76,13 +76,13 @@ class EmailController extends Controller { * @param IURLGenerator $urlGenerator */ 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) { parent::__construct($appName, $request); $this->config = $config; $this->userSession = $userSession; @@ -103,8 +103,14 @@ public function __construct(string $appName, * @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([ @@ -134,7 +140,7 @@ public function sendEmailPublicLink(string $recipient, } return new JSONResponse([ - 'message' => $this->l10n->t('Successfully sent email to ' . $recipient), + 'message' => $this->l10n->t('Successfully sent email to %1$s', [$recipient]), ]); } @@ -160,8 +166,8 @@ private function getFromAddress():string { * @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 +184,9 @@ private function createMessage(string $from, * @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/PublicViewController.php b/lib/Controller/PublicViewController.php index 8807bbb2dd..efa805eb19 100644 --- a/lib/Controller/PublicViewController.php +++ b/lib/Controller/PublicViewController.php @@ -6,6 +6,7 @@ * * @author Georg Ehrke * @copyright 2019 Georg Ehrke + * @copyright Copyright (c) 2022 Informatyka Boguslawski sp. z o.o. sp.k., http://www.ib.pl/ * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE @@ -25,7 +26,9 @@ use OCP\AppFramework\Controller; use OCP\AppFramework\Http\ContentSecurityPolicy; -use OCP\AppFramework\Http\TemplateResponse; +use OCP\AppFramework\Http\RedirectResponse; +use OCP\AppFramework\Http\Response; +use OCP\AppFramework\Http\Template\PublicTemplateResponse; use OCP\IConfig; use OCP\IInitialStateService; use OCP\IRequest; @@ -37,7 +40,6 @@ * @package OCA\Calendar\Controller */ class PublicViewController extends Controller { - /** * @var IConfig */ @@ -61,10 +63,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; @@ -77,12 +79,13 @@ public function __construct(string $appName, * * @PublicPage * @NoCSRFRequired - * - * @param string $token - * @return TemplateResponse */ - public function publicIndexWithBranding(string $token):TemplateResponse { - return $this->publicIndex($token, 'public'); + 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); } /** @@ -91,28 +94,22 @@ public function publicIndexWithBranding(string $token):TemplateResponse { * @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'); @@ -120,10 +117,12 @@ private function publicIndex(string $token, $defaultSkipPopover = $this->config->getAppValue($this->appName, 'skipPopover', 'yes'); $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'); $defaultSyncTimeout = $this->config->getAppValue($this->appName, 'syncTimeout', 'PT1M'); $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')); @@ -133,22 +132,25 @@ private function publicIndex(string $token, $this->initialStateService->provideInitialState($this->appName, 'show_week_numbers', ($defaultWeekNumbers === 'yes')); $this->initialStateService->provideInitialState($this->appName, 'skip_popover', ($defaultSkipPopover === 'yes')); $this->initialStateService->provideInitialState($this->appName, 'talk_enabled', false); + $this->initialStateService->provideInitialState($this->appName, 'talk_api_version', 'v1'); $this->initialStateService->provideInitialState($this->appName, 'timezone', $defaultTimezone); $this->initialStateService->provideInitialState($this->appName, 'slot_duration', $defaultSlotDuration); + $this->initialStateService->provideInitialState($this->appName, 'default_reminder', $defaultDefaultReminder); $this->initialStateService->provideInitialState($this->appName, 'show_tasks', $defaultShowTasks === 'yes'); $this->initialStateService->provideInitialState($this->appName, 'sync_timeout', $defaultSyncTimeout); $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() . '://'; @@ -160,8 +162,6 @@ private function getShareURL():string { /** * 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 8a824cf7b6..fe30d548d2 100644 --- a/lib/Controller/SettingsController.php +++ b/lib/Controller/SettingsController.php @@ -24,8 +24,8 @@ 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 +35,6 @@ * @package OCA\Calendar\Controller */ class SettingsController extends Controller { - /** @var IConfig */ private $config; @@ -51,9 +50,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 +68,7 @@ public function __construct(string $appName, * @return JSONResponse */ public function setConfig(string $key, - string $value):JSONResponse { + string $value):JSONResponse { switch ($key) { case 'view': return $this->setView($value); @@ -87,8 +86,12 @@ public function setConfig(string $key, return $this->setEventLimit($value); case 'slotDuration': return $this->setSlotDuration($value); + case 'defaultReminder': + return $this->setDefaultReminder($value); case 'showTasks': return $this->setShowTasks($value); + case 'attachmentsFolder': + return $this->setAttachmentsFolder($value); default: return new JSONResponse([], Http::STATUS_BAD_REQUEST); } @@ -102,7 +105,7 @@ public function setConfig(string $key, * @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); } @@ -170,6 +173,27 @@ private function setShowTasks(string $value):JSONResponse { 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 * @@ -310,4 +334,31 @@ private function setSlotDuration(string $value):JSONResponse { return new JSONResponse(); } + + /** + * sets defaultReminder for user + * + * @param string $value User-selected option for default_reminder in agenda view + * @return JSONResponse + */ + private function setDefaultReminder(string $value):JSONResponse { + if ($value !== 'none' && + filter_var($value, FILTER_VALIDATE_INT, + ['options' => ['max_range' => 0]]) === false) { + return new JSONResponse([], Http::STATUS_UNPROCESSABLE_ENTITY); + } + + try { + $this->config->setUserValue( + $this->userId, + $this->appName, + 'defaultReminder', + $value + ); + } catch (\Exception $e) { + return new JSONResponse([], Http::STATUS_INTERNAL_SERVER_ERROR); + } + + return new JSONResponse(); + } } diff --git a/lib/Controller/ViewController.php b/lib/Controller/ViewController.php index 5194ee70f4..3cb5dd1a9a 100644 --- a/lib/Controller/ViewController.php +++ b/lib/Controller/ViewController.php @@ -5,7 +5,9 @@ * Calendar App * * @author Georg Ehrke + * @author Richard Steinmetz * @copyright 2019 Georg Ehrke + * @copyright Copyright (c) 2022 Informatyka Boguslawski sp. z o.o. sp.k., http://www.ib.pl/ * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE @@ -23,59 +25,58 @@ */ namespace OCA\Calendar\Controller; +use OCA\Calendar\Service\Appointments\AppointmentConfigService; +use OCA\Calendar\Service\CategoriesService; 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\IInitialStateService; use OCP\IRequest; +use function in_array; -/** - * Class ViewController - * - * @package OCA\Calendar\Controller - */ class ViewController extends Controller { - - /** - * @var IConfig - */ + /** @var IConfig */ private $config; - /** - * @var string - */ - private $userId; + /** @var AppointmentConfigService */ + private $appointmentConfigService; - /** - * @var IInitialStateService - */ + /** @var CategoriesService */ + private $categoriesService; + + /** @var IInitialState */ private $initialStateService; - /** - * @var IAppManager - */ + /** @var IAppManager */ private $appManager; - /** - * @param string $appName - * @param IRequest $request an instance of the request - * @param IConfig $config - * @param IInitialStateService $initialStateService - * @param IAppManager $appManager - * @param string $userId - */ + /** @var string */ + private $userId; + + private IAppData $appData; + public function __construct(string $appName, - IRequest $request, - IConfig $config, - IInitialStateService $initialStateService, - IAppManager $appManager, - ?string $userId) { + IRequest $request, + IConfig $config, + AppointmentConfigService $appointmentConfigService, + CategoriesService $categoriesService, + IInitialState $initialStateService, + IAppManager $appManager, + ?string $userId, + IAppData $appData) { parent::__construct($appName, $request); $this->config = $config; - $this->userId = $userId; + $this->appointmentConfigService = $appointmentConfigService; + $this->categoriesService = $categoriesService; $this->initialStateService = $initialStateService; $this->appManager = $appManager; + $this->userId = $userId; + $this->appData = $appData; } /** @@ -94,9 +95,10 @@ public function index():TemplateResponse { $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); + $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)); @@ -104,26 +106,47 @@ public function index():TemplateResponse { $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'; $syncTimeout = $this->config->getAppValue($this->appName, 'syncTimeout', 'PT1M'); + $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'; $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($this->appName, 'app_version', $appVersion); - $this->initialStateService->provideInitialState($this->appName, 'event_limit', $eventLimit); - $this->initialStateService->provideInitialState($this->appName, 'first_run', $firstRun); - $this->initialStateService->provideInitialState($this->appName, 'initial_view', $initialView); - $this->initialStateService->provideInitialState($this->appName, 'show_weekends', $showWeekends); - $this->initialStateService->provideInitialState($this->appName, 'show_week_numbers', $showWeekNumbers); - $this->initialStateService->provideInitialState($this->appName, 'skip_popover', $skipPopover); - $this->initialStateService->provideInitialState($this->appName, 'talk_enabled', $talkEnabled); - $this->initialStateService->provideInitialState($this->appName, 'timezone', $timezone); - $this->initialStateService->provideInitialState($this->appName, 'slot_duration', $slotDuration); - $this->initialStateService->provideInitialState($this->appName, 'show_tasks', $showTasks); - $this->initialStateService->provideInitialState($this->appName, 'sync_timeout', $syncTimeout); - $this->initialStateService->provideInitialState($this->appName, 'tasks_enabled', $tasksEnabled); + $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('sync_timeout', $syncTimeout); + $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->initialStateService->provideInitialState('can_subscribe_link', $canSubscribeLink); + $this->initialStateService->provideInitialState('categories', $this->categoriesService->getCategories($this->userId)); + $this->initialStateService->provideInitialState('show_resources', $showResources); return new TemplateResponse($this->appName, 'main'); } @@ -149,4 +172,41 @@ private function getView(string $view): string { return $view; } } + + /** + * @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 $color - url encoded HEX colour + * @return FileDisplayResponse + * @throws NotPermittedException + */ + 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 8bb681066f..d0b6f3c31a 100644 --- a/lib/Dashboard/CalendarWidget.php +++ b/lib/Dashboard/CalendarWidget.php @@ -5,6 +5,7 @@ * @copyright Copyright (c) 2020 Julius Härtl * * @author Julius Härtl + * @author Richard Steinmetz * * @license GNU AGPL version 3 or any later version * @@ -25,41 +26,59 @@ 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\IButtonWidget; +use OCP\Dashboard\IIconWidget; +use OCP\Dashboard\IOptionWidget; +use OCP\Dashboard\Model\WidgetButton; +use OCP\Dashboard\Model\WidgetItem; +use OCP\Dashboard\Model\WidgetOptions; +use OCP\IDateTimeFormatter; use OCP\IL10N; +use OCP\IURLGenerator; +use OCP\Util; -class CalendarWidget implements IWidget { - - /** - * @var IL10N - */ - private $l10n; - - /** - * @var IInitialStateService - */ - private $initialStateService; - - /** - * @var JSDataService - */ - private $dataService; +class CalendarWidget implements IAPIWidget, IButtonWidget, IIconWidget, IOptionWidget { + 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 IInitialState $initialStateService * @param JSDataService $dataService + * @param IDateTimeFormatter $dateTimeFormatter + * @param IURLGenerator $urlGenerator + * @param IManager $calendarManager */ 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; } /** @@ -87,7 +106,7 @@ public function getOrder(): int { * @inheritDoc */ public function getIconClass(): string { - return 'icon-calendar-dark'; + return 'app-icon-calendar'; } /** @@ -97,14 +116,79 @@ public function getUrl(): ?string { return null; } + /** + * @inheritDoc + */ + public function getIconUrl(): string { + return $this->urlGenerator->getAbsoluteURL( + $this->urlGenerator->imagePath(Application::APP_ID, 'calendar-dark.svg') + ); + } + /** * @inheritDoc */ public function load(): void { - \OCP\Util::addScript('calendar', 'dashboard'); + Util::addScript(Application::APP_ID, 'calendar-dashboard'); + Util::addStyle(Application::APP_ID, 'dashboard'); - $this->initialStateService->provideLazyInitialState(Application::APP_ID, 'dashboard_data', function () { + $this->initialStateService->provideLazyInitialState('dashboard_data', function () { return $this->dataService; }); } + + 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) { + $searchResult = $calendar->search('', [], $options, $limit); + foreach ($searchResult as $calendarEvent) { + /** @var DateTimeImmutable $startDate */ + $startDate = $calendarEvent['objects'][0]['DTSTART'][0]; + $widget = new WidgetItem( + $calendarEvent['objects'][0]['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; + } + } + return $widgetItems; + } + + /** + * @inheritDoc + */ + 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 + */ + public function getWidgetOptions(): WidgetOptions { + return new WidgetOptions(true); + } } diff --git a/lib/Dashboard/CalendarWidgetV2.php b/lib/Dashboard/CalendarWidgetV2.php new file mode 100644 index 0000000000..f6e84f8da5 --- /dev/null +++ b/lib/Dashboard/CalendarWidgetV2.php @@ -0,0 +1,73 @@ + + * + * @author Richard Steinmetz + * + * @license AGPL-3.0-or-later + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU 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 General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +namespace OCA\Calendar\Dashboard; + +use OCP\Dashboard\IAPIWidgetV2; +use OCP\Dashboard\Model\WidgetItems; + +/** + * Requires Nextcloud >= 27.1.0 + */ +class CalendarWidgetV2 extends CalendarWidget implements IAPIWidgetV2 { + + /** + * @inheritDoc + */ + 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(); + foreach ($widgetItems as $item) { + if ((int)$item->getSinceId() >= $startOfTomorrow) { + $halfEmptyContentMessage = $this->l10n->t('No more events today'); + } + } + } + + return new WidgetItems( + $widgetItems, + empty($widgetItems) ? $this->l10n->t('No upcoming events') : '', + $halfEmptyContentMessage, + ); + } + + /** + * @inheritDoc + */ + public function load(): void { + // No assets need to be loaded anymore as the widget is rendered from the API + } + + /** + * @inheritDoc + */ + public function getIconClass(): string { + return 'icon-calendar-dark'; + } +} diff --git a/lib/Db/AppointmentConfig.php b/lib/Db/AppointmentConfig.php new file mode 100644 index 0000000000..952ba14aa0 --- /dev/null +++ b/lib/Db/AppointmentConfig.php @@ -0,0 +1,218 @@ + + * + * @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 + * + */ + +namespace OCA\Calendar\Db; + +use JsonSerializable; +use OCP\AppFramework\Db\Entity; +use ReturnTypeWillChange; +use function json_decode; +use function json_encode; + +/** + * @method int getId() + * @method void setId(int $id) + * @method string getToken() + * @method void setToken(string $token) + * @method string getName() + * @method void setName(string $name) + * @method string|null getDescription() + * @method void setDescription(?string $description) + * @method string getLocation() + * @method void setLocation(?string $location) + * @method string getVisibility() + * @method void setVisibility(string $visibility) + * @method string getUserId() + * @method void setUserId(string $userId) + * @method string getTargetCalendarUri() + * @method void setTargetCalendarUri(string $targetCalendarUri) + * @method string|null getCalendarFreebusyUris() + * @method void setCalendarFreebusyUris(?string $freebusyUris) + * @method string getAvailability() + * @method void setAvailability(?string $availability) + * @method int|null getStart() + * @method void setStart(?int $start) + * @method int|null getEnd() + * @method void setEnd(?int $end) + * @method int getLength() + * @method void setLength(int $length) + * @method int getIncrement() + * @method void setIncrement(int $increment) + * @method int getPreparationDuration() + * @method void setPreparationDuration(int $prepDuration) + * @method int getFollowupDuration() + * @method void setFollowupDuration(int $followup) + * @method int getTimeBeforeNextSlot() + * @method void setTimeBeforeNextSlot(int $buffer) + * @method int|null getDailyMax() + * @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; + + /** @var string */ + protected $name = ''; + + /** @var string|null */ + protected $description; + + /** @var string|null */ + protected $location; + + /** @var string */ + protected $visibility; + + /** @var string */ + protected $userId; + + /** @var string */ + protected $targetCalendarUri; + + /** @var string|null */ + protected $calendarFreebusyUris; + + /** @var string|null */ + protected $availability; + + /** @var int|null */ + protected $start; + + /** @var int|null */ + protected $end; + + /** @var int */ + protected $length; + + /** @var int */ + protected $increment; + + /** @var int */ + protected $preparationDuration; + + /** @var int */ + protected $followupDuration; + + /** @var int */ + protected $timeBeforeNextSlot; + + /** @var int|null */ + protected $dailyMax; + + /** @var int|null */ + protected $futureLimit; + + /** @var bool */ + protected $createTalkRoom; + + /** @var string */ + public const VISIBILITY_PUBLIC = 'PUBLIC'; + + /** @var string */ + 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('createTalkRoom', 'boolean'); + } + + /** + * Total length of one slot of the appointment config + * in minutes + * + * @return int Minutes of Appointment slot length + */ + public function getTotalLength(): int { + return $this->getLength() + $this->getPreparationDuration() + $this->getFollowupDuration(); + } + + /** + * Principals always have the same format + * + * @return string + */ + public function getPrincipalUri(): string { + return 'principals/users/' . $this->userId; + } + + public function getCalendarFreebusyUrisAsArray(): array { + return json_decode($this->getCalendarFreebusyUris(), true); + } + + /** + * @param string[] $uris + */ + public function setCalendarFreeBusyUrisAsArray(array $uris): self { + $this->setCalendarFreebusyUris(json_encode($uris)); + + return $this; + } + + public function setAvailabilityAsArray(array $availability): self { + $this->setAvailability(json_encode($availability)); + + return $this; + } + + #[ReturnTypeWillChange] + public function jsonSerialize() { + return [ + 'id' => $this->id, + 'token' => $this->getToken(), + 'name' => $this->getName(), + 'description' => $this->getDescription(), + 'location' => $this->getLocation(), + 'visibility' => $this->getVisibility(), + 'userId' => $this->getUserId(), + 'targetCalendarUri' => $this->getTargetCalendarUri(), + 'calendarFreeBusyUris' => $this->getCalendarFreebusyUrisAsArray(), + 'availability' => $this->getAvailability() === null ? null : json_decode($this->getAvailability(), true), + 'start' => $this->getStart(), + 'end' => $this->getEnd(), + 'length' => $this->getLength(), + 'increment' => $this->getIncrement(), + 'preparationDuration' => $this->getPreparationDuration(), + 'followupDuration' => $this->getFollowupDuration(), + 'totalLength' => $this->getTotalLength(), + 'timeBeforeNextSlot' => $this->getTimeBeforeNextSlot(), + 'dailyMax' => $this->getDailyMax(), + 'futureLimit' => $this->getFutureLimit(), + 'createTalkRoom' => $this->getCreateTalkRoom(), + ]; + } +} diff --git a/lib/Db/AppointmentConfigMapper.php b/lib/Db/AppointmentConfigMapper.php new file mode 100644 index 0000000000..0f2722c40b --- /dev/null +++ b/lib/Db/AppointmentConfigMapper.php @@ -0,0 +1,128 @@ + + * + * @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 . + */ + +namespace OCA\Calendar\Db; + +use OCP\AppFramework\Db\DoesNotExistException; +use OCP\AppFramework\Db\MultipleObjectsReturnedException; +use OCP\AppFramework\Db\QBMapper; +use OCP\DB\Exception as DbException; +use OCP\DB\QueryBuilder\IQueryBuilder; +use OCP\IDBConnection; + +/** + * @template-extends QBMapper + */ +class AppointmentConfigMapper extends QBMapper { + public function __construct(IDBConnection $db) { + parent::__construct($db, 'calendar_appt_configs'); + } + + /** + * @param int $id + * @param string $userId + * @return AppointmentConfig + * @throws DoesNotExistException + */ + public function findByIdForUser(int $id, string $userId) : AppointmentConfig { + $qb = $this->db->getQueryBuilder(); + $qb->select('*') + ->from($this->getTableName()) + ->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 $this->findEntity($qb); + } + + /** + * @param int $id + * @return AppointmentConfig + * @throws DbException + * @throws DoesNotExistException + * @throws MultipleObjectsReturnedException + */ + public function findById(int $id) : AppointmentConfig { + $qb = $this->db->getQueryBuilder(); + $qb->select('*') + ->from($this->getTableName()) + ->where($qb->expr()->eq('id', $qb->createNamedParameter($id, IQueryBuilder::PARAM_INT), IQueryBuilder::PARAM_INT)); + return $this->findEntity($qb); + } + + /** + * @param string $token + * @return AppointmentConfig + * @throws DoesNotExistException + */ + public function findByToken(string $token) : AppointmentConfig { + $qb = $this->db->getQueryBuilder(); + $qb->select('*') + ->from($this->getTableName()) + ->where($qb->expr()->eq('token', $qb->createNamedParameter($token, IQueryBuilder::PARAM_STR), IQueryBuilder::PARAM_STR)); + return $this->findEntity($qb); + } + + /** + * @param string $userId + * @param string|null $visibility optionally filter for visibility + * @psalm-param AppointmentConfig::VISIBILITY_* $visibility + * @return AppointmentConfig[] + * @throws DbException + */ + public function findAllForUser(string $userId, string $visibility = null): array { + $qb = $this->db->getQueryBuilder(); + $qb->select('*') + ->from($this->getTableName()) + ->where($qb->expr()->eq('user_id', $qb->createNamedParameter($userId, IQueryBuilder::PARAM_STR), IQueryBuilder::PARAM_STR)); + if ($visibility !== null) { + $qb->andWhere($qb->expr()->eq('visibility', $qb->createNamedParameter($visibility))); + } + return $this->findEntities($qb); + } + + /** + * @param int $id + * @param string $userId + * @return int + * @throws DbException + */ + public function deleteById(int $id, string $userId): int { + $qb = $this->db->getQueryBuilder(); + + $qb->delete($this->tableName) + ->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->executeStatement(); + } + + public function deleteByUserId(string $uid): void { + $qb = $this->db->getQueryBuilder(); + + $qb->delete($this->tableName) + ->where($qb->expr()->eq('user_id', $qb->createNamedParameter($uid, IQueryBuilder::PARAM_STR), IQueryBuilder::PARAM_STR)); + + $qb->execute(); + } +} diff --git a/lib/Db/Booking.php b/lib/Db/Booking.php new file mode 100644 index 0000000000..a7b7f1530e --- /dev/null +++ b/lib/Db/Booking.php @@ -0,0 +1,128 @@ + + * + * @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 . + * + */ + +namespace OCA\Calendar\Db; + +use JsonSerializable; +use OCP\AppFramework\Db\Entity; +use ReturnTypeWillChange; + +/** + * @method int getId() + * @method void setId(int $id) + * @method int getApptConfigId() + * @method void setApptConfigId(int $apptConfigId) + * @method int getCreatedAt() + * @method void setCreatedAt(int $timestamp) + * @method string getToken() + * @method void setToken(string $token) + * @method string getDisplayName() + * @method void setDisplayName(string $displayName) + * @method string|null getDescription() + * @method void setDescription(?string $description) + * @method string getEmail() + * @method void setEmail(string $email) + * @method int getStart() + * @method void setStart(int $start) + * @method int getEnd() + * @method void setEnd(int $end) + * @method string getTimezone() + * @method void setTimezone(string $timezone) + * @method bool isConfirmed() + * @method void setConfirmed(bool $confirm) + */ +class Booking extends Entity implements JsonSerializable { + /** @var int */ + protected $apptConfigId; + + /** @var int */ + protected $createdAt; + + /** @var string */ + protected $token; + + /** @var string */ + protected $displayName; + + /** @var string|null */ + protected $description; + + /** @var string */ + protected $email; + + /** @var int */ + protected $start; + + /** @var int */ + protected $end; + + /** @var string */ + protected $timezone; + + /** @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'); + } + + #[ReturnTypeWillChange] + public function jsonSerialize() { + return [ + 'id' => $this->getId(), + 'created_at' => $this->getCreatedAt(), + 'apptConfigId' => $this->getApptConfigId(), + 'token' => $this->getToken(), + 'displayName' => $this->getDisplayName(), + 'description' => $this->getDescription(), + 'email' => $this->getEmail(), + 'start' => $this->getStart(), + 'end' => $this->getEnd(), + 'timezone' => $this->getTimezone(), + '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 new file mode 100644 index 0000000000..429d2d59b4 --- /dev/null +++ b/lib/Db/BookingMapper.php @@ -0,0 +1,88 @@ + + * + * @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 . + */ + +namespace OCA\Calendar\Db; + +use OCP\AppFramework\Db\DoesNotExistException; +use OCP\AppFramework\Db\QBMapper; +use OCP\AppFramework\Utility\ITimeFactory; +use OCP\DB\Exception as DbException; +use OCP\DB\QueryBuilder\IQueryBuilder; +use OCP\IDBConnection; + +/** + * @template-extends QBMapper + */ +class BookingMapper extends QBMapper { + /** @var ITimeFactory */ + private $time; + + public function __construct(IDBConnection $db, ITimeFactory $time) { + parent::__construct($db, 'calendar_appt_bookings'); + $this->time = $time; + } + + /** + * @param string $token + * @return Booking + * @throws DoesNotExistException + */ + public function findByToken(string $token) : Booking { + $qb = $this->db->getQueryBuilder(); + $qb->select('*') + ->from($this->getTableName()) + ->where($qb->expr()->eq('token', $qb->createNamedParameter($token, IQueryBuilder::PARAM_STR), IQueryBuilder::PARAM_STR)); + return $this->findEntity($qb); + } + + public function deleteByUserId(string $uid) { + $subQuery = $this->db->getQueryBuilder(); + $delete = $this->db->getQueryBuilder(); + $subQuery->select('id') + ->from('calendar_appt_configs') + ->where($delete->expr()->eq('user_id', $delete->createNamedParameter($uid, IQueryBuilder::PARAM_STR), IQueryBuilder::PARAM_STR)); + $delete->delete($this->getTableName()) + ->where( + $delete->expr()->in( + 'appt_config_id', + $delete->createFunction($subQuery->getSQL()), + IQueryBuilder::PARAM_INT_ARRAY + ) + ); + return $delete->execute(); + } + + /** + * @param int $validFor is subtracted from time() and then compared against 'created_at'. + * @throws DbException + */ + public function deleteOutdated(int $validFor) : int { + $limit = $this->time->getTime() - $validFor; + $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->executeStatement(); + } +} diff --git a/lib/Events/BeforeAppointmentBookedEvent.php b/lib/Events/BeforeAppointmentBookedEvent.php new file mode 100644 index 0000000000..e5df78bfda --- /dev/null +++ b/lib/Events/BeforeAppointmentBookedEvent.php @@ -0,0 +1,54 @@ + + * + * @author 2022 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 . + */ + +namespace OCA\Calendar\Events; + +use OCA\Calendar\Db\AppointmentConfig; +use OCA\Calendar\Db\Booking; +use OCP\EventDispatcher\Event; + +class BeforeAppointmentBookedEvent extends Event { + + /** @var Booking */ + private $booking; + /** @var AppointmentConfig */ + + private $config; + + public function __construct(Booking $booking, AppointmentConfig $config) { + parent::__construct(); + + $this->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 new file mode 100644 index 0000000000..7e24071644 --- /dev/null +++ b/lib/Exception/ClientException.php @@ -0,0 +1,46 @@ + + * + * @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 . + */ + +namespace OCA\Calendar\Exception; + +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) { + parent::__construct($message, $code, $previous); + $this->httpCode = $httpCode; + } + + public function getHttpCode(): ?int { + return $this->httpCode; + } +} diff --git a/src/directives/linkify.js b/lib/Exception/NoSlotFoundException.php similarity index 55% rename from src/directives/linkify.js rename to lib/Exception/NoSlotFoundException.php index ecf51cb709..edf5da78cd 100644 --- a/src/directives/linkify.js +++ b/lib/Exception/NoSlotFoundException.php @@ -1,8 +1,13 @@ + + * @copyright 2021 Anna Larch + * + * @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 @@ -18,22 +23,8 @@ * License along with this library. If not, see . * */ -import linkifyStr from 'linkifyjs/string' -/** - * Linkify the content of text node - * - * (This is the shorthand directive syntax for bind and update) - * - * @param {Node} el The element the directive is bound to - * @param {Object} binding An object containing various properties - */ -const linkify = (el, binding) => { - el.innerHTML = linkifyStr(binding.value, { - defaultProtocol: 'https', - }) -} +namespace OCA\Calendar\Exception; -export { - linkify, +class NoSlotFoundException extends ClientException { } diff --git a/lib/Exception/ServiceException.php b/lib/Exception/ServiceException.php new file mode 100644 index 0000000000..f8a01594cb --- /dev/null +++ b/lib/Exception/ServiceException.php @@ -0,0 +1,44 @@ + + * + * 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 + * + */ + +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) { + parent::__construct($message, $code, $previous); + $this->httpCode = $httpCode; + } + + public function getHttpCode(): ?int { + return $this->httpCode; + } +} diff --git a/lib/Http/JsonResponse.php b/lib/Http/JsonResponse.php new file mode 100644 index 0000000000..db7b5ffa60 --- /dev/null +++ b/lib/Http/JsonResponse.php @@ -0,0 +1,136 @@ + + * + * @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 . + */ + +namespace OCA\Calendar\Http; + +use JsonSerializable; +use OCP\AppFramework\Http; +use OCP\AppFramework\Http\JSONResponse as Base; +use Throwable; +use function array_flip; +use function array_intersect_key; +use function array_map; +use function array_merge; +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) { + parent::__construct($data, $statusCode); + + $this->addHeader('x-calendar-response', 'true'); + } + + /** + * @param array|JsonSerializable|bool|string $data + * @param int $status + * + * @return static + */ + public static function success($data = null, + int $status = Http::STATUS_OK): self { + return new self( + [ + 'status' => 'success', + 'data' => $data, + ], + $status + ); + } + + /** + * @param array|JsonSerializable|bool|string $data + * @param int $status + * + * @return static + */ + public static function fail($data = null, + int $status = Http::STATUS_BAD_REQUEST): self { + return new self( + [ + 'status' => 'fail', + 'data' => $data, + ], + $status + ); + } + + public static function error(string $message, + int $status = Http::STATUS_INTERNAL_SERVER_ERROR, + array $data = [], + int $code = 0): self { + return new self( + [ + 'status' => 'error', + 'message' => $message, + 'data' => $data, + 'code' => $code, + ], + $status + ); + } + + /** + * @param mixed[] $data + */ + public static function errorFromThrowable(Throwable $error, + int $status = Http::STATUS_INTERNAL_SERVER_ERROR, + array $data = []): self { + return self::error( + $error->getMessage(), + $status, + array_merge( + $data, + self::serializeException($error) + ), + $error->getCode() + ); + } + + private static function serializeException(?Throwable $throwable): ?array { + if ($throwable === null) { + return null; + } + return [ + 'type' => get_class($throwable), + 'message' => $throwable->getMessage(), + 'code' => $throwable->getCode(), + 'trace' => self::filterTrace($throwable->getTrace()), + 'previous' => self::serializeException($throwable->getPrevious()), + ]; + } + + private static function filterTrace(array $original): array { + return array_map(function (array $row) { + return array_intersect_key($row, + array_flip(['file', 'line', 'function', 'class'])); + }, $original); + } +} diff --git a/lib/Listener/AppointmentBookedListener.php b/lib/Listener/AppointmentBookedListener.php new file mode 100644 index 0000000000..0a3457c162 --- /dev/null +++ b/lib/Listener/AppointmentBookedListener.php @@ -0,0 +1,101 @@ + + * + * @author 2022 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 . + */ + +namespace OCA\Calendar\Listener; + +use OCA\Calendar\Events\BeforeAppointmentBookedEvent; +use OCP\EventDispatcher\Event; +use OCP\EventDispatcher\IEventListener; +use OCP\IL10N; +use OCP\IUserManager; +use OCP\Talk\IBroker; +use Psr\Log\LoggerInterface; + +class AppointmentBookedListener implements IEventListener { + + /** @var IBroker */ + private $broker; + + /** @var IUserManager */ + private $userManager; + + private IL10N $l10n; + + /** @var LoggerInterface */ + private $logger; + + public function __construct(IBroker $broker, + IUserManager $userManager, + IL10N $l10n, + LoggerInterface $logger) { + $this->broker = $broker; + $this->userManager = $userManager; + $this->l10n = $l10n; + $this->logger = $logger; + } + + 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(), + ); + $event->getBooking()->setTalkUrl( + $conversation->getAbsoluteUrl(), + ); + } + +} diff --git a/lib/Listener/UserDeletedListener.php b/lib/Listener/UserDeletedListener.php new file mode 100644 index 0000000000..1128665d0b --- /dev/null +++ b/lib/Listener/UserDeletedListener.php @@ -0,0 +1,66 @@ + + * + * @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 . + */ + +namespace OCA\Calendar\Listener; + +use OCA\Calendar\Service\Appointments\AppointmentConfigService; +use OCA\Calendar\Service\Appointments\BookingService; +use OCP\EventDispatcher\Event; +use OCP\EventDispatcher\IEventListener; +use OCP\User\Events\UserDeletedEvent; +use Psr\Log\LoggerInterface; + +/** + * @template-implements IEventListener + */ +class UserDeletedListener implements IEventListener { + /** @var AppointmentConfigService */ + private $appointmentConfigService; + + /** @var BookingService */ + private $bookingService; + + /** @var LoggerInterface */ + private $logger; + + public function __construct(AppointmentConfigService $appointmentConfigService, + BookingService $bookingService, + LoggerInterface $logger) { + $this->appointmentConfigService = $appointmentConfigService; + $this->bookingService = $bookingService; + $this->logger = $logger; + } + + public function handle(Event $event): void { + if (!($event instanceof UserDeletedEvent)) { + return; + } + + $this->bookingService->deleteByUser($event->getUser()); + $this->appointmentConfigService->deleteByUser($event->getUser()); + + $this->logger->info("Calendar appointments cleaned up for deleted user " . $event->getUser()->getUID()); + } +} diff --git a/lib/Migration/Version2040Date20210908101001.php b/lib/Migration/Version2040Date20210908101001.php new file mode 100644 index 0000000000..94d2305f05 --- /dev/null +++ b/lib/Migration/Version2040Date20210908101001.php @@ -0,0 +1,126 @@ + + * + * @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 + * + */ + +namespace OCA\Calendar\Migration; + +use Closure; +use OCP\DB\ISchemaWrapper; +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 + */ + public function changeSchema(IOutput $output, Closure $schemaClosure, array $options): ?ISchemaWrapper { + $schema = $schemaClosure(); + + $table = $schema->createTable('calendar_appt_configs'); + $table->addColumn('id', 'bigint', [ + 'autoincrement' => true, + 'notnull' => true, + 'length' => 11, + 'unsigned' => true + ]); + // Appointment + $table->addColumn('token', 'string', [ + 'notnull' => true, + 'length' => 128 + ]); + // Appointment + $table->addColumn('name', 'string', [ + 'notnull' => true, + 'length' => 128 + ]); + $table->addColumn('description', 'text', [ + 'notnull' => false, + 'length' => null + ]); + $table->addColumn('location', 'text', [ + 'notnull' => false, + 'length' => null + ]); + //Visibility [enum] - PUBLIC (shown somewhere on the user's profile), PRIVATE (only shareable by link) - possibly other variations? + $table->addColumn('visibility', 'string', [ + 'notnull' => true, + 'length' => 10 + ]); + $table->addColumn('user_id', 'string', [ + 'notnull' => true, + 'length' => 64 + ]); + $table->addColumn('target_calendar_uri', 'string', [ + 'notnull' => true, + 'length' => 255 + ]); + //Calendar(s) for conflict handling [string array] + $table->addColumn('calendar_freebusy_uris', 'text', [ + 'notnull' => false, + 'length' => null + ]); + //Slot availabilities [RRULE] + $table->addColumn('availability', 'text', [ + 'notnull' => false, + 'length' => null, + ]); + $table->addColumn('start', 'integer', [ + 'notnull' => false, + ]); + $table->addColumn('end', 'integer', [ + 'notnull' => false, + ]); + $table->addColumn('length', 'integer', [ + 'notnull' => true + ]); + $table->addColumn('increment', 'integer', [ + 'notnull' => true + ]); + $table->addColumn('preparation_duration', 'integer', [ + 'notnull' => true, + 'default' => 0 + ]); + $table->addColumn('followup_duration', 'integer', [ + 'notnull' => true, + 'default' => 0 + ]); + // Minimum time before next appointment slot can be booked + $table->addColumn('time_before_next_slot', 'integer', [ + 'notnull' => false + ]); + //Maximum slots per day - if 0, fit as many as possible + $table->addColumn('daily_max', 'integer', [ + 'notnull' => false, + 'default' => null + ]); + + $table->setPrimaryKey(['id']); + $table->addUniqueIndex(['token'], 'cal_appt_token_uniq_idx'); + + return $schema; + } +} diff --git a/lib/Migration/Version3000Date20211109132439.php b/lib/Migration/Version3000Date20211109132439.php new file mode 100644 index 0000000000..14ab0b59a6 --- /dev/null +++ b/lib/Migration/Version3000Date20211109132439.php @@ -0,0 +1,97 @@ + + * + * @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 + * + */ + +namespace OCA\Calendar\Migration; + +use Closure; +use OCP\DB\ISchemaWrapper; +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 + */ + public function changeSchema(IOutput $output, Closure $schemaClosure, array $options): ?ISchemaWrapper { + $schema = $schemaClosure(); + + $table = $schema->createTable('calendar_appt_bookings'); + $table->addColumn('id', 'bigint', [ + 'autoincrement' => true, + 'notnull' => true, + 'length' => 11, + 'unsigned' => true + ]); + $table->addColumn('appt_config_id', 'bigint', [ + 'notnull' => true, + 'length' => 11, + 'unsigned' => true + ]); + $table->addColumn('created_at', 'integer', [ + 'notnull' => true, + 'length' => 4 + ]); + $table->addColumn('token', 'string', [ + 'notnull' => true, + 'length' => 32 + ]); + $table->addColumn('display_name', 'string', [ + 'notnull' => true, + 'length' => 128 + ]); + $table->addColumn('description', 'text', [ + 'notnull' => false, + 'length' => null + ]); + $table->addColumn('email', 'string', [ + 'notnull' => true, + 'length' => 128 + ]); + $table->addColumn('start', 'integer', [ + 'notnull' => true, + 'length' => 4 + ]); + $table->addColumn('end', 'integer', [ + 'notnull' => true, + 'length' => 4 + ]); + $table->addColumn('timezone', 'string', [ + 'notnull' => true, + 'length' => 32 + ]); + $table->addColumn('confirmed', 'boolean', [ + 'notnull' => false, + 'default' => false, + ]); + + $table->setPrimaryKey(['id']); + $table->addUniqueIndex(['token'], 'cal_appt_bk_token_uniq_idx'); + + return $schema; + } +} diff --git a/lib/Migration/Version3010Date20220111090252.php b/lib/Migration/Version3010Date20220111090252.php new file mode 100644 index 0000000000..73ecb89855 --- /dev/null +++ b/lib/Migration/Version3010Date20220111090252.php @@ -0,0 +1,50 @@ + + * + * @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 + * + */ + +namespace OCA\Calendar\Migration; + +use Closure; +use OCP\DB\ISchemaWrapper; +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 + */ + public function changeSchema(IOutput $output, Closure $schemaClosure, array $options): ?ISchemaWrapper { + $schema = $schemaClosure(); + + $table = $schema->getTable('calendar_appt_configs'); + $table->addColumn('future_limit', 'integer', [ + 'notnull' => false, + ]); + + return $schema; + } +} diff --git a/lib/Migration/Version4050Date20230614163505.php b/lib/Migration/Version4050Date20230614163505.php new file mode 100644 index 0000000000..4d509c95da --- /dev/null +++ b/lib/Migration/Version4050Date20230614163505.php @@ -0,0 +1,57 @@ + + * + * @author 2022 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 . + */ + +namespace OCA\Calendar\Migration; + +use Closure; +use OCP\DB\ISchemaWrapper; +use OCP\DB\Types; +use OCP\Migration\IOutput; +use OCP\Migration\SimpleMigrationStep; + +class Version4050Date20230614163505 extends SimpleMigrationStep { + + /** + * @param IOutput $output + * @param Closure $schemaClosure The `\Closure` returns a `ISchemaWrapper` + * @param array $options + * @return null|ISchemaWrapper + */ + public function changeSchema(IOutput $output, Closure $schemaClosure, array $options): ?ISchemaWrapper { + /** @var ISchemaWrapper $schema */ + $schema = $schemaClosure(); + + $table = $schema->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 0000000000..15f413619d --- /dev/null +++ b/lib/Notification/Notifier.php @@ -0,0 +1,109 @@ + + * + * @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 . + * + */ + +namespace OCA\Calendar\Notification; + +use OCA\Calendar\AppInfo\Application; +use OCP\IURLGenerator; +use OCP\L10N\IFactory; +use OCP\Notification\INotification; +use OCP\Notification\INotifier; + +class Notifier implements INotifier { + private IFactory $factory; + private IURLGenerator $url; + + public function __construct(IFactory $factory, + IURLGenerator $url) { + $this->factory = $factory; + $this->url = $url; + } + + public function getID(): string { + return Application::APP_ID; + } + + /** + * Human-readable name describing the notifier + * @return string + */ + public function getName(): string { + return $this->factory->get(Application::APP_ID)->t('Calendar'); + } + + + public function prepare(INotification $notification, string $languageCode): INotification { + if ($notification->getApp() !== Application::APP_ID) { + // Not my app => throw + throw new \InvalidArgumentException(); + } + + // 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 \InvalidArgumentException(); + } + + return $notification; + } +} diff --git a/lib/Profile/AppointmentsAction.php b/lib/Profile/AppointmentsAction.php new file mode 100644 index 0000000000..6091efd7c9 --- /dev/null +++ b/lib/Profile/AppointmentsAction.php @@ -0,0 +1,125 @@ + + * + * @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 . + */ + +namespace OCA\Calendar\Profile; + +use OCA\Calendar\AppInfo\Application; +use OCA\Calendar\Db\AppointmentConfig; +use OCA\Calendar\Service\Appointments\AppointmentConfigService; +use OCP\IL10N; +use OCP\IURLGenerator; +use OCP\IUser; +use OCP\IUserSession; +use OCP\Profile\ILinkAction; +use function count; + +class AppointmentsAction implements ILinkAction { + /** @var IL10N */ + private $l10n; + + /** @var IUserSession */ + private $userSession; + + /** @var AppointmentConfigService */ + private $configService; + + /** @var IURLGenerator */ + private $urlGenerator; + + /** @var IUser|null */ + private $targetUser; + + /** @var AppointmentConfig[] */ + private $configs = []; + + public function __construct(IL10N $l10n, + IUserSession $userSession, + AppointmentConfigService $configService, + IURLGenerator $urlGenerator) { + $this->l10n = $l10n; + $this->userSession = $userSession; + $this->configService = $configService; + $this->urlGenerator = $urlGenerator; + } + + public function preload(IUser $targetUser): void { + $this->targetUser = $targetUser; + + $this->configs = $this->configService->getAllAppointmentConfigurations( + $targetUser->getUID(), + AppointmentConfig::VISIBILITY_PUBLIC + ); + } + + public function getAppId(): string { + return Application::APP_ID; + } + + public function getId(): string { + return 'appointments'; + } + + public function getDisplayId(): string { + return $this->l10n->t('Appointments'); + } + + public function getTitle(): string { + if (count($this->configs) === 1) { + return $this->l10n->t('Schedule appointment "%s"', [ + 'name' => $this->configs[0]->getName(), + ]); + } + + return $this->l10n->t('Schedule an appointment'); + } + + public function getPriority(): int { + return 50; + } + + public function getIcon(): string { + return $this->urlGenerator->getAbsoluteURL($this->urlGenerator->imagePath('core', 'places/calendar.svg')); + } + + public function getTarget(): ?string { + if ($this->configs === []) { + return null; + } + + // Directly link to this one appointment + if (count($this->configs) === 1) { + return $this->urlGenerator->linkToRouteAbsolute( + 'calendar.appointment.show', + ['token' => $this->configs[0]->getToken()] + ); + } + + // Link to the overview page + return $this->urlGenerator->linkToRouteAbsolute( + 'calendar.appointment.index', + ['userId' => $this->targetUser->getUID()] + ); + } +} diff --git a/lib/RepairSteps/CurrentViewNameRepairStep.php b/lib/RepairSteps/CurrentViewNameRepairStep.php deleted file mode 100644 index 58c6912979..0000000000 --- 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 new file mode 100644 index 0000000000..a45b3cb230 --- /dev/null +++ b/lib/Service/Appointments/AppointmentConfigService.php @@ -0,0 +1,196 @@ + + * + * @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 . + * + */ + +namespace OCA\Calendar\Service\Appointments; + +use OCA\Calendar\Db\AppointmentConfig; +use OCA\Calendar\Db\AppointmentConfigMapper; +use OCA\Calendar\Exception\ClientException; +use OCA\Calendar\Exception\ServiceException; +use OCP\AppFramework\Db\DoesNotExistException; +use OCP\AppFramework\Db\MultipleObjectsReturnedException; +use OCP\AppFramework\Http; +use OCP\DB\Exception as DbException; +use OCP\IUser; +use OCP\Security\ISecureRandom; + +class AppointmentConfigService { + /** @var AppointmentConfigMapper */ + private $mapper; + + /** @var ISecureRandom */ + private $random; + + public function __construct(AppointmentConfigMapper $mapper, + ISecureRandom $random) { + $this->mapper = $mapper; + $this->random = $random; + } + + /** + * @param string $userId + * @param string|null $visibility optionally filter for visibility + * @psalm-param AppointmentConfig::VISIBILITY_* $visibility + * + * @return AppointmentConfig[] + * @throws ServiceException + */ + public function getAllAppointmentConfigurations(string $userId, string $visibility = null): array { + try { + return $this->mapper->findAllForUser($userId, $visibility); + } catch (DbException $e) { + throw new ServiceException('Error fetching configs', $e->getCode(), $e); + } + } + + /** + * @param int $id + * @param string $userId + * + * @throws ServiceException + */ + public function delete(int $id, string $userId): void { + try { + $this->mapper->deleteById($id, $userId); + } catch (DbException $e) { + throw new ServiceException('Could not delete appointment', $e->getCode(), $e); + } + } + + /** + * @param AppointmentConfig $appointmentConfig + * + * @return AppointmentConfig + * @throws ServiceException + */ + public function update(AppointmentConfig $appointmentConfig): AppointmentConfig { + try { + return $this->mapper->update($appointmentConfig); + } catch (DbException $e) { + throw new ServiceException('Could not update Appointment', $e->getCode(), $e); + } + } + + /** + * @param int $id + * + * @return AppointmentConfig + * @throws ServiceException + */ + public function findById(int $id): AppointmentConfig { + try { + return $this->mapper->findById($id); + } catch (DbException | DoesNotExistException | MultipleObjectsReturnedException $e) { + throw new ClientException( + 'Could not find a record for id', + $e->getCode(), + $e, + Http::STATUS_NOT_FOUND + ); + } + } + + public function findByToken(string $token): AppointmentConfig { + try { + return $this->mapper->findByToken($token); + } catch (DoesNotExistException $e) { + throw new ClientException( + "Appointment config $token does not exist", + 0, + $e, + Http::STATUS_NOT_FOUND + ); + } + } + + /** + * @param int $id + * @param string $userId + * @return AppointmentConfig + * @throws ClientException + */ + public function findByIdAndUser(int $id, string $userId): AppointmentConfig { + try { + return $this->mapper->findByIdForUser($id, $userId); + } catch (DoesNotExistException $e) { + throw new ClientException('Could not find a record for id', $e->getCode(), $e, Http::STATUS_NOT_FOUND); + } + } + + /** + * @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, + ?bool $createTalkRoom = false): AppointmentConfig { + try { + $appointmentConfig = new AppointmentConfig(); + $appointmentConfig->setToken($this->random->generate(12, ISecureRandom::CHAR_HUMAN_READABLE)); + $appointmentConfig->setName($name); + $appointmentConfig->setDescription($description); + $appointmentConfig->setLocation($location); + $appointmentConfig->setVisibility($visibility); + $appointmentConfig->setUserId($userId); + $appointmentConfig->setTargetCalendarUri($targetCalendarUri); + $appointmentConfig->setAvailabilityAsArray($availability); + $appointmentConfig->setLength($length); + $appointmentConfig->setIncrement($increment); + $appointmentConfig->setPreparationDuration($preparationDuration); + $appointmentConfig->setFollowupDuration($followupDuration); + $appointmentConfig->setTimeBeforeNextSlot($buffer); + $appointmentConfig->setDailyMax($dailyMax); + $appointmentConfig->setCalendarFreeBusyUrisAsArray($calendarFreeBusyUris); + $appointmentConfig->setStart($start); + $appointmentConfig->setEnd($end); + $appointmentConfig->setFutureLimit($futureLimit); + $appointmentConfig->setCreateTalkRoom($createTalkRoom === true); + + return $this->mapper->insert($appointmentConfig); + } catch (DbException $e) { + throw new ServiceException('Could not create new appointment', $e->getCode(), $e); + } + } + + public function deleteByUser(IUser $getUser): void { + $this->mapper->deleteByUserId($getUser->getUID()); + } +} diff --git a/lib/Service/Appointments/AvailabilityGenerator.php b/lib/Service/Appointments/AvailabilityGenerator.php new file mode 100644 index 0000000000..e25d38f30f --- /dev/null +++ b/lib/Service/Appointments/AvailabilityGenerator.php @@ -0,0 +1,173 @@ + + * + * @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 . + */ + +namespace OCA\Calendar\Service\Appointments; + +use DateInterval; +use DatePeriod; +use DateTimeImmutable; +use DateTimeZone; +use OCA\Calendar\Db\AppointmentConfig; +use OCP\AppFramework\Utility\ITimeFactory; +use function ceil; +use function max; +use function min; + +class AvailabilityGenerator { + /** @var ITimeFactory */ + private $timeFactory; + + public function __construct(ITimeFactory $timeFactory) { + $this->timeFactory = $timeFactory; + } + + /** + * Generate intervals at which the user is generally available + * + * @param AppointmentConfig $config + * @param int $start + * @param int $end + * + * @return Interval[] + */ + public function generate(AppointmentConfig $config, + int $start, + int $end): array { + $now = $this->timeFactory->getTime(); + + $bufferBeforeStart = ($config->getTimeBeforeNextSlot() ?? 0); + $earliestStart = max( + $start, + $now + $bufferBeforeStart, + ($config->getStart() ?? $now) + $bufferBeforeStart + ); + // Always round to "beautiful" slot starts according to slot length + // 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; + } + + $latestEnd = min( + $end, + $config->getEnd() ?? $end + ); + + // If we reach this state then there are no available dates anymore + if ($latestEnd <= $earliestStart) { + return []; + } + + if (empty($config->getAvailability())) { + // No availability -> full time range is available + return [ + new Interval($earliestStart, $latestEnd), + ]; + } + + $availabilityRule = json_decode($config->getAvailability(), true); + + $timeZone = $availabilityRule['timezoneId']; + $slots = $availabilityRule['slots']; + + $applicableSlots = $this->filterDates($start, $slots, $timeZone); + + $intervals = []; + foreach ($applicableSlots as $slot) { + if ($slot->getEnd() <= $earliestStart || $slot->getStart() >= $latestEnd) { + continue; + } + $startSlot = max( + $earliestStart, + $slot->getStart() + ); + $endSlot = min( + $latestEnd, + $slot->getEnd() + ); + $intervals[] = new Interval($startSlot, $endSlot); + } + return $intervals; + } + + /** + * @param int $start + * @param array $availabilityArray + * @param string $timeZone + * + * @return Interval[] + */ + private function filterDates(int $start, array $availabilityArray, string $timeZone): array { + $tz = new DateTimeZone($timeZone); + // First, transform all timestamps to DateTime Objects + $availabilityRules = []; + foreach ($availabilityArray as $key => $availabilitySlots) { + if (empty($availabilitySlots)) { + $availabilityRules[$key] = []; + continue; + } + foreach ($availabilitySlots as $slot) { + $availabilityRules[$key][] = [ + 'start' => (new DateTimeImmutable())->setTimezone($tz)->setTimestamp($slot['start']), + 'end' => (new DateTimeImmutable())->setTimezone($tz)->setTimestamp($slot['end']) + ]; + } + } + + // get the period the check can apply to + + $period = new DatePeriod( + (new DateTimeImmutable())->setTimezone($tz)->setTimestamp($start - 87600)->setTime(0, 0), + new DateInterval('P1D'), + (new DateTimeImmutable())->setTimezone($tz)->setTimestamp($start + 87600)->setTime(23, 59) + ); + + /** @var Interval[] $applicable */ + $applicable = []; + foreach ($period as $item) { + /** @var DateTimeImmutable $item */ + + // get the weekday from our item and select the applicable rule + $weekday = strtoupper(mb_strcut($item->format('D'), 0, 2)); + /** @var DateTimeImmutable[][] $dailyRules */ + $dailyRules = $availabilityRules[$weekday]; + // days with no rule should be treated as unavailable + if (empty($dailyRules)) { + continue; + } + foreach ($dailyRules as $dailyRule) { + $dStart = $dailyRule['start']; + $dEnd = $dailyRule['end']; + $applicable[] = new Interval( + $item->setTime((int)$dStart->format('H'), (int)$dStart->format('i'))->getTimestamp(), + $item->setTime((int)$dEnd->format('H'), (int)$dEnd->format('i'))->getTimestamp() + ); + } + } + return $applicable; + } +} diff --git a/lib/Service/Appointments/BookingCalendarWriter.php b/lib/Service/Appointments/BookingCalendarWriter.php new file mode 100644 index 0000000000..274ecbe8b5 --- /dev/null +++ b/lib/Service/Appointments/BookingCalendarWriter.php @@ -0,0 +1,245 @@ + + * + * @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 . + * + */ + +namespace OCA\Calendar\Service\Appointments; + +use DateTimeImmutable; +use OCA\Calendar\AppInfo\Application; +use OCA\Calendar\Db\AppointmentConfig; +use OCP\Calendar\Exceptions\CalendarException; +use OCP\Calendar\ICreateFromString; +use OCP\Calendar\IManager; +use OCP\IConfig; +use OCP\IL10N; +use OCP\IUserManager; +use OCP\Security\ISecureRandom; +use RuntimeException; +use Sabre\VObject\Component\VCalendar; +use function abs; + +class BookingCalendarWriter { + /** @var IConfig */ + private $config; + + /** @var IManager */ + private $manager; + + /** @var IUserManager */ + private $userManager; + + /** @var ISecureRandom */ + private $random; + /** @var IL10N */ + private $l10n; + + public function __construct(IConfig $config, + IManager $manager, + IUserManager $userManager, + ISecureRandom $random, + IL10N $l10n) { + $this->config = $config; + $this->manager = $manager; + $this->userManager = $userManager; + $this->random = $random; + $this->l10n = $l10n; + } + + private function secondsToIso8601Duration(int $secs): string { + $day = 24 * 60 * 60; + $hour = 60 * 60; + $minute = 60; + if ($secs % $day === 0) { + return 'PT' . $secs / $day . 'S'; + } + if ($secs % $hour === 0) { + return 'PT' . $secs / $hour . 'H'; + } + if ($secs % $minute === 0) { + return 'PT' . $secs / $minute . 'M'; + } + return 'PT' . $secs . 'S'; + } + + /** + * @param AppointmentConfig $config + * @param DateTimeImmutable $start + * @param string $displayName + * @param string $email + * @param string|null $description + * + * @return string + * @throws RuntimeException + */ + public function write(AppointmentConfig $config, + DateTimeImmutable $start, + string $displayName, + string $email, + ?string $description = null, + ?string $location = null) : string { + $calendar = current($this->manager->getCalendarsForPrincipal($config->getPrincipalUri(), [$config->getTargetCalendarUri()])); + 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'); + } + + $vcalendar = new VCalendar([ + 'CALSCALE' => 'GREGORIAN', + 'VERSION' => '2.0', + 'VEVENT' => [ + // TRANSLATORS Title for event appoinment, first the attendee name, then the appointment name + 'SUMMARY' => $this->l10n->t('%1$s - %2$s', [$displayName, $config->getName()]), + 'STATUS' => 'CONFIRMED', + 'DTSTART' => $start, + 'DTEND' => $start->setTimestamp($start->getTimestamp() + ($config->getLength())) + ] + ]); + + if (!empty($description)) { + $vcalendar->VEVENT->add('DESCRIPTION', $description); + } + + $vcalendar->VEVENT->add( + 'ORGANIZER', + 'mailto:' . $organizer->getEMailAddress(), + [ + 'CN' => $organizer->getDisplayName(), + 'CUTYPE' => 'INDIVIDUAL', + 'PARTSTAT' => 'ACCEPTED' + ] + ); + + $vcalendar->VEVENT->add( + 'ATTENDEE', + 'mailto:' . $organizer->getEMailAddress(), + [ + 'CN' => $organizer->getDisplayName(), + 'CUTYPE' => 'INDIVIDUAL', + 'RSVP' => 'TRUE', + 'ROLE' => 'REQ-PARTICIPANT', + 'PARTSTAT' => 'ACCEPTED' + ] + ); + + $vcalendar->VEVENT->add('ATTENDEE', + 'mailto:' . $email, + [ + 'CN' => $displayName, + 'CUTYPE' => 'INDIVIDUAL', + 'RSVP' => 'TRUE', + 'ROLE' => 'REQ-PARTICIPANT', + 'PARTSTAT' => 'ACCEPTED' + ] + ); + + $defaultReminder = $this->config->getUserValue( + $config->getUserId(), + Application::APP_ID, + 'defaultReminder', + 'none' + ); + if ($defaultReminder !== 'none') { + $alarm = $vcalendar->createComponent('VALARM'); + $alarm->add($vcalendar->createProperty('TRIGGER', '-' . $this->secondsToIso8601Duration(abs((int) $defaultReminder)), ['RELATED' => 'START'])); + $alarm->add($vcalendar->createProperty('ACTION', 'DISPLAY')); + $vcalendar->VEVENT->add($alarm); + } + + + if ($config->getLocation() !== null) { + $vcalendar->VEVENT->add('LOCATION', $config->getLocation()); + } + + $vcalendar->VEVENT->add('X-NC-APPOINTMENT', $config->getToken()); + + $filename = $this->random->generate(32, ISecureRandom::CHAR_ALPHANUMERIC); + + 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); + } + + if ($config->getPreparationDuration() !== 0) { + $string = $this->l10n->t('Prepare for %s', [$config->getName()]); + $prepStart = $start->setTimestamp($start->getTimestamp() - $config->getPreparationDuration()); + $prepCalendar = new VCalendar([ + 'CALSCALE' => 'GREGORIAN', + 'VERSION' => '2.0', + 'VEVENT' => [ + 'SUMMARY' => $string, + 'STATUS' => 'CONFIRMED', + 'DTSTART' => $prepStart, + 'DTEND' => $start + ] + ]); + + $prepCalendar->VEVENT->add('RELATED-TO', $vcalendar->VEVENT->{'UID'}); + $prepCalendar->VEVENT->add('RELTYPE', 'PARENT'); + $prepCalendar->VEVENT->add('X-NC-PRE-APPOINTMENT', $config->getToken()); + + $prepFileName = $this->random->generate(32, ISecureRandom::CHAR_ALPHANUMERIC); + + 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); + } + } + + if ($config->getFollowupDuration() !== 0) { + $string = $this->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([ + 'CALSCALE' => 'GREGORIAN', + 'VERSION' => '2.0', + 'VEVENT' => [ + 'SUMMARY' => $string, + 'STATUS' => 'CONFIRMED', + 'DTSTART' => $followupStart, + 'DTEND' => $followUpEnd + ] + ]); + + $followUpCalendar->VEVENT->add('RELATED-TO', $vcalendar->VEVENT->{'UID'}); + $followUpCalendar->VEVENT->add('RELTYPE', 'PARENT'); + $followUpCalendar->VEVENT->add('X-NC-POST-APPOINTMENT', $config->getToken()); + + $followUpFilename = $this->random->generate(32, ISecureRandom::CHAR_ALPHANUMERIC); + + 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); + } + } + return $vcalendar->serialize(); + } +} diff --git a/lib/Service/Appointments/BookingService.php b/lib/Service/Appointments/BookingService.php new file mode 100644 index 0000000000..7af7781df0 --- /dev/null +++ b/lib/Service/Appointments/BookingService.php @@ -0,0 +1,259 @@ + + * + * @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 . + * + */ + +namespace OCA\Calendar\Service\Appointments; + +use DateTimeImmutable; +use DateTimeZone; +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; +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; + + /** @var AvailabilityGenerator */ + private $availabilityGenerator; + + /** @var SlotExtrapolator */ + private $extrapolator; + + /** @var DailyLimitFilter */ + private $dailyLimitFilter; + + /** @var EventConflictFilter */ + private $eventConflictFilter; + + /** @var BookingCalendarWriter */ + private $calendarWriter; + + /** @var BookingMapper */ + private $bookingMapper; + + /** @var ISecureRandom */ + private $random; + + /** @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, + IEventDispatcher $eventDispatcher, + LoggerInterface $logger) { + $this->availabilityGenerator = $availabilityGenerator; + $this->extrapolator = $extrapolator; + $this->dailyLimitFilter = $dailyLimitFilter; + $this->eventConflictFilter = $eventConflictFilter; + $this->calendarWriter = $calendarWriter; + $this->bookingMapper = $bookingMapper; + $this->random = $random; + $this->mailService = $mailService; + $this->eventDispatcher = $eventDispatcher; + $this->logger = $logger; + } + + /** + * @throws ClientException|DbException + */ + public function confirmBooking(Booking $booking, AppointmentConfig $config): Booking { + $bookingSlot = current($this->getAvailableSlots($config, $booking->getStart(), $booking->getEnd())); + + if (!$bookingSlot) { + throw new ClientException('Slot for booking is not available any more'); + } + + $tz = new DateTimeZone($booking->getTimezone()); + $startObj = (new DateTimeImmutable())->setTimestamp($booking->getStart())->setTimezone($tz); + if (!$startObj) { + throw new ClientException('Could not make sense of booking times'); + } + + // 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->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]); + } + + 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]); + } + + return $booking; + } + + /** + * @throws ServiceException|DbException|NoSlotFoundException|InvalidArgumentException + */ + public function book(AppointmentConfig $config, int $start, int $end, string $timeZone, string $displayName, string $email, ?string $description = null): Booking { + $bookingSlot = current($this->getAvailableSlots($config, $start, $end)); + + if (!$bookingSlot) { + throw new NoSlotFoundException('Could not find slot for booking'); + } + + try { + $tz = new DateTimeZone($timeZone); + } catch (Exception $e) { + throw new InvalidArgumentException('Could not make sense of the timezone', $e->getCode(), $e); + } + + $booking = new Booking(); + $booking->setApptConfigId($config->getId()); + $booking->setCreatedAt(time()); + $booking->setToken($this->random->generate(32, ISecureRandom::CHAR_ALPHANUMERIC)); + $booking->setDisplayName($displayName); + $booking->setDescription($description); + $booking->setEmail($email); + $booking->setStart($start); + $booking->setEnd($end); + $booking->setTimezone($tz->getName()); + try { + $this->bookingMapper->insert($booking); + } catch (Exception $e) { + throw new ServiceException('Could not create booking', 0, $e); + } + + try { + $this->mailService->sendConfirmationEmail($booking, $config); + } catch (ServiceException $e) { + $this->bookingMapper->delete($booking); + throw $e; + } + + return $booking; + } + + /** + * @return Interval[] + */ + public function getAvailableSlots(AppointmentConfig $config, int $startTime, int $endTime): array { + if ($config->getFutureLimit() !== null) { + /** @var int $maxEndTime */ + $maxEndTime = time() + $config->getFutureLimit(); + if ($startTime > $maxEndTime) { + return []; + } + if ($endTime > $maxEndTime) { + $endTime = $maxEndTime; + } + } + + // 1. Build intervals at which slots may be booked + $availabilityIntervals = $this->availabilityGenerator->generate($config, $startTime, $endTime); + // 2. Generate all possible slots + $allPossibleSlots = $this->extrapolator->extrapolate($config, $availabilityIntervals); + // 3. Filter out the daily limits + $filteredByDailyLimit = $this->dailyLimitFilter->filter($config, $allPossibleSlots); + // 4. Filter out booking conflicts + $available = $this->eventConflictFilter->filter($config, $filteredByDailyLimit); + + $this->logger->debug('Appointment config ' . $config->getToken() . ' has {availabilityIntervals} intervals that result in {allPossibleSlots} possible slots. {filteredByDailyLimit} slots remain after the daily limit. {available} available slots remain after conflict checking.', [ + 'availabilityIntervals' => count($availabilityIntervals), + 'allPossibleSlots' => count($allPossibleSlots), + 'filteredByDailyLimit' => count($filteredByDailyLimit), + 'available' => count($available) + ]); + + return $available; + } + + /** + * @throws ClientException + */ + public function findByToken(string $token): Booking { + try { + return $this->bookingMapper->findByToken($token); + } catch (DoesNotExistException $e) { + throw new ClientException( + "Booking $token does not exist", + 0, + $e, + Http::STATUS_NOT_FOUND + ); + } + } + + public function deleteByUser(IUser $user): void { + $this->bookingMapper->deleteByUserId($user->getUID()); + } + + /** + * @throws DbException + */ + public function deleteOutdated(): int { + return $this->bookingMapper->deleteOutdated(self::EXPIRY); + } +} diff --git a/lib/Service/Appointments/DailyLimitFilter.php b/lib/Service/Appointments/DailyLimitFilter.php new file mode 100644 index 0000000000..188f69c08b --- /dev/null +++ b/lib/Service/Appointments/DailyLimitFilter.php @@ -0,0 +1,99 @@ + + * + * @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 . + */ + +namespace OCA\Calendar\Service\Appointments; + +use OCA\Calendar\Db\AppointmentConfig; +use OCP\Calendar\ICalendarQuery; +use OCP\Calendar\IManager; +use function array_filter; +use function array_values; +use function count; + +class DailyLimitFilter { + /** @var IManager */ + private $calendarManger; + + public function __construct(IManager $calendarManger) { + $this->calendarManger = $calendarManger; + } + + /** + * @param AppointmentConfig $config + * @param Interval[] $slots + * + * @return Interval[] + */ + public function filter(AppointmentConfig $config, array $slots): array { + // 0. If there is no limit then we don't have to filter anything + if ($config->getDailyMax() === null) { + return $slots; + } + + // 1. Find all days + $days = []; + foreach ($slots as $slot) { + $startOfDay = $slot->getStartAsObject()->setTime(0, 0, 0, 0); + $ts = $startOfDay->getTimestamp(); + $days[$ts] = $startOfDay; + } + + // 2. Check what days are bookable + /** @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 + // 2. Update the config to write to another calendar + // Also, the CalDAV back-end currently only indexes some event properties + // and our X-* property isn't one of them. Therefore we have to do the + // filtering in PHP rather than on the DB. + $available = []; + foreach ($days as $ts => $day) { + $nextDay = $day->modify('+1 day'); + $query->setTimerangeStart($day); + $query->setTimerangeEnd($nextDay); + + $events = $this->calendarManger->searchForPrincipal($query); + + $eventsOfSameAppointment = array_filter($events, function (array $event) use ($config) { + $isAppointment = ($event['objects'][0]['X-NC-APPOINTMENT'][0][0] ?? null) === $config->getToken(); + $isCancelled = ($event['objects'][0]['STATUS'][0] ?? null) === 'CANCELLED'; + $isFree = ($event['objects'][0]['TRANSP'][0] ?? null) === 'TRANSPARENT'; + + return $isAppointment && !$isCancelled && !$isFree; + }); + + // Only days with less than the max number are still available + $available[$ts] = count($eventsOfSameAppointment) < $config->getDailyMax(); + } + + // 3. Filter out the slots that are on an unavailable day + return 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]; + })); + } +} diff --git a/lib/Service/Appointments/EventConflictFilter.php b/lib/Service/Appointments/EventConflictFilter.php new file mode 100644 index 0000000000..1af6fa0d34 --- /dev/null +++ b/lib/Service/Appointments/EventConflictFilter.php @@ -0,0 +1,93 @@ + + * + * @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 . + */ + +namespace OCA\Calendar\Service\Appointments; + +use DateInterval; +use DateTimeInterface; +use OCA\Calendar\Db\AppointmentConfig; +use OCP\Calendar\IManager; +use Psr\Log\LoggerInterface; +use function array_filter; + +class EventConflictFilter { + /** @var IManager */ + private $calendarManager; + private $logger; + + public function __construct(IManager $calendarManager, + LoggerInterface $logger) { + $this->calendarManager = $calendarManager; + $this->logger = $logger; + } + + /** + * Filter appointment slots to those that do not conflict with existing calendar events + * + * @todo try to combine slots a bit to lower the number of calendar queries + * + * @param AppointmentConfig $config + * @param Interval[] $slots + * + * @return Interval[] + */ + public function filter(AppointmentConfig $config, array $slots): array { + $query = $this->calendarManager->newQuery($config->getPrincipalUri()); + foreach ($config->getCalendarFreebusyUrisAsArray() as $uri) { + $query->addSearchCalendar($uri); + } + // Always check the target calendar for conflicts + $query->addSearchCalendar($config->getTargetCalendarUri()); + $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 { + $query->setTimerangeStart($slot->getStartAsObject()->sub($preparationDuration)); + $query->setTimerangeEnd($slot->getEndAsObject()->add($followUpDuration)); + + $events = $this->calendarManager->searchForPrincipal($query); + + $objects = array_filter($events, static function (array $event) { + $isCancelled = ($event['objects'][0]['STATUS'][0] ?? null) === 'CANCELLED'; + $isFree = ($event['objects'][0]['TRANSP'][0] ?? null) === 'TRANSPARENT'; + return !$isCancelled && !$isFree; + }); + + $uids = array_map(static function ($object) { + return $object['uid']; + }, $objects); + + $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), + 'calendarUri' => $config->getTargetCalendarUri(), + 'uids' => implode(' : ', $uids) + ]); + + // If there is at least one event at this time then the slot is taken + return empty($objects); + }); + } +} diff --git a/lib/Service/Appointments/Interval.php b/lib/Service/Appointments/Interval.php new file mode 100644 index 0000000000..8bb0b60722 --- /dev/null +++ b/lib/Service/Appointments/Interval.php @@ -0,0 +1,69 @@ + + * + * @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 . + * + */ + +namespace OCA\Calendar\Service\Appointments; + +use DateTimeImmutable; +use JsonSerializable; + +/** + * @psalm-immutable + */ +class Interval implements JsonSerializable { + /** @var int */ + private $start; + + /** @var int */ + private $end; + + public function __construct(int $start, int $end) { + $this->start = $start; + $this->end = $end; + } + + public function getStart(): int { + return $this->start; + } + + public function getEnd(): int { + return $this->end; + } + + public function getStartAsObject(): DateTimeImmutable { + return (new DateTimeImmutable())->setTimestamp($this->start); + } + + public function getEndAsObject(): DateTimeImmutable { + return (new DateTimeImmutable())->setTimestamp($this->end); + } + + public function jsonSerialize(): array { + return [ + 'start' => $this->start, + 'end' => $this->end, + ]; + } +} diff --git a/lib/Service/Appointments/MailService.php b/lib/Service/Appointments/MailService.php new file mode 100644 index 0000000000..df136d3cff --- /dev/null +++ b/lib/Service/Appointments/MailService.php @@ -0,0 +1,369 @@ + + * + * @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 . + * + */ + +namespace OCA\Calendar\Service\Appointments; + +use Exception; +use OCA\Calendar\Db\AppointmentConfig; +use OCA\Calendar\Db\Booking; +use OCA\Calendar\Exception\ServiceException; +use OCP\Defaults; +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 */ + private $mailer; + /** @var IL10N */ + private $l10n; + /** @var Defaults */ + private $defaults; + /** @var LoggerInterface */ + private $logger; + /** @var IURLGenerator */ + private $urlGenerator; + /** @var IDateTimeFormatter */ + private $dateFormatter; + /** @var IFactory */ + private $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) { + $this->userManager = $userManager; + $this->mailer = $mailer; + $this->l10n = $l10n; + $this->defaults = $defaults; + $this->logger = $logger; + $this->urlGenerator = $urlGenerator; + $this->dateFormatter = $dateFormatter; + $this->lFactory = $lFactory; + $this->notificationManager = $notificationManager; + } + + /** + * @param Booking $booking + * @param AppointmentConfig $config + * @throws ServiceException + */ + public function sendConfirmationEmail(Booking $booking, AppointmentConfig $config): 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 needs confirmation', [$config->getName(), $user->getDisplayName()]); + $template->setSubject($subject); + + // Heading + $summary = $this->l10n->t("Dear %s, please confirm your booking", [$booking->getDisplayName()]); + $template->addHeading($summary); + + $bookingUrl = $this->urlGenerator->linkToRouteAbsolute('calendar.booking.confirmBooking', ['token' => $booking->getToken()]); + $template->addBodyButton($this->l10n->t('Confirm'), $bookingUrl); + + $template->addBodyListItem($user->getDisplayName(), 'Appointment with:'); + if (!empty($config->getDescription())) { + $template->addBodyListItem($config->getDescription(), 'Description:'); + } + + // Create Booking overview + $this->addBulletList($template, $this->l10n, $booking, $config); + + $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 by replying to this email or by visiting their profile page.'); + $template->addBodyText($bodyText); + + $template->addFooter(); + + $message->useTemplate($template); + + + try { + $failed = $this->mailer->send($message); + if (count($failed) > 0) { + $this->logger->warning('Mail delivery failed for some recipients.'); + foreach ($failed as $fail) { + $this->logger->debug('Failed to deliver email to ' . $fail); + } + throw new ServiceException('Could not send mail for recipient(s) ' . implode(', ', $failed)); + } + } catch (Exception $ex) { + $this->logger->error($ex->getMessage(), ['exception' => $ex]); + 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(), 'Appointment with:'); + if (!empty($config->getDescription())) { + $template->addBodyListItem($config->getDescription(), 'Description:'); + } + + // Create Booking overview + $this->addBulletList($template, $this->l10n, $booking, $config); + + $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.'); + foreach ($failed as $fail) { + $this->logger->debug('Failed to deliver email to ' . $fail); + } + throw new ServiceException('Could not send mail for recipient(s) ' . implode(', ', $failed)); + } + } catch (Exception $ex) { + $this->logger->error($ex->getMessage(), ['exception' => $ex]); + throw new ServiceException('Could not send mail: ' . $ex->getMessage(), $ex->getCode(), $ex); + } + } + + private function addBulletList(IEMailTemplate $template, + IL10N $l10n, + Booking $booking, + AppointmentConfig $config):void { + $template->addBodyListItem($booking->getDisplayName(), $l10n->t('Appointment for:')); + + $l = $this->lFactory->findGenericLanguage(); + $relativeDateTime = $this->dateFormatter->formatDateTimeRelativeDay( + $booking->getStart(), + 'long', + 'short', + new \DateTimeZone($booking->getTimezone()), + $this->lFactory->get('calendar', $l) + ); + + $template->addBodyListItem($relativeDateTime, $l10n->t('Date:')); + + 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('Comment:')); + } + } + + /** + * @return string + */ + private function getSysEmail(): string { + $instanceName = $this->defaults->getName(); + return \OCP\Util::getDefaultEmailAddress('appointments-noreply'); + } + + public function sendOrganizerBookingInformationEmail(Booking $booking, AppointmentConfig $config, string $calendar) { + /** @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'); + } + $fromName = $user->getDisplayName(); + + $sys = $this->getSysEmail(); + $message = $this->mailer->createMessage() + ->setFrom([$sys => $fromName]) + ->setTo([$toEmail => $booking->getDisplayName()]); + + + $template = $this->mailer->createEMailTemplate('calendar.confirmOrganizer'); + $template->addHeader(); + + // Subject + $subject = $this->l10n->t('You have a new appointment booking "%s" from %s', [$config->getName(), $booking->getDisplayName()]); + $template->setSubject($subject); + + // Heading + $summary = $this->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() . ')', 'Appointment with:'); + if (!empty($config->getDescription())) { + $template->addBodyListItem($config->getDescription(), 'Description:'); + } + + // Create Booking overview + $this->addBulletList($template, $this->l10n, $booking, $config); + $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.'); + foreach ($failed as $fail) { + $this->logger->debug('Failed to deliver email to ' . $fail); + } + 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]); + throw new ServiceException('Could not send mail: ' . $ex->getMessage(), $ex->getCode(), $ex); + } + } + + public function sendOrganizerBookingInformationNotification(Booking $booking, AppointmentConfig $config) { + $relativeDateTime = $this->dateFormatter->formatDateTimeRelativeDay( + $booking->getStart(), + 'long', + 'short', + new \DateTimeZone($booking->getTimezone()), + $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 new file mode 100644 index 0000000000..36119c1a00 --- /dev/null +++ b/lib/Service/Appointments/SlotExtrapolator.php @@ -0,0 +1,55 @@ + + * + * @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 . + */ + +namespace OCA\Calendar\Service\Appointments; + +use OCA\Calendar\Db\AppointmentConfig; + +class SlotExtrapolator { + /** + * @param AppointmentConfig $config + * @param Interval[] $availabilityIntervals + * @param int $to + * + * @return Interval[] + */ + public function extrapolate(AppointmentConfig $config, + array $availabilityIntervals): array { + $increment = $config->getIncrement(); + $length = $config->getLength(); + $slots = []; + + foreach ($availabilityIntervals as $available) { + $from = $available->getStart(); + $to = $available->getEnd(); + + for ($t = $from; ($t + $length) <= $to; $t += $increment) { + $slots[] = new Interval($t, $t + $length); + } + } + + return $slots; + } +} diff --git a/lib/Service/CategoriesService.php b/lib/Service/CategoriesService.php new file mode 100644 index 0000000000..0c8e744783 --- /dev/null +++ b/lib/Service/CategoriesService.php @@ -0,0 +1,144 @@ + + * + * @author Claus-Justus Heine + * + * 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\Service; + +use OCP\Calendar\ICalendarQuery; +use OCP\Calendar\IManager as ICalendarManager; +use OCP\IL10N; +use OCP\SystemTag\ISystemTag; +use OCP\SystemTag\ISystemTagManager; + +/** + * @psalm-type Category = array{label: string, value: string} + * @psalm-type CategoryGroup = array{group: string, options: array} + */ +class CategoriesService { + /** @var ICalendarManager */ + private $calendarManager; + + /** @var ISystemTagManager */ + private $systemTagManager; + + /** @var IL10N */ + private $l; + + public function __construct(ICalendarManager $calendarManager, + ISystemTagManager $systemTagManager, + IL10N $l10n) { + $this->calendarManager = $calendarManager; + $this->systemTagManager = $systemTagManager; + $this->l = $l10n; + } + + /** + * This is a simplistic brute-force extraction of all already used + * categories from all events accessible to the given user. + * + * @return array + */ + private function getUsedCategories(string $userId): array { + $categories = []; + $principalUri = 'principals/users/' . $userId; + $query = $this->calendarManager->newQuery($principalUri); + $query->addSearchProperty(ICalendarQuery::SEARCH_PROPERTY_CATEGORIES); + $calendarObjects = $this->calendarManager->searchForPrincipal($query); + foreach ($calendarObjects as $objectInfo) { + foreach ($objectInfo['objects'] as $calendarObject) { + if (isset($calendarObject['CATEGORIES'])) { + $categories[] = explode(',', $calendarObject['CATEGORIES'][0][0]); + } + } + } + + // Avoid injecting "broken" categories into the UI (avoid empty + // categories and categories surrounded by spaces) + $categories = array_filter(array_map(fn ($label) => trim($label), array_unique(array_merge(...$categories)))); + + return $categories; + } + + /** + * Return a grouped array with all previously used categories, all system + * tags and all categories found in the iCalendar RFC. + * + * @return CategoryGroup[] + */ + public function getCategories(string $userId): array { + $systemTags = $this->systemTagManager->getAllTags(true); + + $systemTagCategoryLabels = []; + /** @var ISystemTag $systemTag */ + foreach ($systemTags as $systemTag) { + if (!$systemTag->isUserAssignable() || !$systemTag->isUserVisible()) { + continue; + } + $systemTagCategoryLabels[] = $systemTag->getName(); + } + sort($systemTagCategoryLabels); + $systemTagCategoryLabels = array_values(array_filter(array_unique($systemTagCategoryLabels))); + + $rfcCategoryLabels = [ + $this->l->t('Anniversary'), + $this->l->t('Appointment'), + $this->l->t('Business'), + $this->l->t('Education'), + $this->l->t('Holiday'), + $this->l->t('Meeting'), + $this->l->t('Miscellaneous'), + $this->l->t('Non-working hours'), + $this->l->t('Not in office'), + $this->l->t('Personal'), + $this->l->t('Phone call'), + $this->l->t('Sick day'), + $this->l->t('Special occasion'), + $this->l->t('Travel'), + $this->l->t('Vacation'), + ]; + sort($rfcCategoryLabels); + $rfcCategoryLabels = array_values(array_filter(array_unique($rfcCategoryLabels))); + + $standardCategories = array_merge($systemTagCategoryLabels, $rfcCategoryLabels); + $customCategoryLabels = array_values(array_filter($this->getUsedCategories($userId), fn ($label) => !in_array($label, $standardCategories))); + + $categories = [ + [ + 'group' => $this->l->t('Custom Categories'), + 'options' => array_map(fn (string $label) => [ 'label' => $label, 'value' => $label ], $customCategoryLabels), + ], + [ + 'group' => $this->l->t('Collaborative Tags'), + 'options' => array_map(fn (string $label) => [ 'label' => $label, 'value' => $label ], $systemTagCategoryLabels), + ], + [ + 'group' => $this->l->t('Standard Categories'), + 'options' => array_map(fn (string $label) => [ 'label' => $label, 'value' => $label ], $rfcCategoryLabels), + ], + ]; + + return $categories; + } +} diff --git a/lib/Service/JSDataService.php b/lib/Service/JSDataService.php index 8b5c071e4b..366cd27a41 100644 --- a/lib/Service/JSDataService.php +++ b/lib/Service/JSDataService.php @@ -26,9 +26,9 @@ use OCA\Calendar\AppInfo\Application; use OCP\IConfig; use OCP\IUserSession; +use ReturnTypeWillChange; class JSDataService implements \JsonSerializable { - /** @var IConfig */ private $config; @@ -42,7 +42,7 @@ class JSDataService implements \JsonSerializable { * @param IUserSession $userSession */ public function __construct(IConfig $config, - IUserSession $userSession) { + IUserSession $userSession) { $this->config = $config; $this->userSession = $userSession; } @@ -50,6 +50,7 @@ public function __construct(IConfig $config, /** * @inheritDoc */ + #[ReturnTypeWillChange] public function jsonSerialize() { $user = $this->userSession->getUser(); diff --git a/package-lock.json b/package-lock.json index 0b3b7c912a..9b677f767f 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,17561 +1,31072 @@ { - "name": "calendar", - "version": "2.1.1", - "lockfileVersion": 1, - "requires": true, - "dependencies": { - "@babel/cli": { - "version": "7.12.10", - "resolved": "https://registry.npmjs.org/@babel/cli/-/cli-7.12.10.tgz", - "integrity": "sha512-+y4ZnePpvWs1fc/LhZRTHkTesbXkyBYuOB+5CyodZqrEuETXi3zOVfpAQIdgC3lXbHLTDG9dQosxR9BhvLKDLQ==", - "requires": { - "@nicolo-ribaudo/chokidar-2": "2.1.8-no-fsevents", - "chokidar": "^3.4.0", - "commander": "^4.0.1", - "convert-source-map": "^1.1.0", - "fs-readdir-recursive": "^1.1.0", - "glob": "^7.0.0", - "lodash": "^4.17.19", - "make-dir": "^2.1.0", - "slash": "^2.0.0", - "source-map": "^0.5.0" - }, - "dependencies": { - "anymatch": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz", - "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==", - "optional": 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==", - "optional": true - }, - "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "optional": true, - "requires": { - "fill-range": "^7.0.1" - } - }, - "chokidar": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.0.tgz", - "integrity": "sha512-JgQM9JS92ZbFR4P90EvmzNpSGhpPBGBSj10PILeDyYFwp4h2/D9OM03wsJ4zW1fEp4ka2DGrnUeD7FuvQ2aZ2Q==", - "optional": true, - "requires": { - "anymatch": "~3.1.1", - "braces": "~3.0.2", - "fsevents": "~2.3.1", - "glob-parent": "~5.1.0", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.5.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==", - "optional": true, - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "fsevents": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.1.tgz", - "integrity": "sha512-YR47Eg4hChJGAB1O3yEAOkGO+rlzutoICGqGo9EZ4lKWokzZRSyIW1QmTzqjtw8MJdj9srP869CuWw/hyzSiBw==", - "optional": true - }, - "glob-parent": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.1.tgz", - "integrity": "sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==", - "optional": true, - "requires": { - "is-glob": "^4.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==", - "optional": 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==", - "optional": true - }, - "readdirp": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.5.0.tgz", - "integrity": "sha512-cMhu7c/8rdhkHXWsY+osBhfSy0JikwpHK/5+imo+LpeasTF8ouErHrlYkwT0++njiyuDvc7OFY5T3ukvZ8qmFQ==", - "optional": 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==", - "optional": true, - "requires": { - "is-number": "^7.0.0" - } - } - } - }, - "@babel/code-frame": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.10.4.tgz", - "integrity": "sha512-vG6SvB6oYEhvgisZNFRmRCUkLz11c7rp+tbNTynGqc6mS1d5ATd/sGyV6W0KZZnXRKMTzZDRgQT3Ou9jhpAfUg==", - "requires": { - "@babel/highlight": "^7.10.4" - } - }, - "@babel/compat-data": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.12.13.tgz", - "integrity": "sha512-U/hshG5R+SIoW7HVWIdmy1cB7s3ki+r3FpyEZiCgpi4tFgPnX/vynY80ZGSASOIrUM6O7VxOgCZgdt7h97bUGg==" - }, - "@babel/core": { - "version": "7.12.17", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.12.17.tgz", - "integrity": "sha512-V3CuX1aBywbJvV2yzJScRxeiiw0v2KZZYYE3giywxzFJL13RiyPjaaDwhDnxmgFTTS7FgvM2ijr4QmKNIu0AtQ==", - "requires": { - "@babel/code-frame": "^7.12.13", - "@babel/generator": "^7.12.17", - "@babel/helper-module-transforms": "^7.12.17", - "@babel/helpers": "^7.12.17", - "@babel/parser": "^7.12.17", - "@babel/template": "^7.12.13", - "@babel/traverse": "^7.12.17", - "@babel/types": "^7.12.17", - "convert-source-map": "^1.7.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.1", - "json5": "^2.1.2", - "lodash": "^4.17.19", - "semver": "^5.4.1", - "source-map": "^0.5.0" - }, - "dependencies": { - "@babel/code-frame": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.13.tgz", - "integrity": "sha512-HV1Cm0Q3ZrpCR93tkWOYiuYIgLxZXZFVG2VgK+MBWjUqZTundupbfx2aXarXuw5Ko5aMcjtJgbSs4vUGBS5v6g==", - "requires": { - "@babel/highlight": "^7.12.13" - } - }, - "@babel/generator": { - "version": "7.12.17", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.12.17.tgz", - "integrity": "sha512-DSA7ruZrY4WI8VxuS1jWSRezFnghEoYEFrZcw9BizQRmOZiUsiHl59+qEARGPqPikwA/GPTyRCi7isuCK/oyqg==", - "requires": { - "@babel/types": "^7.12.17", - "jsesc": "^2.5.1", - "source-map": "^0.5.0" - } - }, - "@babel/helper-function-name": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.12.13.tgz", - "integrity": "sha512-TZvmPn0UOqmvi5G4vvw0qZTpVptGkB1GL61R6lKvrSdIxGm5Pky7Q3fpKiIkQCAtRCBUwB0PaThlx9vebCDSwA==", - "requires": { - "@babel/helper-get-function-arity": "^7.12.13", - "@babel/template": "^7.12.13", - "@babel/types": "^7.12.13" - } - }, - "@babel/helper-get-function-arity": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.12.13.tgz", - "integrity": "sha512-DjEVzQNz5LICkzN0REdpD5prGoidvbdYk1BVgRUOINaWJP2t6avB27X1guXK1kXNrX0WMfsrm1A/ZBthYuIMQg==", - "requires": { - "@babel/types": "^7.12.13" - } - }, - "@babel/helper-module-transforms": { - "version": "7.12.17", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.12.17.tgz", - "integrity": "sha512-sFL+p6zOCQMm9vilo06M4VHuTxUAwa6IxgL56Tq1DVtA0ziAGTH1ThmJq7xwPqdQlgAbKX3fb0oZNbtRIyA5KQ==", - "requires": { - "@babel/helper-module-imports": "^7.12.13", - "@babel/helper-replace-supers": "^7.12.13", - "@babel/helper-simple-access": "^7.12.13", - "@babel/helper-split-export-declaration": "^7.12.13", - "@babel/helper-validator-identifier": "^7.12.11", - "@babel/template": "^7.12.13", - "@babel/traverse": "^7.12.17", - "@babel/types": "^7.12.17", - "lodash": "^4.17.19" - } - }, - "@babel/helper-split-export-declaration": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.12.13.tgz", - "integrity": "sha512-tCJDltF83htUtXx5NLcaDqRmknv652ZWCHyoTETf1CXYJdPC7nohZohjUgieXhv0hTJdRf2FjDueFehdNucpzg==", - "requires": { - "@babel/types": "^7.12.13" - } - }, - "@babel/helper-validator-identifier": { - "version": "7.12.11", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.12.11.tgz", - "integrity": "sha512-np/lG3uARFybkoHokJUmf1QfEvRVCPbmQeUQpKow5cQ3xWrV9i3rUHodKDJPQfTVX61qKi+UdYk8kik84n7XOw==" - }, - "@babel/highlight": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.12.13.tgz", - "integrity": "sha512-kocDQvIbgMKlWxXe9fof3TQ+gkIPOUSEYhJjqUjvKMez3krV7vbzYCDq39Oj11UAVK7JqPVGQPlgE85dPNlQww==", - "requires": { - "@babel/helper-validator-identifier": "^7.12.11", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" - } - }, - "@babel/parser": { - "version": "7.12.17", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.12.17.tgz", - "integrity": "sha512-r1yKkiUTYMQ8LiEI0UcQx5ETw5dpTLn9wijn9hk6KkTtOK95FndDN10M+8/s6k/Ymlbivw0Av9q4SlgF80PtHg==" - }, - "@babel/template": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.12.13.tgz", - "integrity": "sha512-/7xxiGA57xMo/P2GVvdEumr8ONhFOhfgq2ihK3h1e6THqzTAkHbkXgB0xI9yeTfIUoH3+oAeHhqm/I43OTbbjA==", - "requires": { - "@babel/code-frame": "^7.12.13", - "@babel/parser": "^7.12.13", - "@babel/types": "^7.12.13" - } - }, - "@babel/traverse": { - "version": "7.12.17", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.12.17.tgz", - "integrity": "sha512-LGkTqDqdiwC6Q7fWSwQoas/oyiEYw6Hqjve5KOSykXkmFJFqzvGMb9niaUEag3Rlve492Mkye3gLw9FTv94fdQ==", - "requires": { - "@babel/code-frame": "^7.12.13", - "@babel/generator": "^7.12.17", - "@babel/helper-function-name": "^7.12.13", - "@babel/helper-split-export-declaration": "^7.12.13", - "@babel/parser": "^7.12.17", - "@babel/types": "^7.12.17", - "debug": "^4.1.0", - "globals": "^11.1.0", - "lodash": "^4.17.19" - } - }, - "@babel/types": { - "version": "7.12.17", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.12.17.tgz", - "integrity": "sha512-tNMDjcv/4DIcHxErTgwB9q2ZcYyN0sUfgGKUK/mm1FJK7Wz+KstoEekxrl/tBiNDgLK1HGi+sppj1An/1DR4fQ==", - "requires": { - "@babel/helper-validator-identifier": "^7.12.11", - "lodash": "^4.17.19", - "to-fast-properties": "^2.0.0" - } - }, - "debug": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", - "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", - "requires": { - "ms": "2.1.2" - } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" - }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" - } - } - }, - "@babel/generator": { - "version": "7.11.6", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.11.6.tgz", - "integrity": "sha512-DWtQ1PV3r+cLbySoHrwn9RWEgKMBLLma4OBQloPRyDYvc5msJM9kvTLo1YnlJd1P/ZuKbdli3ijr5q3FvAF3uA==", - "dev": true, - "requires": { - "@babel/types": "^7.11.5", - "jsesc": "^2.5.1", - "source-map": "^0.5.0" - } - }, - "@babel/helper-annotate-as-pure": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.12.13.tgz", - "integrity": "sha512-7YXfX5wQ5aYM/BOlbSccHDbuXXFPxeoUmfWtz8le2yTkTZc+BxsiEnENFoi2SlmA8ewDkG2LgIMIVzzn2h8kfw==", - "requires": { - "@babel/types": "^7.12.13" - }, - "dependencies": { - "@babel/helper-validator-identifier": { - "version": "7.12.11", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.12.11.tgz", - "integrity": "sha512-np/lG3uARFybkoHokJUmf1QfEvRVCPbmQeUQpKow5cQ3xWrV9i3rUHodKDJPQfTVX61qKi+UdYk8kik84n7XOw==" - }, - "@babel/types": { - "version": "7.12.17", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.12.17.tgz", - "integrity": "sha512-tNMDjcv/4DIcHxErTgwB9q2ZcYyN0sUfgGKUK/mm1FJK7Wz+KstoEekxrl/tBiNDgLK1HGi+sppj1An/1DR4fQ==", - "requires": { - "@babel/helper-validator-identifier": "^7.12.11", - "lodash": "^4.17.19", - "to-fast-properties": "^2.0.0" - } - } - } - }, - "@babel/helper-builder-binary-assignment-operator-visitor": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.12.13.tgz", - "integrity": "sha512-CZOv9tGphhDRlVjVkAgm8Nhklm9RzSmWpX2my+t7Ua/KT616pEzXsQCjinzvkRvHWJ9itO4f296efroX23XCMA==", - "requires": { - "@babel/helper-explode-assignable-expression": "^7.12.13", - "@babel/types": "^7.12.13" - }, - "dependencies": { - "@babel/helper-validator-identifier": { - "version": "7.12.11", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.12.11.tgz", - "integrity": "sha512-np/lG3uARFybkoHokJUmf1QfEvRVCPbmQeUQpKow5cQ3xWrV9i3rUHodKDJPQfTVX61qKi+UdYk8kik84n7XOw==" - }, - "@babel/types": { - "version": "7.12.17", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.12.17.tgz", - "integrity": "sha512-tNMDjcv/4DIcHxErTgwB9q2ZcYyN0sUfgGKUK/mm1FJK7Wz+KstoEekxrl/tBiNDgLK1HGi+sppj1An/1DR4fQ==", - "requires": { - "@babel/helper-validator-identifier": "^7.12.11", - "lodash": "^4.17.19", - "to-fast-properties": "^2.0.0" - } - } - } - }, - "@babel/helper-compilation-targets": { - "version": "7.12.17", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.12.17.tgz", - "integrity": "sha512-5EkibqLVYOuZ89BSg2lv+GG8feywLuvMXNYgf0Im4MssE0mFWPztSpJbildNnUgw0bLI2EsIN4MpSHC2iUJkQA==", - "requires": { - "@babel/compat-data": "^7.12.13", - "@babel/helper-validator-option": "^7.12.17", - "browserslist": "^4.14.5", - "semver": "^5.5.0" - }, - "dependencies": { - "@babel/helper-validator-option": { - "version": "7.12.17", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.12.17.tgz", - "integrity": "sha512-TopkMDmLzq8ngChwRlyjR6raKD6gMSae4JdYDB8bByKreQgG0RBTuKe9LRxW3wFtUnjxOPRKBDwEH6Mg5KeDfw==" - }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" - } - } - }, - "@babel/helper-create-class-features-plugin": { - "version": "7.12.17", - "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.12.17.tgz", - "integrity": "sha512-I/nurmTxIxHV0M+rIpfQBF1oN342+yvl2kwZUrQuOClMamHF1w5tknfZubgNOLRoA73SzBFAdFcpb4M9HwOeWQ==", - "requires": { - "@babel/helper-function-name": "^7.12.13", - "@babel/helper-member-expression-to-functions": "^7.12.17", - "@babel/helper-optimise-call-expression": "^7.12.13", - "@babel/helper-replace-supers": "^7.12.13", - "@babel/helper-split-export-declaration": "^7.12.13" - }, - "dependencies": { - "@babel/code-frame": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.13.tgz", - "integrity": "sha512-HV1Cm0Q3ZrpCR93tkWOYiuYIgLxZXZFVG2VgK+MBWjUqZTundupbfx2aXarXuw5Ko5aMcjtJgbSs4vUGBS5v6g==", - "requires": { - "@babel/highlight": "^7.12.13" - } - }, - "@babel/helper-function-name": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.12.13.tgz", - "integrity": "sha512-TZvmPn0UOqmvi5G4vvw0qZTpVptGkB1GL61R6lKvrSdIxGm5Pky7Q3fpKiIkQCAtRCBUwB0PaThlx9vebCDSwA==", - "requires": { - "@babel/helper-get-function-arity": "^7.12.13", - "@babel/template": "^7.12.13", - "@babel/types": "^7.12.13" - } - }, - "@babel/helper-get-function-arity": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.12.13.tgz", - "integrity": "sha512-DjEVzQNz5LICkzN0REdpD5prGoidvbdYk1BVgRUOINaWJP2t6avB27X1guXK1kXNrX0WMfsrm1A/ZBthYuIMQg==", - "requires": { - "@babel/types": "^7.12.13" - } - }, - "@babel/helper-member-expression-to-functions": { - "version": "7.12.17", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.12.17.tgz", - "integrity": "sha512-Bzv4p3ODgS/qpBE0DiJ9qf5WxSmrQ8gVTe8ClMfwwsY2x/rhykxxy3bXzG7AGTnPB2ij37zGJ/Q/6FruxHxsxg==", - "requires": { - "@babel/types": "^7.12.17" - } - }, - "@babel/helper-optimise-call-expression": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.12.13.tgz", - "integrity": "sha512-BdWQhoVJkp6nVjB7nkFWcn43dkprYauqtk++Py2eaf/GRDFm5BxRqEIZCiHlZUGAVmtwKcsVL1dC68WmzeFmiA==", - "requires": { - "@babel/types": "^7.12.13" - } - }, - "@babel/helper-split-export-declaration": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.12.13.tgz", - "integrity": "sha512-tCJDltF83htUtXx5NLcaDqRmknv652ZWCHyoTETf1CXYJdPC7nohZohjUgieXhv0hTJdRf2FjDueFehdNucpzg==", - "requires": { - "@babel/types": "^7.12.13" - } - }, - "@babel/helper-validator-identifier": { - "version": "7.12.11", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.12.11.tgz", - "integrity": "sha512-np/lG3uARFybkoHokJUmf1QfEvRVCPbmQeUQpKow5cQ3xWrV9i3rUHodKDJPQfTVX61qKi+UdYk8kik84n7XOw==" - }, - "@babel/highlight": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.12.13.tgz", - "integrity": "sha512-kocDQvIbgMKlWxXe9fof3TQ+gkIPOUSEYhJjqUjvKMez3krV7vbzYCDq39Oj11UAVK7JqPVGQPlgE85dPNlQww==", - "requires": { - "@babel/helper-validator-identifier": "^7.12.11", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" - } - }, - "@babel/parser": { - "version": "7.12.17", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.12.17.tgz", - "integrity": "sha512-r1yKkiUTYMQ8LiEI0UcQx5ETw5dpTLn9wijn9hk6KkTtOK95FndDN10M+8/s6k/Ymlbivw0Av9q4SlgF80PtHg==" - }, - "@babel/template": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.12.13.tgz", - "integrity": "sha512-/7xxiGA57xMo/P2GVvdEumr8ONhFOhfgq2ihK3h1e6THqzTAkHbkXgB0xI9yeTfIUoH3+oAeHhqm/I43OTbbjA==", - "requires": { - "@babel/code-frame": "^7.12.13", - "@babel/parser": "^7.12.13", - "@babel/types": "^7.12.13" - } - }, - "@babel/types": { - "version": "7.12.17", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.12.17.tgz", - "integrity": "sha512-tNMDjcv/4DIcHxErTgwB9q2ZcYyN0sUfgGKUK/mm1FJK7Wz+KstoEekxrl/tBiNDgLK1HGi+sppj1An/1DR4fQ==", - "requires": { - "@babel/helper-validator-identifier": "^7.12.11", - "lodash": "^4.17.19", - "to-fast-properties": "^2.0.0" - } - } - } - }, - "@babel/helper-create-regexp-features-plugin": { - "version": "7.12.17", - "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.12.17.tgz", - "integrity": "sha512-p2VGmBu9oefLZ2nQpgnEnG0ZlRPvL8gAGvPUMQwUdaE8k49rOMuZpOwdQoy5qJf6K8jL3bcAMhVUlHAjIgJHUg==", - "requires": { - "@babel/helper-annotate-as-pure": "^7.12.13", - "regexpu-core": "^4.7.1" - } - }, - "@babel/helper-explode-assignable-expression": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.12.13.tgz", - "integrity": "sha512-5loeRNvMo9mx1dA/d6yNi+YiKziJZFylZnCo1nmFF4qPU4yJ14abhWESuSMQSlQxWdxdOFzxXjk/PpfudTtYyw==", - "requires": { - "@babel/types": "^7.12.13" - }, - "dependencies": { - "@babel/helper-validator-identifier": { - "version": "7.12.11", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.12.11.tgz", - "integrity": "sha512-np/lG3uARFybkoHokJUmf1QfEvRVCPbmQeUQpKow5cQ3xWrV9i3rUHodKDJPQfTVX61qKi+UdYk8kik84n7XOw==" - }, - "@babel/types": { - "version": "7.12.17", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.12.17.tgz", - "integrity": "sha512-tNMDjcv/4DIcHxErTgwB9q2ZcYyN0sUfgGKUK/mm1FJK7Wz+KstoEekxrl/tBiNDgLK1HGi+sppj1An/1DR4fQ==", - "requires": { - "@babel/helper-validator-identifier": "^7.12.11", - "lodash": "^4.17.19", - "to-fast-properties": "^2.0.0" - } - } - } - }, - "@babel/helper-function-name": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.10.4.tgz", - "integrity": "sha512-YdaSyz1n8gY44EmN7x44zBn9zQ1Ry2Y+3GTA+3vH6Mizke1Vw0aWDM66FOYEPw8//qKkmqOckrGgTYa+6sceqQ==", - "requires": { - "@babel/helper-get-function-arity": "^7.10.4", - "@babel/template": "^7.10.4", - "@babel/types": "^7.10.4" - } - }, - "@babel/helper-get-function-arity": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.10.4.tgz", - "integrity": "sha512-EkN3YDB+SRDgiIUnNgcmiD361ti+AVbL3f3Henf6dqqUyr5dMsorno0lJWJuLhDhkI5sYEpgj6y9kB8AOU1I2A==", - "requires": { - "@babel/types": "^7.10.4" - } - }, - "@babel/helper-hoist-variables": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.12.13.tgz", - "integrity": "sha512-KSC5XSj5HreRhYQtZ3cnSnQwDzgnbdUDEFsxkN0m6Q3WrCRt72xrnZ8+h+pX7YxM7hr87zIO3a/v5p/H3TrnVw==", - "requires": { - "@babel/types": "^7.12.13" - }, - "dependencies": { - "@babel/helper-validator-identifier": { - "version": "7.12.11", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.12.11.tgz", - "integrity": "sha512-np/lG3uARFybkoHokJUmf1QfEvRVCPbmQeUQpKow5cQ3xWrV9i3rUHodKDJPQfTVX61qKi+UdYk8kik84n7XOw==" - }, - "@babel/types": { - "version": "7.12.17", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.12.17.tgz", - "integrity": "sha512-tNMDjcv/4DIcHxErTgwB9q2ZcYyN0sUfgGKUK/mm1FJK7Wz+KstoEekxrl/tBiNDgLK1HGi+sppj1An/1DR4fQ==", - "requires": { - "@babel/helper-validator-identifier": "^7.12.11", - "lodash": "^4.17.19", - "to-fast-properties": "^2.0.0" - } - } - } - }, - "@babel/helper-member-expression-to-functions": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.12.13.tgz", - "integrity": "sha512-B+7nN0gIL8FZ8SvMcF+EPyB21KnCcZHQZFczCxbiNGV/O0rsrSBlWGLzmtBJ3GMjSVMIm4lpFhR+VdVBuIsUcQ==", - "requires": { - "@babel/types": "^7.12.13" - }, - "dependencies": { - "@babel/helper-validator-identifier": { - "version": "7.12.11", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.12.11.tgz", - "integrity": "sha512-np/lG3uARFybkoHokJUmf1QfEvRVCPbmQeUQpKow5cQ3xWrV9i3rUHodKDJPQfTVX61qKi+UdYk8kik84n7XOw==" - }, - "@babel/types": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.12.13.tgz", - "integrity": "sha512-oKrdZTld2im1z8bDwTOQvUbxKwE+854zc16qWZQlcTqMN00pWxHQ4ZeOq0yDMnisOpRykH2/5Qqcrk/OlbAjiQ==", - "requires": { - "@babel/helper-validator-identifier": "^7.12.11", - "lodash": "^4.17.19", - "to-fast-properties": "^2.0.0" - } - } - } - }, - "@babel/helper-module-imports": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.12.13.tgz", - "integrity": "sha512-NGmfvRp9Rqxy0uHSSVP+SRIW1q31a7Ji10cLBcqSDUngGentY4FRiHOFZFE1CLU5eiL0oE8reH7Tg1y99TDM/g==", - "requires": { - "@babel/types": "^7.12.13" - }, - "dependencies": { - "@babel/helper-validator-identifier": { - "version": "7.12.11", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.12.11.tgz", - "integrity": "sha512-np/lG3uARFybkoHokJUmf1QfEvRVCPbmQeUQpKow5cQ3xWrV9i3rUHodKDJPQfTVX61qKi+UdYk8kik84n7XOw==" - }, - "@babel/types": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.12.13.tgz", - "integrity": "sha512-oKrdZTld2im1z8bDwTOQvUbxKwE+854zc16qWZQlcTqMN00pWxHQ4ZeOq0yDMnisOpRykH2/5Qqcrk/OlbAjiQ==", - "requires": { - "@babel/helper-validator-identifier": "^7.12.11", - "lodash": "^4.17.19", - "to-fast-properties": "^2.0.0" - } - } - } - }, - "@babel/helper-module-transforms": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.12.13.tgz", - "integrity": "sha512-acKF7EjqOR67ASIlDTupwkKM1eUisNAjaSduo5Cz+793ikfnpe7p4Q7B7EWU2PCoSTPWsQkR7hRUWEIZPiVLGA==", - "requires": { - "@babel/helper-module-imports": "^7.12.13", - "@babel/helper-replace-supers": "^7.12.13", - "@babel/helper-simple-access": "^7.12.13", - "@babel/helper-split-export-declaration": "^7.12.13", - "@babel/helper-validator-identifier": "^7.12.11", - "@babel/template": "^7.12.13", - "@babel/traverse": "^7.12.13", - "@babel/types": "^7.12.13", - "lodash": "^4.17.19" - }, - "dependencies": { - "@babel/code-frame": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.13.tgz", - "integrity": "sha512-HV1Cm0Q3ZrpCR93tkWOYiuYIgLxZXZFVG2VgK+MBWjUqZTundupbfx2aXarXuw5Ko5aMcjtJgbSs4vUGBS5v6g==", - "requires": { - "@babel/highlight": "^7.12.13" - } - }, - "@babel/generator": { - "version": "7.12.15", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.12.15.tgz", - "integrity": "sha512-6F2xHxBiFXWNSGb7vyCUTBF8RCLY66rS0zEPcP8t/nQyXjha5EuK4z7H5o7fWG8B4M7y6mqVWq1J+1PuwRhecQ==", - "requires": { - "@babel/types": "^7.12.13", - "jsesc": "^2.5.1", - "source-map": "^0.5.0" - } - }, - "@babel/helper-function-name": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.12.13.tgz", - "integrity": "sha512-TZvmPn0UOqmvi5G4vvw0qZTpVptGkB1GL61R6lKvrSdIxGm5Pky7Q3fpKiIkQCAtRCBUwB0PaThlx9vebCDSwA==", - "requires": { - "@babel/helper-get-function-arity": "^7.12.13", - "@babel/template": "^7.12.13", - "@babel/types": "^7.12.13" - } - }, - "@babel/helper-get-function-arity": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.12.13.tgz", - "integrity": "sha512-DjEVzQNz5LICkzN0REdpD5prGoidvbdYk1BVgRUOINaWJP2t6avB27X1guXK1kXNrX0WMfsrm1A/ZBthYuIMQg==", - "requires": { - "@babel/types": "^7.12.13" - } - }, - "@babel/helper-split-export-declaration": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.12.13.tgz", - "integrity": "sha512-tCJDltF83htUtXx5NLcaDqRmknv652ZWCHyoTETf1CXYJdPC7nohZohjUgieXhv0hTJdRf2FjDueFehdNucpzg==", - "requires": { - "@babel/types": "^7.12.13" - } - }, - "@babel/helper-validator-identifier": { - "version": "7.12.11", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.12.11.tgz", - "integrity": "sha512-np/lG3uARFybkoHokJUmf1QfEvRVCPbmQeUQpKow5cQ3xWrV9i3rUHodKDJPQfTVX61qKi+UdYk8kik84n7XOw==" - }, - "@babel/highlight": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.12.13.tgz", - "integrity": "sha512-kocDQvIbgMKlWxXe9fof3TQ+gkIPOUSEYhJjqUjvKMez3krV7vbzYCDq39Oj11UAVK7JqPVGQPlgE85dPNlQww==", - "requires": { - "@babel/helper-validator-identifier": "^7.12.11", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" - } - }, - "@babel/parser": { - "version": "7.12.15", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.12.15.tgz", - "integrity": "sha512-AQBOU2Z9kWwSZMd6lNjCX0GUgFonL1wAM1db8L8PMk9UDaGsRCArBkU4Sc+UCM3AE4hjbXx+h58Lb3QT4oRmrA==" - }, - "@babel/template": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.12.13.tgz", - "integrity": "sha512-/7xxiGA57xMo/P2GVvdEumr8ONhFOhfgq2ihK3h1e6THqzTAkHbkXgB0xI9yeTfIUoH3+oAeHhqm/I43OTbbjA==", - "requires": { - "@babel/code-frame": "^7.12.13", - "@babel/parser": "^7.12.13", - "@babel/types": "^7.12.13" - } - }, - "@babel/traverse": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.12.13.tgz", - "integrity": "sha512-3Zb4w7eE/OslI0fTp8c7b286/cQps3+vdLW3UcwC8VSJC6GbKn55aeVVu2QJNuCDoeKyptLOFrPq8WqZZBodyA==", - "requires": { - "@babel/code-frame": "^7.12.13", - "@babel/generator": "^7.12.13", - "@babel/helper-function-name": "^7.12.13", - "@babel/helper-split-export-declaration": "^7.12.13", - "@babel/parser": "^7.12.13", - "@babel/types": "^7.12.13", - "debug": "^4.1.0", - "globals": "^11.1.0", - "lodash": "^4.17.19" - } - }, - "@babel/types": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.12.13.tgz", - "integrity": "sha512-oKrdZTld2im1z8bDwTOQvUbxKwE+854zc16qWZQlcTqMN00pWxHQ4ZeOq0yDMnisOpRykH2/5Qqcrk/OlbAjiQ==", - "requires": { - "@babel/helper-validator-identifier": "^7.12.11", - "lodash": "^4.17.19", - "to-fast-properties": "^2.0.0" - } - }, - "debug": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", - "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", - "requires": { - "ms": "2.1.2" - } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" - } - } - }, - "@babel/helper-optimise-call-expression": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.10.4.tgz", - "integrity": "sha512-n3UGKY4VXwXThEiKrgRAoVPBMqeoPgHVqiHZOanAJCG9nQUL2pLRQirUzl0ioKclHGpGqRgIOkgcIJaIWLpygg==", - "requires": { - "@babel/types": "^7.10.4" - } - }, - "@babel/helper-plugin-utils": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz", - "integrity": "sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==" - }, - "@babel/helper-remap-async-to-generator": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.12.13.tgz", - "integrity": "sha512-Qa6PU9vNcj1NZacZZI1Mvwt+gXDH6CTfgAkSjeRMLE8HxtDK76+YDId6NQR+z7Rgd5arhD2cIbS74r0SxD6PDA==", - "requires": { - "@babel/helper-annotate-as-pure": "^7.12.13", - "@babel/helper-wrap-function": "^7.12.13", - "@babel/types": "^7.12.13" - }, - "dependencies": { - "@babel/helper-validator-identifier": { - "version": "7.12.11", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.12.11.tgz", - "integrity": "sha512-np/lG3uARFybkoHokJUmf1QfEvRVCPbmQeUQpKow5cQ3xWrV9i3rUHodKDJPQfTVX61qKi+UdYk8kik84n7XOw==" - }, - "@babel/types": { - "version": "7.12.17", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.12.17.tgz", - "integrity": "sha512-tNMDjcv/4DIcHxErTgwB9q2ZcYyN0sUfgGKUK/mm1FJK7Wz+KstoEekxrl/tBiNDgLK1HGi+sppj1An/1DR4fQ==", - "requires": { - "@babel/helper-validator-identifier": "^7.12.11", - "lodash": "^4.17.19", - "to-fast-properties": "^2.0.0" - } - } - } - }, - "@babel/helper-replace-supers": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.12.13.tgz", - "integrity": "sha512-pctAOIAMVStI2TMLhozPKbf5yTEXc0OJa0eENheb4w09SrgOWEs+P4nTOZYJQCqs8JlErGLDPDJTiGIp3ygbLg==", - "requires": { - "@babel/helper-member-expression-to-functions": "^7.12.13", - "@babel/helper-optimise-call-expression": "^7.12.13", - "@babel/traverse": "^7.12.13", - "@babel/types": "^7.12.13" - }, - "dependencies": { - "@babel/code-frame": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.13.tgz", - "integrity": "sha512-HV1Cm0Q3ZrpCR93tkWOYiuYIgLxZXZFVG2VgK+MBWjUqZTundupbfx2aXarXuw5Ko5aMcjtJgbSs4vUGBS5v6g==", - "requires": { - "@babel/highlight": "^7.12.13" - } - }, - "@babel/generator": { - "version": "7.12.15", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.12.15.tgz", - "integrity": "sha512-6F2xHxBiFXWNSGb7vyCUTBF8RCLY66rS0zEPcP8t/nQyXjha5EuK4z7H5o7fWG8B4M7y6mqVWq1J+1PuwRhecQ==", - "requires": { - "@babel/types": "^7.12.13", - "jsesc": "^2.5.1", - "source-map": "^0.5.0" - } - }, - "@babel/helper-function-name": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.12.13.tgz", - "integrity": "sha512-TZvmPn0UOqmvi5G4vvw0qZTpVptGkB1GL61R6lKvrSdIxGm5Pky7Q3fpKiIkQCAtRCBUwB0PaThlx9vebCDSwA==", - "requires": { - "@babel/helper-get-function-arity": "^7.12.13", - "@babel/template": "^7.12.13", - "@babel/types": "^7.12.13" - } - }, - "@babel/helper-get-function-arity": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.12.13.tgz", - "integrity": "sha512-DjEVzQNz5LICkzN0REdpD5prGoidvbdYk1BVgRUOINaWJP2t6avB27X1guXK1kXNrX0WMfsrm1A/ZBthYuIMQg==", - "requires": { - "@babel/types": "^7.12.13" - } - }, - "@babel/helper-optimise-call-expression": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.12.13.tgz", - "integrity": "sha512-BdWQhoVJkp6nVjB7nkFWcn43dkprYauqtk++Py2eaf/GRDFm5BxRqEIZCiHlZUGAVmtwKcsVL1dC68WmzeFmiA==", - "requires": { - "@babel/types": "^7.12.13" - } - }, - "@babel/helper-split-export-declaration": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.12.13.tgz", - "integrity": "sha512-tCJDltF83htUtXx5NLcaDqRmknv652ZWCHyoTETf1CXYJdPC7nohZohjUgieXhv0hTJdRf2FjDueFehdNucpzg==", - "requires": { - "@babel/types": "^7.12.13" - } - }, - "@babel/helper-validator-identifier": { - "version": "7.12.11", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.12.11.tgz", - "integrity": "sha512-np/lG3uARFybkoHokJUmf1QfEvRVCPbmQeUQpKow5cQ3xWrV9i3rUHodKDJPQfTVX61qKi+UdYk8kik84n7XOw==" - }, - "@babel/highlight": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.12.13.tgz", - "integrity": "sha512-kocDQvIbgMKlWxXe9fof3TQ+gkIPOUSEYhJjqUjvKMez3krV7vbzYCDq39Oj11UAVK7JqPVGQPlgE85dPNlQww==", - "requires": { - "@babel/helper-validator-identifier": "^7.12.11", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" - } - }, - "@babel/parser": { - "version": "7.12.15", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.12.15.tgz", - "integrity": "sha512-AQBOU2Z9kWwSZMd6lNjCX0GUgFonL1wAM1db8L8PMk9UDaGsRCArBkU4Sc+UCM3AE4hjbXx+h58Lb3QT4oRmrA==" - }, - "@babel/template": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.12.13.tgz", - "integrity": "sha512-/7xxiGA57xMo/P2GVvdEumr8ONhFOhfgq2ihK3h1e6THqzTAkHbkXgB0xI9yeTfIUoH3+oAeHhqm/I43OTbbjA==", - "requires": { - "@babel/code-frame": "^7.12.13", - "@babel/parser": "^7.12.13", - "@babel/types": "^7.12.13" - } - }, - "@babel/traverse": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.12.13.tgz", - "integrity": "sha512-3Zb4w7eE/OslI0fTp8c7b286/cQps3+vdLW3UcwC8VSJC6GbKn55aeVVu2QJNuCDoeKyptLOFrPq8WqZZBodyA==", - "requires": { - "@babel/code-frame": "^7.12.13", - "@babel/generator": "^7.12.13", - "@babel/helper-function-name": "^7.12.13", - "@babel/helper-split-export-declaration": "^7.12.13", - "@babel/parser": "^7.12.13", - "@babel/types": "^7.12.13", - "debug": "^4.1.0", - "globals": "^11.1.0", - "lodash": "^4.17.19" - } - }, - "@babel/types": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.12.13.tgz", - "integrity": "sha512-oKrdZTld2im1z8bDwTOQvUbxKwE+854zc16qWZQlcTqMN00pWxHQ4ZeOq0yDMnisOpRykH2/5Qqcrk/OlbAjiQ==", - "requires": { - "@babel/helper-validator-identifier": "^7.12.11", - "lodash": "^4.17.19", - "to-fast-properties": "^2.0.0" - } - }, - "debug": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", - "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", - "requires": { - "ms": "2.1.2" - } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" - } - } - }, - "@babel/helper-simple-access": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.12.13.tgz", - "integrity": "sha512-0ski5dyYIHEfwpWGx5GPWhH35j342JaflmCeQmsPWcrOQDtCN6C1zKAVRFVbK53lPW2c9TsuLLSUDf0tIGJ5hA==", - "requires": { - "@babel/types": "^7.12.13" - }, - "dependencies": { - "@babel/helper-validator-identifier": { - "version": "7.12.11", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.12.11.tgz", - "integrity": "sha512-np/lG3uARFybkoHokJUmf1QfEvRVCPbmQeUQpKow5cQ3xWrV9i3rUHodKDJPQfTVX61qKi+UdYk8kik84n7XOw==" - }, - "@babel/types": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.12.13.tgz", - "integrity": "sha512-oKrdZTld2im1z8bDwTOQvUbxKwE+854zc16qWZQlcTqMN00pWxHQ4ZeOq0yDMnisOpRykH2/5Qqcrk/OlbAjiQ==", - "requires": { - "@babel/helper-validator-identifier": "^7.12.11", - "lodash": "^4.17.19", - "to-fast-properties": "^2.0.0" - } - } - } - }, - "@babel/helper-skip-transparent-expression-wrappers": { - "version": "7.12.1", - "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.12.1.tgz", - "integrity": "sha512-Mf5AUuhG1/OCChOJ/HcADmvcHM42WJockombn8ATJG3OnyiSxBK/Mm5x78BQWvmtXZKHgbjdGL2kin/HOLlZGA==", - "requires": { - "@babel/types": "^7.12.1" - }, - "dependencies": { - "@babel/helper-validator-identifier": { - "version": "7.12.11", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.12.11.tgz", - "integrity": "sha512-np/lG3uARFybkoHokJUmf1QfEvRVCPbmQeUQpKow5cQ3xWrV9i3rUHodKDJPQfTVX61qKi+UdYk8kik84n7XOw==" - }, - "@babel/types": { - "version": "7.12.17", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.12.17.tgz", - "integrity": "sha512-tNMDjcv/4DIcHxErTgwB9q2ZcYyN0sUfgGKUK/mm1FJK7Wz+KstoEekxrl/tBiNDgLK1HGi+sppj1An/1DR4fQ==", - "requires": { - "@babel/helper-validator-identifier": "^7.12.11", - "lodash": "^4.17.19", - "to-fast-properties": "^2.0.0" - } - } - } - }, - "@babel/helper-split-export-declaration": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.11.0.tgz", - "integrity": "sha512-74Vejvp6mHkGE+m+k5vHY93FX2cAtrw1zXrZXRlG4l410Nm9PxfEiVTn1PjDPV5SnmieiueY4AFg2xqhNFuuZg==", - "requires": { - "@babel/types": "^7.11.0" - } - }, - "@babel/helper-validator-identifier": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.10.4.tgz", - "integrity": "sha512-3U9y+43hz7ZM+rzG24Qe2mufW5KhvFg/NhnNph+i9mgCtdTCtMJuI1TMkrIUiK7Ix4PYlRF9I5dhqaLYA/ADXw==" - }, - "@babel/helper-validator-option": { - "version": "7.12.11", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.12.11.tgz", - "integrity": "sha512-TBFCyj939mFSdeX7U7DDj32WtzYY7fDcalgq8v3fBZMNOJQNn7nOYzMaUCiPxPYfCup69mtIpqlKgMZLvQ8Xhw==" - }, - "@babel/helper-wrap-function": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.12.13.tgz", - "integrity": "sha512-t0aZFEmBJ1LojdtJnhOaQEVejnzYhyjWHSsNSNo8vOYRbAJNh6r6GQF7pd36SqG7OKGbn+AewVQ/0IfYfIuGdw==", - "requires": { - "@babel/helper-function-name": "^7.12.13", - "@babel/template": "^7.12.13", - "@babel/traverse": "^7.12.13", - "@babel/types": "^7.12.13" - }, - "dependencies": { - "@babel/code-frame": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.13.tgz", - "integrity": "sha512-HV1Cm0Q3ZrpCR93tkWOYiuYIgLxZXZFVG2VgK+MBWjUqZTundupbfx2aXarXuw5Ko5aMcjtJgbSs4vUGBS5v6g==", - "requires": { - "@babel/highlight": "^7.12.13" - } - }, - "@babel/generator": { - "version": "7.12.17", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.12.17.tgz", - "integrity": "sha512-DSA7ruZrY4WI8VxuS1jWSRezFnghEoYEFrZcw9BizQRmOZiUsiHl59+qEARGPqPikwA/GPTyRCi7isuCK/oyqg==", - "requires": { - "@babel/types": "^7.12.17", - "jsesc": "^2.5.1", - "source-map": "^0.5.0" - } - }, - "@babel/helper-function-name": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.12.13.tgz", - "integrity": "sha512-TZvmPn0UOqmvi5G4vvw0qZTpVptGkB1GL61R6lKvrSdIxGm5Pky7Q3fpKiIkQCAtRCBUwB0PaThlx9vebCDSwA==", - "requires": { - "@babel/helper-get-function-arity": "^7.12.13", - "@babel/template": "^7.12.13", - "@babel/types": "^7.12.13" - } - }, - "@babel/helper-get-function-arity": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.12.13.tgz", - "integrity": "sha512-DjEVzQNz5LICkzN0REdpD5prGoidvbdYk1BVgRUOINaWJP2t6avB27X1guXK1kXNrX0WMfsrm1A/ZBthYuIMQg==", - "requires": { - "@babel/types": "^7.12.13" - } - }, - "@babel/helper-split-export-declaration": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.12.13.tgz", - "integrity": "sha512-tCJDltF83htUtXx5NLcaDqRmknv652ZWCHyoTETf1CXYJdPC7nohZohjUgieXhv0hTJdRf2FjDueFehdNucpzg==", - "requires": { - "@babel/types": "^7.12.13" - } - }, - "@babel/helper-validator-identifier": { - "version": "7.12.11", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.12.11.tgz", - "integrity": "sha512-np/lG3uARFybkoHokJUmf1QfEvRVCPbmQeUQpKow5cQ3xWrV9i3rUHodKDJPQfTVX61qKi+UdYk8kik84n7XOw==" - }, - "@babel/highlight": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.12.13.tgz", - "integrity": "sha512-kocDQvIbgMKlWxXe9fof3TQ+gkIPOUSEYhJjqUjvKMez3krV7vbzYCDq39Oj11UAVK7JqPVGQPlgE85dPNlQww==", - "requires": { - "@babel/helper-validator-identifier": "^7.12.11", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" - } - }, - "@babel/parser": { - "version": "7.12.17", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.12.17.tgz", - "integrity": "sha512-r1yKkiUTYMQ8LiEI0UcQx5ETw5dpTLn9wijn9hk6KkTtOK95FndDN10M+8/s6k/Ymlbivw0Av9q4SlgF80PtHg==" - }, - "@babel/template": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.12.13.tgz", - "integrity": "sha512-/7xxiGA57xMo/P2GVvdEumr8ONhFOhfgq2ihK3h1e6THqzTAkHbkXgB0xI9yeTfIUoH3+oAeHhqm/I43OTbbjA==", - "requires": { - "@babel/code-frame": "^7.12.13", - "@babel/parser": "^7.12.13", - "@babel/types": "^7.12.13" - } - }, - "@babel/traverse": { - "version": "7.12.17", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.12.17.tgz", - "integrity": "sha512-LGkTqDqdiwC6Q7fWSwQoas/oyiEYw6Hqjve5KOSykXkmFJFqzvGMb9niaUEag3Rlve492Mkye3gLw9FTv94fdQ==", - "requires": { - "@babel/code-frame": "^7.12.13", - "@babel/generator": "^7.12.17", - "@babel/helper-function-name": "^7.12.13", - "@babel/helper-split-export-declaration": "^7.12.13", - "@babel/parser": "^7.12.17", - "@babel/types": "^7.12.17", - "debug": "^4.1.0", - "globals": "^11.1.0", - "lodash": "^4.17.19" - } - }, - "@babel/types": { - "version": "7.12.17", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.12.17.tgz", - "integrity": "sha512-tNMDjcv/4DIcHxErTgwB9q2ZcYyN0sUfgGKUK/mm1FJK7Wz+KstoEekxrl/tBiNDgLK1HGi+sppj1An/1DR4fQ==", - "requires": { - "@babel/helper-validator-identifier": "^7.12.11", - "lodash": "^4.17.19", - "to-fast-properties": "^2.0.0" - } - }, - "debug": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", - "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", - "requires": { - "ms": "2.1.2" - } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" - } - } - }, - "@babel/helpers": { - "version": "7.12.17", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.12.17.tgz", - "integrity": "sha512-tEpjqSBGt/SFEsFikKds1sLNChKKGGR17flIgQKXH4fG6m9gTgl3gnOC1giHNyaBCSKuTfxaSzHi7UnvqiVKxg==", - "requires": { - "@babel/template": "^7.12.13", - "@babel/traverse": "^7.12.17", - "@babel/types": "^7.12.17" - }, - "dependencies": { - "@babel/code-frame": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.13.tgz", - "integrity": "sha512-HV1Cm0Q3ZrpCR93tkWOYiuYIgLxZXZFVG2VgK+MBWjUqZTundupbfx2aXarXuw5Ko5aMcjtJgbSs4vUGBS5v6g==", - "requires": { - "@babel/highlight": "^7.12.13" - } - }, - "@babel/generator": { - "version": "7.12.17", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.12.17.tgz", - "integrity": "sha512-DSA7ruZrY4WI8VxuS1jWSRezFnghEoYEFrZcw9BizQRmOZiUsiHl59+qEARGPqPikwA/GPTyRCi7isuCK/oyqg==", - "requires": { - "@babel/types": "^7.12.17", - "jsesc": "^2.5.1", - "source-map": "^0.5.0" - } - }, - "@babel/helper-function-name": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.12.13.tgz", - "integrity": "sha512-TZvmPn0UOqmvi5G4vvw0qZTpVptGkB1GL61R6lKvrSdIxGm5Pky7Q3fpKiIkQCAtRCBUwB0PaThlx9vebCDSwA==", - "requires": { - "@babel/helper-get-function-arity": "^7.12.13", - "@babel/template": "^7.12.13", - "@babel/types": "^7.12.13" - } - }, - "@babel/helper-get-function-arity": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.12.13.tgz", - "integrity": "sha512-DjEVzQNz5LICkzN0REdpD5prGoidvbdYk1BVgRUOINaWJP2t6avB27X1guXK1kXNrX0WMfsrm1A/ZBthYuIMQg==", - "requires": { - "@babel/types": "^7.12.13" - } - }, - "@babel/helper-split-export-declaration": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.12.13.tgz", - "integrity": "sha512-tCJDltF83htUtXx5NLcaDqRmknv652ZWCHyoTETf1CXYJdPC7nohZohjUgieXhv0hTJdRf2FjDueFehdNucpzg==", - "requires": { - "@babel/types": "^7.12.13" - } - }, - "@babel/helper-validator-identifier": { - "version": "7.12.11", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.12.11.tgz", - "integrity": "sha512-np/lG3uARFybkoHokJUmf1QfEvRVCPbmQeUQpKow5cQ3xWrV9i3rUHodKDJPQfTVX61qKi+UdYk8kik84n7XOw==" - }, - "@babel/highlight": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.12.13.tgz", - "integrity": "sha512-kocDQvIbgMKlWxXe9fof3TQ+gkIPOUSEYhJjqUjvKMez3krV7vbzYCDq39Oj11UAVK7JqPVGQPlgE85dPNlQww==", - "requires": { - "@babel/helper-validator-identifier": "^7.12.11", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" - } - }, - "@babel/parser": { - "version": "7.12.17", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.12.17.tgz", - "integrity": "sha512-r1yKkiUTYMQ8LiEI0UcQx5ETw5dpTLn9wijn9hk6KkTtOK95FndDN10M+8/s6k/Ymlbivw0Av9q4SlgF80PtHg==" - }, - "@babel/template": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.12.13.tgz", - "integrity": "sha512-/7xxiGA57xMo/P2GVvdEumr8ONhFOhfgq2ihK3h1e6THqzTAkHbkXgB0xI9yeTfIUoH3+oAeHhqm/I43OTbbjA==", - "requires": { - "@babel/code-frame": "^7.12.13", - "@babel/parser": "^7.12.13", - "@babel/types": "^7.12.13" - } - }, - "@babel/traverse": { - "version": "7.12.17", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.12.17.tgz", - "integrity": "sha512-LGkTqDqdiwC6Q7fWSwQoas/oyiEYw6Hqjve5KOSykXkmFJFqzvGMb9niaUEag3Rlve492Mkye3gLw9FTv94fdQ==", - "requires": { - "@babel/code-frame": "^7.12.13", - "@babel/generator": "^7.12.17", - "@babel/helper-function-name": "^7.12.13", - "@babel/helper-split-export-declaration": "^7.12.13", - "@babel/parser": "^7.12.17", - "@babel/types": "^7.12.17", - "debug": "^4.1.0", - "globals": "^11.1.0", - "lodash": "^4.17.19" - } - }, - "@babel/types": { - "version": "7.12.17", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.12.17.tgz", - "integrity": "sha512-tNMDjcv/4DIcHxErTgwB9q2ZcYyN0sUfgGKUK/mm1FJK7Wz+KstoEekxrl/tBiNDgLK1HGi+sppj1An/1DR4fQ==", - "requires": { - "@babel/helper-validator-identifier": "^7.12.11", - "lodash": "^4.17.19", - "to-fast-properties": "^2.0.0" - } - }, - "debug": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", - "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", - "requires": { - "ms": "2.1.2" - } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" - } - } - }, - "@babel/highlight": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.10.4.tgz", - "integrity": "sha512-i6rgnR/YgPEQzZZnbTHHuZdlE8qyoBNalD6F+q4vAFlcMEcqmkoG+mPqJYJCo63qPf74+Y1UZsl3l6f7/RIkmA==", - "requires": { - "@babel/helper-validator-identifier": "^7.10.4", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" - } - }, - "@babel/parser": { - "version": "7.11.5", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.11.5.tgz", - "integrity": "sha512-X9rD8qqm695vgmeaQ4fvz/o3+Wk4ZzQvSHkDBgpYKxpD4qTAUm88ZKtHkVqIOsYFFbIQ6wQYhC6q7pjqVK0E0Q==" - }, - "@babel/plugin-proposal-async-generator-functions": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.12.13.tgz", - "integrity": "sha512-1KH46Hx4WqP77f978+5Ye/VUbuwQld2hph70yaw2hXS2v7ER2f3nlpNMu909HO2rbvP0NKLlMVDPh9KXklVMhA==", - "requires": { - "@babel/helper-plugin-utils": "^7.12.13", - "@babel/helper-remap-async-to-generator": "^7.12.13", - "@babel/plugin-syntax-async-generators": "^7.8.0" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.12.13.tgz", - "integrity": "sha512-C+10MXCXJLiR6IeG9+Wiejt9jmtFpxUc3MQqCmPY8hfCjyUGl9kT+B2okzEZrtykiwrc4dbCPdDoz0A/HQbDaA==" - } - } - }, - "@babel/plugin-proposal-class-properties": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.12.13.tgz", - "integrity": "sha512-8SCJ0Ddrpwv4T7Gwb33EmW1V9PY5lggTO+A8WjyIwxrSHDUyBw4MtF96ifn1n8H806YlxbVCoKXbbmzD6RD+cA==", - "requires": { - "@babel/helper-create-class-features-plugin": "^7.12.13", - "@babel/helper-plugin-utils": "^7.12.13" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.12.13.tgz", - "integrity": "sha512-C+10MXCXJLiR6IeG9+Wiejt9jmtFpxUc3MQqCmPY8hfCjyUGl9kT+B2okzEZrtykiwrc4dbCPdDoz0A/HQbDaA==" - } - } - }, - "@babel/plugin-proposal-dynamic-import": { - "version": "7.12.17", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.12.17.tgz", - "integrity": "sha512-ZNGoFZqrnuy9H2izB2jLlnNDAfVPlGl5NhFEiFe4D84ix9GQGygF+CWMGHKuE+bpyS/AOuDQCnkiRNqW2IzS1Q==", - "requires": { - "@babel/helper-plugin-utils": "^7.12.13", - "@babel/plugin-syntax-dynamic-import": "^7.8.0" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.12.13.tgz", - "integrity": "sha512-C+10MXCXJLiR6IeG9+Wiejt9jmtFpxUc3MQqCmPY8hfCjyUGl9kT+B2okzEZrtykiwrc4dbCPdDoz0A/HQbDaA==" - } - } - }, - "@babel/plugin-proposal-export-namespace-from": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.12.13.tgz", - "integrity": "sha512-INAgtFo4OnLN3Y/j0VwAgw3HDXcDtX+C/erMvWzuV9v71r7urb6iyMXu7eM9IgLr1ElLlOkaHjJ0SbCmdOQ3Iw==", - "requires": { - "@babel/helper-plugin-utils": "^7.12.13", - "@babel/plugin-syntax-export-namespace-from": "^7.8.3" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.12.13.tgz", - "integrity": "sha512-C+10MXCXJLiR6IeG9+Wiejt9jmtFpxUc3MQqCmPY8hfCjyUGl9kT+B2okzEZrtykiwrc4dbCPdDoz0A/HQbDaA==" - } - } - }, - "@babel/plugin-proposal-json-strings": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.12.13.tgz", - "integrity": "sha512-v9eEi4GiORDg8x+Dmi5r8ibOe0VXoKDeNPYcTTxdGN4eOWikrJfDJCJrr1l5gKGvsNyGJbrfMftC2dTL6oz7pg==", - "requires": { - "@babel/helper-plugin-utils": "^7.12.13", - "@babel/plugin-syntax-json-strings": "^7.8.0" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.12.13.tgz", - "integrity": "sha512-C+10MXCXJLiR6IeG9+Wiejt9jmtFpxUc3MQqCmPY8hfCjyUGl9kT+B2okzEZrtykiwrc4dbCPdDoz0A/HQbDaA==" - } - } - }, - "@babel/plugin-proposal-logical-assignment-operators": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.12.13.tgz", - "integrity": "sha512-fqmiD3Lz7jVdK6kabeSr1PZlWSUVqSitmHEe3Z00dtGTKieWnX9beafvavc32kjORa5Bai4QNHgFDwWJP+WtSQ==", - "requires": { - "@babel/helper-plugin-utils": "^7.12.13", - "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.12.13.tgz", - "integrity": "sha512-C+10MXCXJLiR6IeG9+Wiejt9jmtFpxUc3MQqCmPY8hfCjyUGl9kT+B2okzEZrtykiwrc4dbCPdDoz0A/HQbDaA==" - } - } - }, - "@babel/plugin-proposal-nullish-coalescing-operator": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.12.13.tgz", - "integrity": "sha512-Qoxpy+OxhDBI5kRqliJFAl4uWXk3Bn24WeFstPH0iLymFehSAUR8MHpqU7njyXv/qbo7oN6yTy5bfCmXdKpo1Q==", - "requires": { - "@babel/helper-plugin-utils": "^7.12.13", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.0" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.12.13.tgz", - "integrity": "sha512-C+10MXCXJLiR6IeG9+Wiejt9jmtFpxUc3MQqCmPY8hfCjyUGl9kT+B2okzEZrtykiwrc4dbCPdDoz0A/HQbDaA==" - } - } - }, - "@babel/plugin-proposal-numeric-separator": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.12.13.tgz", - "integrity": "sha512-O1jFia9R8BUCl3ZGB7eitaAPu62TXJRHn7rh+ojNERCFyqRwJMTmhz+tJ+k0CwI6CLjX/ee4qW74FSqlq9I35w==", - "requires": { - "@babel/helper-plugin-utils": "^7.12.13", - "@babel/plugin-syntax-numeric-separator": "^7.10.4" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.12.13.tgz", - "integrity": "sha512-C+10MXCXJLiR6IeG9+Wiejt9jmtFpxUc3MQqCmPY8hfCjyUGl9kT+B2okzEZrtykiwrc4dbCPdDoz0A/HQbDaA==" - } - } - }, - "@babel/plugin-proposal-object-rest-spread": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.12.13.tgz", - "integrity": "sha512-WvA1okB/0OS/N3Ldb3sziSrXg6sRphsBgqiccfcQq7woEn5wQLNX82Oc4PlaFcdwcWHuQXAtb8ftbS8Fbsg/sg==", - "requires": { - "@babel/helper-plugin-utils": "^7.12.13", - "@babel/plugin-syntax-object-rest-spread": "^7.8.0", - "@babel/plugin-transform-parameters": "^7.12.13" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.12.13.tgz", - "integrity": "sha512-C+10MXCXJLiR6IeG9+Wiejt9jmtFpxUc3MQqCmPY8hfCjyUGl9kT+B2okzEZrtykiwrc4dbCPdDoz0A/HQbDaA==" - } - } - }, - "@babel/plugin-proposal-optional-catch-binding": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.12.13.tgz", - "integrity": "sha512-9+MIm6msl9sHWg58NvqpNpLtuFbmpFYk37x8kgnGzAHvX35E1FyAwSUt5hIkSoWJFSAH+iwU8bJ4fcD1zKXOzg==", - "requires": { - "@babel/helper-plugin-utils": "^7.12.13", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.0" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.12.13.tgz", - "integrity": "sha512-C+10MXCXJLiR6IeG9+Wiejt9jmtFpxUc3MQqCmPY8hfCjyUGl9kT+B2okzEZrtykiwrc4dbCPdDoz0A/HQbDaA==" - } - } - }, - "@babel/plugin-proposal-optional-chaining": { - "version": "7.12.17", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.12.17.tgz", - "integrity": "sha512-TvxwI80pWftrGPKHNfkvX/HnoeSTR7gC4ezWnAL39PuktYUe6r8kEpOLTYnkBTsaoeazXm2jHJ22EQ81sdgfcA==", - "requires": { - "@babel/helper-plugin-utils": "^7.12.13", - "@babel/helper-skip-transparent-expression-wrappers": "^7.12.1", - "@babel/plugin-syntax-optional-chaining": "^7.8.0" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.12.13.tgz", - "integrity": "sha512-C+10MXCXJLiR6IeG9+Wiejt9jmtFpxUc3MQqCmPY8hfCjyUGl9kT+B2okzEZrtykiwrc4dbCPdDoz0A/HQbDaA==" - } - } - }, - "@babel/plugin-proposal-private-methods": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.12.13.tgz", - "integrity": "sha512-sV0V57uUwpauixvR7s2o75LmwJI6JECwm5oPUY5beZB1nBl2i37hc7CJGqB5G+58fur5Y6ugvl3LRONk5x34rg==", - "requires": { - "@babel/helper-create-class-features-plugin": "^7.12.13", - "@babel/helper-plugin-utils": "^7.12.13" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.12.13.tgz", - "integrity": "sha512-C+10MXCXJLiR6IeG9+Wiejt9jmtFpxUc3MQqCmPY8hfCjyUGl9kT+B2okzEZrtykiwrc4dbCPdDoz0A/HQbDaA==" - } - } - }, - "@babel/plugin-proposal-unicode-property-regex": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.12.13.tgz", - "integrity": "sha512-XyJmZidNfofEkqFV5VC/bLabGmO5QzenPO/YOfGuEbgU+2sSwMmio3YLb4WtBgcmmdwZHyVyv8on77IUjQ5Gvg==", - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.12.13", - "@babel/helper-plugin-utils": "^7.12.13" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.12.13.tgz", - "integrity": "sha512-C+10MXCXJLiR6IeG9+Wiejt9jmtFpxUc3MQqCmPY8hfCjyUGl9kT+B2okzEZrtykiwrc4dbCPdDoz0A/HQbDaA==" - } - } - }, - "@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==", - "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.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.10.4.tgz", - "integrity": "sha512-GCSBF7iUle6rNugfURwNmCGG3Z/2+opxAMLs1nND4bhEG5PuxTIggDBoeYYSujAlLtsupzOHYJQgPS3pivwXIA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@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==", - "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==", - "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==", - "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==", - "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==", - "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==", - "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==", - "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==", - "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==", - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-top-level-await": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.10.4.tgz", - "integrity": "sha512-ni1brg4lXEmWyafKr0ccFWkJG0CeMt4WV1oyeBW6EFObF4oOHclbkj5cARxAPQyAQ2UTuplJyK4nfkXIMMFvsQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-syntax-typescript": { - "version": "7.12.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.12.1.tgz", - "integrity": "sha512-UZNEcCY+4Dp9yYRCAHrHDU+9ZXLYaY9MgBXSRLkB9WjYFRR6quJBumfVrEkUxrePPBwFcpWfNKXqVRQQtm7mMA==", - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-transform-arrow-functions": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.12.13.tgz", - "integrity": "sha512-tBtuN6qtCTd+iHzVZVOMNp+L04iIJBpqkdY42tWbmjIT5wvR2kx7gxMBsyhQtFzHwBbyGi9h8J8r9HgnOpQHxg==", - "requires": { - "@babel/helper-plugin-utils": "^7.12.13" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.12.13.tgz", - "integrity": "sha512-C+10MXCXJLiR6IeG9+Wiejt9jmtFpxUc3MQqCmPY8hfCjyUGl9kT+B2okzEZrtykiwrc4dbCPdDoz0A/HQbDaA==" - } - } - }, - "@babel/plugin-transform-async-to-generator": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.12.13.tgz", - "integrity": "sha512-psM9QHcHaDr+HZpRuJcE1PXESuGWSCcbiGFFhhwfzdbTxaGDVzuVtdNYliAwcRo3GFg0Bc8MmI+AvIGYIJG04A==", - "requires": { - "@babel/helper-module-imports": "^7.12.13", - "@babel/helper-plugin-utils": "^7.12.13", - "@babel/helper-remap-async-to-generator": "^7.12.13" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.12.13.tgz", - "integrity": "sha512-C+10MXCXJLiR6IeG9+Wiejt9jmtFpxUc3MQqCmPY8hfCjyUGl9kT+B2okzEZrtykiwrc4dbCPdDoz0A/HQbDaA==" - } - } - }, - "@babel/plugin-transform-block-scoped-functions": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.12.13.tgz", - "integrity": "sha512-zNyFqbc3kI/fVpqwfqkg6RvBgFpC4J18aKKMmv7KdQ/1GgREapSJAykLMVNwfRGO3BtHj3YQZl8kxCXPcVMVeg==", - "requires": { - "@babel/helper-plugin-utils": "^7.12.13" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.12.13.tgz", - "integrity": "sha512-C+10MXCXJLiR6IeG9+Wiejt9jmtFpxUc3MQqCmPY8hfCjyUGl9kT+B2okzEZrtykiwrc4dbCPdDoz0A/HQbDaA==" - } - } - }, - "@babel/plugin-transform-block-scoping": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.12.13.tgz", - "integrity": "sha512-Pxwe0iqWJX4fOOM2kEZeUuAxHMWb9nK+9oh5d11bsLoB0xMg+mkDpt0eYuDZB7ETrY9bbcVlKUGTOGWy7BHsMQ==", - "requires": { - "@babel/helper-plugin-utils": "^7.12.13" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.12.13.tgz", - "integrity": "sha512-C+10MXCXJLiR6IeG9+Wiejt9jmtFpxUc3MQqCmPY8hfCjyUGl9kT+B2okzEZrtykiwrc4dbCPdDoz0A/HQbDaA==" - } - } - }, - "@babel/plugin-transform-classes": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.12.13.tgz", - "integrity": "sha512-cqZlMlhCC1rVnxE5ZGMtIb896ijL90xppMiuWXcwcOAuFczynpd3KYemb91XFFPi3wJSe/OcrX9lXoowatkkxA==", - "requires": { - "@babel/helper-annotate-as-pure": "^7.12.13", - "@babel/helper-function-name": "^7.12.13", - "@babel/helper-optimise-call-expression": "^7.12.13", - "@babel/helper-plugin-utils": "^7.12.13", - "@babel/helper-replace-supers": "^7.12.13", - "@babel/helper-split-export-declaration": "^7.12.13", - "globals": "^11.1.0" - }, - "dependencies": { - "@babel/code-frame": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.13.tgz", - "integrity": "sha512-HV1Cm0Q3ZrpCR93tkWOYiuYIgLxZXZFVG2VgK+MBWjUqZTundupbfx2aXarXuw5Ko5aMcjtJgbSs4vUGBS5v6g==", - "requires": { - "@babel/highlight": "^7.12.13" - } - }, - "@babel/helper-function-name": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.12.13.tgz", - "integrity": "sha512-TZvmPn0UOqmvi5G4vvw0qZTpVptGkB1GL61R6lKvrSdIxGm5Pky7Q3fpKiIkQCAtRCBUwB0PaThlx9vebCDSwA==", - "requires": { - "@babel/helper-get-function-arity": "^7.12.13", - "@babel/template": "^7.12.13", - "@babel/types": "^7.12.13" - } - }, - "@babel/helper-get-function-arity": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.12.13.tgz", - "integrity": "sha512-DjEVzQNz5LICkzN0REdpD5prGoidvbdYk1BVgRUOINaWJP2t6avB27X1guXK1kXNrX0WMfsrm1A/ZBthYuIMQg==", - "requires": { - "@babel/types": "^7.12.13" - } - }, - "@babel/helper-optimise-call-expression": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.12.13.tgz", - "integrity": "sha512-BdWQhoVJkp6nVjB7nkFWcn43dkprYauqtk++Py2eaf/GRDFm5BxRqEIZCiHlZUGAVmtwKcsVL1dC68WmzeFmiA==", - "requires": { - "@babel/types": "^7.12.13" - } - }, - "@babel/helper-plugin-utils": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.12.13.tgz", - "integrity": "sha512-C+10MXCXJLiR6IeG9+Wiejt9jmtFpxUc3MQqCmPY8hfCjyUGl9kT+B2okzEZrtykiwrc4dbCPdDoz0A/HQbDaA==" - }, - "@babel/helper-split-export-declaration": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.12.13.tgz", - "integrity": "sha512-tCJDltF83htUtXx5NLcaDqRmknv652ZWCHyoTETf1CXYJdPC7nohZohjUgieXhv0hTJdRf2FjDueFehdNucpzg==", - "requires": { - "@babel/types": "^7.12.13" - } - }, - "@babel/helper-validator-identifier": { - "version": "7.12.11", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.12.11.tgz", - "integrity": "sha512-np/lG3uARFybkoHokJUmf1QfEvRVCPbmQeUQpKow5cQ3xWrV9i3rUHodKDJPQfTVX61qKi+UdYk8kik84n7XOw==" - }, - "@babel/highlight": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.12.13.tgz", - "integrity": "sha512-kocDQvIbgMKlWxXe9fof3TQ+gkIPOUSEYhJjqUjvKMez3krV7vbzYCDq39Oj11UAVK7JqPVGQPlgE85dPNlQww==", - "requires": { - "@babel/helper-validator-identifier": "^7.12.11", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" - } - }, - "@babel/parser": { - "version": "7.12.17", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.12.17.tgz", - "integrity": "sha512-r1yKkiUTYMQ8LiEI0UcQx5ETw5dpTLn9wijn9hk6KkTtOK95FndDN10M+8/s6k/Ymlbivw0Av9q4SlgF80PtHg==" - }, - "@babel/template": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.12.13.tgz", - "integrity": "sha512-/7xxiGA57xMo/P2GVvdEumr8ONhFOhfgq2ihK3h1e6THqzTAkHbkXgB0xI9yeTfIUoH3+oAeHhqm/I43OTbbjA==", - "requires": { - "@babel/code-frame": "^7.12.13", - "@babel/parser": "^7.12.13", - "@babel/types": "^7.12.13" - } - }, - "@babel/types": { - "version": "7.12.17", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.12.17.tgz", - "integrity": "sha512-tNMDjcv/4DIcHxErTgwB9q2ZcYyN0sUfgGKUK/mm1FJK7Wz+KstoEekxrl/tBiNDgLK1HGi+sppj1An/1DR4fQ==", - "requires": { - "@babel/helper-validator-identifier": "^7.12.11", - "lodash": "^4.17.19", - "to-fast-properties": "^2.0.0" - } - } - } - }, - "@babel/plugin-transform-computed-properties": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.12.13.tgz", - "integrity": "sha512-dDfuROUPGK1mTtLKyDPUavmj2b6kFu82SmgpztBFEO974KMjJT+Ytj3/oWsTUMBmgPcp9J5Pc1SlcAYRpJ2hRA==", - "requires": { - "@babel/helper-plugin-utils": "^7.12.13" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.12.13.tgz", - "integrity": "sha512-C+10MXCXJLiR6IeG9+Wiejt9jmtFpxUc3MQqCmPY8hfCjyUGl9kT+B2okzEZrtykiwrc4dbCPdDoz0A/HQbDaA==" - } - } - }, - "@babel/plugin-transform-destructuring": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.12.13.tgz", - "integrity": "sha512-Dn83KykIFzjhA3FDPA1z4N+yfF3btDGhjnJwxIj0T43tP0flCujnU8fKgEkf0C1biIpSv9NZegPBQ1J6jYkwvQ==", - "requires": { - "@babel/helper-plugin-utils": "^7.12.13" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.12.13.tgz", - "integrity": "sha512-C+10MXCXJLiR6IeG9+Wiejt9jmtFpxUc3MQqCmPY8hfCjyUGl9kT+B2okzEZrtykiwrc4dbCPdDoz0A/HQbDaA==" - } - } - }, - "@babel/plugin-transform-dotall-regex": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.12.13.tgz", - "integrity": "sha512-foDrozE65ZFdUC2OfgeOCrEPTxdB3yjqxpXh8CH+ipd9CHd4s/iq81kcUpyH8ACGNEPdFqbtzfgzbT/ZGlbDeQ==", - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.12.13", - "@babel/helper-plugin-utils": "^7.12.13" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.12.13.tgz", - "integrity": "sha512-C+10MXCXJLiR6IeG9+Wiejt9jmtFpxUc3MQqCmPY8hfCjyUGl9kT+B2okzEZrtykiwrc4dbCPdDoz0A/HQbDaA==" - } - } - }, - "@babel/plugin-transform-duplicate-keys": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.12.13.tgz", - "integrity": "sha512-NfADJiiHdhLBW3pulJlJI2NB0t4cci4WTZ8FtdIuNc2+8pslXdPtRRAEWqUY+m9kNOk2eRYbTAOipAxlrOcwwQ==", - "requires": { - "@babel/helper-plugin-utils": "^7.12.13" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.12.13.tgz", - "integrity": "sha512-C+10MXCXJLiR6IeG9+Wiejt9jmtFpxUc3MQqCmPY8hfCjyUGl9kT+B2okzEZrtykiwrc4dbCPdDoz0A/HQbDaA==" - } - } - }, - "@babel/plugin-transform-exponentiation-operator": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.12.13.tgz", - "integrity": "sha512-fbUelkM1apvqez/yYx1/oICVnGo2KM5s63mhGylrmXUxK/IAXSIf87QIxVfZldWf4QsOafY6vV3bX8aMHSvNrA==", - "requires": { - "@babel/helper-builder-binary-assignment-operator-visitor": "^7.12.13", - "@babel/helper-plugin-utils": "^7.12.13" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.12.13.tgz", - "integrity": "sha512-C+10MXCXJLiR6IeG9+Wiejt9jmtFpxUc3MQqCmPY8hfCjyUGl9kT+B2okzEZrtykiwrc4dbCPdDoz0A/HQbDaA==" - } - } - }, - "@babel/plugin-transform-for-of": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.12.13.tgz", - "integrity": "sha512-xCbdgSzXYmHGyVX3+BsQjcd4hv4vA/FDy7Kc8eOpzKmBBPEOTurt0w5fCRQaGl+GSBORKgJdstQ1rHl4jbNseQ==", - "requires": { - "@babel/helper-plugin-utils": "^7.12.13" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.12.13.tgz", - "integrity": "sha512-C+10MXCXJLiR6IeG9+Wiejt9jmtFpxUc3MQqCmPY8hfCjyUGl9kT+B2okzEZrtykiwrc4dbCPdDoz0A/HQbDaA==" - } - } - }, - "@babel/plugin-transform-function-name": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.12.13.tgz", - "integrity": "sha512-6K7gZycG0cmIwwF7uMK/ZqeCikCGVBdyP2J5SKNCXO5EOHcqi+z7Jwf8AmyDNcBgxET8DrEtCt/mPKPyAzXyqQ==", - "requires": { - "@babel/helper-function-name": "^7.12.13", - "@babel/helper-plugin-utils": "^7.12.13" - }, - "dependencies": { - "@babel/code-frame": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.13.tgz", - "integrity": "sha512-HV1Cm0Q3ZrpCR93tkWOYiuYIgLxZXZFVG2VgK+MBWjUqZTundupbfx2aXarXuw5Ko5aMcjtJgbSs4vUGBS5v6g==", - "requires": { - "@babel/highlight": "^7.12.13" - } - }, - "@babel/helper-function-name": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.12.13.tgz", - "integrity": "sha512-TZvmPn0UOqmvi5G4vvw0qZTpVptGkB1GL61R6lKvrSdIxGm5Pky7Q3fpKiIkQCAtRCBUwB0PaThlx9vebCDSwA==", - "requires": { - "@babel/helper-get-function-arity": "^7.12.13", - "@babel/template": "^7.12.13", - "@babel/types": "^7.12.13" - } - }, - "@babel/helper-get-function-arity": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.12.13.tgz", - "integrity": "sha512-DjEVzQNz5LICkzN0REdpD5prGoidvbdYk1BVgRUOINaWJP2t6avB27X1guXK1kXNrX0WMfsrm1A/ZBthYuIMQg==", - "requires": { - "@babel/types": "^7.12.13" - } - }, - "@babel/helper-plugin-utils": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.12.13.tgz", - "integrity": "sha512-C+10MXCXJLiR6IeG9+Wiejt9jmtFpxUc3MQqCmPY8hfCjyUGl9kT+B2okzEZrtykiwrc4dbCPdDoz0A/HQbDaA==" - }, - "@babel/helper-validator-identifier": { - "version": "7.12.11", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.12.11.tgz", - "integrity": "sha512-np/lG3uARFybkoHokJUmf1QfEvRVCPbmQeUQpKow5cQ3xWrV9i3rUHodKDJPQfTVX61qKi+UdYk8kik84n7XOw==" - }, - "@babel/highlight": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.12.13.tgz", - "integrity": "sha512-kocDQvIbgMKlWxXe9fof3TQ+gkIPOUSEYhJjqUjvKMez3krV7vbzYCDq39Oj11UAVK7JqPVGQPlgE85dPNlQww==", - "requires": { - "@babel/helper-validator-identifier": "^7.12.11", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" - } - }, - "@babel/parser": { - "version": "7.12.17", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.12.17.tgz", - "integrity": "sha512-r1yKkiUTYMQ8LiEI0UcQx5ETw5dpTLn9wijn9hk6KkTtOK95FndDN10M+8/s6k/Ymlbivw0Av9q4SlgF80PtHg==" - }, - "@babel/template": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.12.13.tgz", - "integrity": "sha512-/7xxiGA57xMo/P2GVvdEumr8ONhFOhfgq2ihK3h1e6THqzTAkHbkXgB0xI9yeTfIUoH3+oAeHhqm/I43OTbbjA==", - "requires": { - "@babel/code-frame": "^7.12.13", - "@babel/parser": "^7.12.13", - "@babel/types": "^7.12.13" - } - }, - "@babel/types": { - "version": "7.12.17", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.12.17.tgz", - "integrity": "sha512-tNMDjcv/4DIcHxErTgwB9q2ZcYyN0sUfgGKUK/mm1FJK7Wz+KstoEekxrl/tBiNDgLK1HGi+sppj1An/1DR4fQ==", - "requires": { - "@babel/helper-validator-identifier": "^7.12.11", - "lodash": "^4.17.19", - "to-fast-properties": "^2.0.0" - } - } - } - }, - "@babel/plugin-transform-literals": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.12.13.tgz", - "integrity": "sha512-FW+WPjSR7hiUxMcKqyNjP05tQ2kmBCdpEpZHY1ARm96tGQCCBvXKnpjILtDplUnJ/eHZ0lALLM+d2lMFSpYJrQ==", - "requires": { - "@babel/helper-plugin-utils": "^7.12.13" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.12.13.tgz", - "integrity": "sha512-C+10MXCXJLiR6IeG9+Wiejt9jmtFpxUc3MQqCmPY8hfCjyUGl9kT+B2okzEZrtykiwrc4dbCPdDoz0A/HQbDaA==" - } - } - }, - "@babel/plugin-transform-member-expression-literals": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.12.13.tgz", - "integrity": "sha512-kxLkOsg8yir4YeEPHLuO2tXP9R/gTjpuTOjshqSpELUN3ZAg2jfDnKUvzzJxObun38sw3wm4Uu69sX/zA7iRvg==", - "requires": { - "@babel/helper-plugin-utils": "^7.12.13" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.12.13.tgz", - "integrity": "sha512-C+10MXCXJLiR6IeG9+Wiejt9jmtFpxUc3MQqCmPY8hfCjyUGl9kT+B2okzEZrtykiwrc4dbCPdDoz0A/HQbDaA==" - } - } - }, - "@babel/plugin-transform-modules-amd": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.12.13.tgz", - "integrity": "sha512-JHLOU0o81m5UqG0Ulz/fPC68/v+UTuGTWaZBUwpEk1fYQ1D9LfKV6MPn4ttJKqRo5Lm460fkzjLTL4EHvCprvA==", - "requires": { - "@babel/helper-module-transforms": "^7.12.13", - "@babel/helper-plugin-utils": "^7.12.13", - "babel-plugin-dynamic-import-node": "^2.3.3" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.12.13.tgz", - "integrity": "sha512-C+10MXCXJLiR6IeG9+Wiejt9jmtFpxUc3MQqCmPY8hfCjyUGl9kT+B2okzEZrtykiwrc4dbCPdDoz0A/HQbDaA==" - } - } - }, - "@babel/plugin-transform-modules-commonjs": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.12.13.tgz", - "integrity": "sha512-OGQoeVXVi1259HjuoDnsQMlMkT9UkZT9TpXAsqWplS/M0N1g3TJAn/ByOCeQu7mfjc5WpSsRU+jV1Hd89ts0kQ==", - "requires": { - "@babel/helper-module-transforms": "^7.12.13", - "@babel/helper-plugin-utils": "^7.12.13", - "@babel/helper-simple-access": "^7.12.13", - "babel-plugin-dynamic-import-node": "^2.3.3" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.12.13.tgz", - "integrity": "sha512-C+10MXCXJLiR6IeG9+Wiejt9jmtFpxUc3MQqCmPY8hfCjyUGl9kT+B2okzEZrtykiwrc4dbCPdDoz0A/HQbDaA==" - } - } - }, - "@babel/plugin-transform-modules-systemjs": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.12.13.tgz", - "integrity": "sha512-aHfVjhZ8QekaNF/5aNdStCGzwTbU7SI5hUybBKlMzqIMC7w7Ho8hx5a4R/DkTHfRfLwHGGxSpFt9BfxKCoXKoA==", - "requires": { - "@babel/helper-hoist-variables": "^7.12.13", - "@babel/helper-module-transforms": "^7.12.13", - "@babel/helper-plugin-utils": "^7.12.13", - "@babel/helper-validator-identifier": "^7.12.11", - "babel-plugin-dynamic-import-node": "^2.3.3" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.12.13.tgz", - "integrity": "sha512-C+10MXCXJLiR6IeG9+Wiejt9jmtFpxUc3MQqCmPY8hfCjyUGl9kT+B2okzEZrtykiwrc4dbCPdDoz0A/HQbDaA==" - }, - "@babel/helper-validator-identifier": { - "version": "7.12.11", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.12.11.tgz", - "integrity": "sha512-np/lG3uARFybkoHokJUmf1QfEvRVCPbmQeUQpKow5cQ3xWrV9i3rUHodKDJPQfTVX61qKi+UdYk8kik84n7XOw==" - } - } - }, - "@babel/plugin-transform-modules-umd": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.12.13.tgz", - "integrity": "sha512-BgZndyABRML4z6ibpi7Z98m4EVLFI9tVsZDADC14AElFaNHHBcJIovflJ6wtCqFxwy2YJ1tJhGRsr0yLPKoN+w==", - "requires": { - "@babel/helper-module-transforms": "^7.12.13", - "@babel/helper-plugin-utils": "^7.12.13" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.12.13.tgz", - "integrity": "sha512-C+10MXCXJLiR6IeG9+Wiejt9jmtFpxUc3MQqCmPY8hfCjyUGl9kT+B2okzEZrtykiwrc4dbCPdDoz0A/HQbDaA==" - } - } - }, - "@babel/plugin-transform-named-capturing-groups-regex": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.12.13.tgz", - "integrity": "sha512-Xsm8P2hr5hAxyYblrfACXpQKdQbx4m2df9/ZZSQ8MAhsadw06+jW7s9zsSw6he+mJZXRlVMyEnVktJo4zjk1WA==", - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.12.13" - } - }, - "@babel/plugin-transform-new-target": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.12.13.tgz", - "integrity": "sha512-/KY2hbLxrG5GTQ9zzZSc3xWiOy379pIETEhbtzwZcw9rvuaVV4Fqy7BYGYOWZnaoXIQYbbJ0ziXLa/sKcGCYEQ==", - "requires": { - "@babel/helper-plugin-utils": "^7.12.13" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.12.13.tgz", - "integrity": "sha512-C+10MXCXJLiR6IeG9+Wiejt9jmtFpxUc3MQqCmPY8hfCjyUGl9kT+B2okzEZrtykiwrc4dbCPdDoz0A/HQbDaA==" - } - } - }, - "@babel/plugin-transform-object-super": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.12.13.tgz", - "integrity": "sha512-JzYIcj3XtYspZDV8j9ulnoMPZZnF/Cj0LUxPOjR89BdBVx+zYJI9MdMIlUZjbXDX+6YVeS6I3e8op+qQ3BYBoQ==", - "requires": { - "@babel/helper-plugin-utils": "^7.12.13", - "@babel/helper-replace-supers": "^7.12.13" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.12.13.tgz", - "integrity": "sha512-C+10MXCXJLiR6IeG9+Wiejt9jmtFpxUc3MQqCmPY8hfCjyUGl9kT+B2okzEZrtykiwrc4dbCPdDoz0A/HQbDaA==" - } - } - }, - "@babel/plugin-transform-parameters": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.12.13.tgz", - "integrity": "sha512-e7QqwZalNiBRHCpJg/P8s/VJeSRYgmtWySs1JwvfwPqhBbiWfOcHDKdeAi6oAyIimoKWBlwc8oTgbZHdhCoVZA==", - "requires": { - "@babel/helper-plugin-utils": "^7.12.13" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.12.13.tgz", - "integrity": "sha512-C+10MXCXJLiR6IeG9+Wiejt9jmtFpxUc3MQqCmPY8hfCjyUGl9kT+B2okzEZrtykiwrc4dbCPdDoz0A/HQbDaA==" - } - } - }, - "@babel/plugin-transform-property-literals": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.12.13.tgz", - "integrity": "sha512-nqVigwVan+lR+g8Fj8Exl0UQX2kymtjcWfMOYM1vTYEKujeyv2SkMgazf2qNcK7l4SDiKyTA/nHCPqL4e2zo1A==", - "requires": { - "@babel/helper-plugin-utils": "^7.12.13" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.12.13.tgz", - "integrity": "sha512-C+10MXCXJLiR6IeG9+Wiejt9jmtFpxUc3MQqCmPY8hfCjyUGl9kT+B2okzEZrtykiwrc4dbCPdDoz0A/HQbDaA==" - } - } - }, - "@babel/plugin-transform-regenerator": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.12.13.tgz", - "integrity": "sha512-lxb2ZAvSLyJ2PEe47hoGWPmW22v7CtSl9jW8mingV4H2sEX/JOcrAj2nPuGWi56ERUm2bUpjKzONAuT6HCn2EA==", - "requires": { - "regenerator-transform": "^0.14.2" - } - }, - "@babel/plugin-transform-reserved-words": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.12.13.tgz", - "integrity": "sha512-xhUPzDXxZN1QfiOy/I5tyye+TRz6lA7z6xaT4CLOjPRMVg1ldRf0LHw0TDBpYL4vG78556WuHdyO9oi5UmzZBg==", - "requires": { - "@babel/helper-plugin-utils": "^7.12.13" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.12.13.tgz", - "integrity": "sha512-C+10MXCXJLiR6IeG9+Wiejt9jmtFpxUc3MQqCmPY8hfCjyUGl9kT+B2okzEZrtykiwrc4dbCPdDoz0A/HQbDaA==" - } - } - }, - "@babel/plugin-transform-shorthand-properties": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.12.13.tgz", - "integrity": "sha512-xpL49pqPnLtf0tVluuqvzWIgLEhuPpZzvs2yabUHSKRNlN7ScYU7aMlmavOeyXJZKgZKQRBlh8rHbKiJDraTSw==", - "requires": { - "@babel/helper-plugin-utils": "^7.12.13" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.12.13.tgz", - "integrity": "sha512-C+10MXCXJLiR6IeG9+Wiejt9jmtFpxUc3MQqCmPY8hfCjyUGl9kT+B2okzEZrtykiwrc4dbCPdDoz0A/HQbDaA==" - } - } - }, - "@babel/plugin-transform-spread": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.12.13.tgz", - "integrity": "sha512-dUCrqPIowjqk5pXsx1zPftSq4sT0aCeZVAxhdgs3AMgyaDmoUT0G+5h3Dzja27t76aUEIJWlFgPJqJ/d4dbTtg==", - "requires": { - "@babel/helper-plugin-utils": "^7.12.13", - "@babel/helper-skip-transparent-expression-wrappers": "^7.12.1" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.12.13.tgz", - "integrity": "sha512-C+10MXCXJLiR6IeG9+Wiejt9jmtFpxUc3MQqCmPY8hfCjyUGl9kT+B2okzEZrtykiwrc4dbCPdDoz0A/HQbDaA==" - } - } - }, - "@babel/plugin-transform-sticky-regex": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.12.13.tgz", - "integrity": "sha512-Jc3JSaaWT8+fr7GRvQP02fKDsYk4K/lYwWq38r/UGfaxo89ajud321NH28KRQ7xy1Ybc0VUE5Pz8psjNNDUglg==", - "requires": { - "@babel/helper-plugin-utils": "^7.12.13" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.12.13.tgz", - "integrity": "sha512-C+10MXCXJLiR6IeG9+Wiejt9jmtFpxUc3MQqCmPY8hfCjyUGl9kT+B2okzEZrtykiwrc4dbCPdDoz0A/HQbDaA==" - } - } - }, - "@babel/plugin-transform-template-literals": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.12.13.tgz", - "integrity": "sha512-arIKlWYUgmNsF28EyfmiQHJLJFlAJNYkuQO10jL46ggjBpeb2re1P9K9YGxNJB45BqTbaslVysXDYm/g3sN/Qg==", - "requires": { - "@babel/helper-plugin-utils": "^7.12.13" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.12.13.tgz", - "integrity": "sha512-C+10MXCXJLiR6IeG9+Wiejt9jmtFpxUc3MQqCmPY8hfCjyUGl9kT+B2okzEZrtykiwrc4dbCPdDoz0A/HQbDaA==" - } - } - }, - "@babel/plugin-transform-typeof-symbol": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.12.13.tgz", - "integrity": "sha512-eKv/LmUJpMnu4npgfvs3LiHhJua5fo/CysENxa45YCQXZwKnGCQKAg87bvoqSW1fFT+HA32l03Qxsm8ouTY3ZQ==", - "requires": { - "@babel/helper-plugin-utils": "^7.12.13" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.12.13.tgz", - "integrity": "sha512-C+10MXCXJLiR6IeG9+Wiejt9jmtFpxUc3MQqCmPY8hfCjyUGl9kT+B2okzEZrtykiwrc4dbCPdDoz0A/HQbDaA==" - } - } - }, - "@babel/plugin-transform-typescript": { - "version": "7.12.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.12.1.tgz", - "integrity": "sha512-VrsBByqAIntM+EYMqSm59SiMEf7qkmI9dqMt6RbD/wlwueWmYcI0FFK5Fj47pP6DRZm+3teXjosKlwcZJ5lIMw==", - "requires": { - "@babel/helper-create-class-features-plugin": "^7.12.1", - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/plugin-syntax-typescript": "^7.12.1" - }, - "dependencies": { - "@babel/code-frame": { - "version": "7.12.11", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz", - "integrity": "sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==", - "requires": { - "@babel/highlight": "^7.10.4" - } - }, - "@babel/generator": { - "version": "7.12.11", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.12.11.tgz", - "integrity": "sha512-Ggg6WPOJtSi8yYQvLVjG8F/TlpWDlKx0OpS4Kt+xMQPs5OaGYWy+v1A+1TvxI6sAMGZpKWWoAQ1DaeQbImlItA==", - "requires": { - "@babel/types": "^7.12.11", - "jsesc": "^2.5.1", - "source-map": "^0.5.0" - } - }, - "@babel/helper-create-class-features-plugin": { - "version": "7.12.1", - "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.12.1.tgz", - "integrity": "sha512-hkL++rWeta/OVOBTRJc9a5Azh5mt5WgZUGAKMD8JM141YsE08K//bp1unBBieO6rUKkIPyUE0USQ30jAy3Sk1w==", - "requires": { - "@babel/helper-function-name": "^7.10.4", - "@babel/helper-member-expression-to-functions": "^7.12.1", - "@babel/helper-optimise-call-expression": "^7.10.4", - "@babel/helper-replace-supers": "^7.12.1", - "@babel/helper-split-export-declaration": "^7.10.4" - } - }, - "@babel/helper-get-function-arity": { - "version": "7.12.10", - "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.12.10.tgz", - "integrity": "sha512-mm0n5BPjR06wh9mPQaDdXWDoll/j5UpCAPl1x8fS71GHm7HA6Ua2V4ylG1Ju8lvcTOietbPNNPaSilKj+pj+Ag==", - "requires": { - "@babel/types": "^7.12.10" - } - }, - "@babel/helper-member-expression-to-functions": { - "version": "7.12.7", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.12.7.tgz", - "integrity": "sha512-DCsuPyeWxeHgh1Dus7APn7iza42i/qXqiFPWyBDdOFtvS581JQePsc1F/nD+fHrcswhLlRc2UpYS1NwERxZhHw==", - "requires": { - "@babel/types": "^7.12.7" - } - }, - "@babel/helper-replace-supers": { - "version": "7.12.11", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.12.11.tgz", - "integrity": "sha512-q+w1cqmhL7R0FNzth/PLLp2N+scXEK/L2AHbXUyydxp828F4FEa5WcVoqui9vFRiHDQErj9Zof8azP32uGVTRA==", - "requires": { - "@babel/helper-member-expression-to-functions": "^7.12.7", - "@babel/helper-optimise-call-expression": "^7.12.10", - "@babel/traverse": "^7.12.10", - "@babel/types": "^7.12.11" - }, - "dependencies": { - "@babel/helper-optimise-call-expression": { - "version": "7.12.10", - "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.12.10.tgz", - "integrity": "sha512-4tpbU0SrSTjjt65UMWSrUOPZTsgvPgGG4S8QSTNHacKzpS51IVWGDj0yCwyeZND/i+LSN2g/O63jEXEWm49sYQ==", - "requires": { - "@babel/types": "^7.12.10" - } - } - } - }, - "@babel/helper-validator-identifier": { - "version": "7.12.11", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.12.11.tgz", - "integrity": "sha512-np/lG3uARFybkoHokJUmf1QfEvRVCPbmQeUQpKow5cQ3xWrV9i3rUHodKDJPQfTVX61qKi+UdYk8kik84n7XOw==" - }, - "@babel/parser": { - "version": "7.12.11", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.12.11.tgz", - "integrity": "sha512-N3UxG+uuF4CMYoNj8AhnbAcJF0PiuJ9KHuy1lQmkYsxTer/MAH9UBNHsBoAX/4s6NvlDD047No8mYVGGzLL4hg==" - }, - "@babel/template": { - "version": "7.12.7", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.12.7.tgz", - "integrity": "sha512-GkDzmHS6GV7ZeXfJZ0tLRBhZcMcY0/Lnb+eEbXDBfCAcZCjrZKe6p3J4we/D24O9Y8enxWAg1cWwof59yLh2ow==", - "requires": { - "@babel/code-frame": "^7.10.4", - "@babel/parser": "^7.12.7", - "@babel/types": "^7.12.7" - } - }, - "@babel/traverse": { - "version": "7.12.12", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.12.12.tgz", - "integrity": "sha512-s88i0X0lPy45RrLM8b9mz8RPH5FqO9G9p7ti59cToE44xFm1Q+Pjh5Gq4SXBbtb88X7Uy7pexeqRIQDDMNkL0w==", - "requires": { - "@babel/code-frame": "^7.12.11", - "@babel/generator": "^7.12.11", - "@babel/helper-function-name": "^7.12.11", - "@babel/helper-split-export-declaration": "^7.12.11", - "@babel/parser": "^7.12.11", - "@babel/types": "^7.12.12", - "debug": "^4.1.0", - "globals": "^11.1.0", - "lodash": "^4.17.19" - }, - "dependencies": { - "@babel/helper-function-name": { - "version": "7.12.11", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.12.11.tgz", - "integrity": "sha512-AtQKjtYNolKNi6nNNVLQ27CP6D9oFR6bq/HPYSizlzbp7uC1M59XJe8L+0uXjbIaZaUJF99ruHqVGiKXU/7ybA==", - "requires": { - "@babel/helper-get-function-arity": "^7.12.10", - "@babel/template": "^7.12.7", - "@babel/types": "^7.12.11" - } - }, - "@babel/helper-split-export-declaration": { - "version": "7.12.11", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.12.11.tgz", - "integrity": "sha512-LsIVN8j48gHgwzfocYUSkO/hjYAOJqlpJEc7tGXcIm4cubjVUf8LGW6eWRyxEu7gA25q02p0rQUWoCI33HNS5g==", - "requires": { - "@babel/types": "^7.12.11" - } - } - } - }, - "@babel/types": { - "version": "7.12.12", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.12.12.tgz", - "integrity": "sha512-lnIX7piTxOH22xE7fDXDbSHg9MM1/6ORnafpJmov5rs0kX5g4BZxeXNJLXsMRiO0U5Rb8/FvMS6xlTnTHvxonQ==", - "requires": { - "@babel/helper-validator-identifier": "^7.12.11", - "lodash": "^4.17.19", - "to-fast-properties": "^2.0.0" - } - }, - "debug": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", - "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", - "requires": { - "ms": "2.1.2" - } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" - } - } - }, - "@babel/plugin-transform-unicode-escapes": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.12.13.tgz", - "integrity": "sha512-0bHEkdwJ/sN/ikBHfSmOXPypN/beiGqjo+o4/5K+vxEFNPRPdImhviPakMKG4x96l85emoa0Z6cDflsdBusZbw==", - "requires": { - "@babel/helper-plugin-utils": "^7.12.13" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.12.13.tgz", - "integrity": "sha512-C+10MXCXJLiR6IeG9+Wiejt9jmtFpxUc3MQqCmPY8hfCjyUGl9kT+B2okzEZrtykiwrc4dbCPdDoz0A/HQbDaA==" - } - } - }, - "@babel/plugin-transform-unicode-regex": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.12.13.tgz", - "integrity": "sha512-mDRzSNY7/zopwisPZ5kM9XKCfhchqIYwAKRERtEnhYscZB79VRekuRSoYbN0+KVe3y8+q1h6A4svXtP7N+UoCA==", - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.12.13", - "@babel/helper-plugin-utils": "^7.12.13" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.12.13.tgz", - "integrity": "sha512-C+10MXCXJLiR6IeG9+Wiejt9jmtFpxUc3MQqCmPY8hfCjyUGl9kT+B2okzEZrtykiwrc4dbCPdDoz0A/HQbDaA==" - } - } - }, - "@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.12.17", - "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.12.17.tgz", - "integrity": "sha512-9PMijx8zFbCwTHrd2P4PJR5nWGH3zWebx2OcpTjqQrHhCiL2ssSR2Sc9ko2BsI2VmVBfoaQmPrlMTCui4LmXQg==", - "requires": { - "@babel/compat-data": "^7.12.13", - "@babel/helper-compilation-targets": "^7.12.17", - "@babel/helper-module-imports": "^7.12.13", - "@babel/helper-plugin-utils": "^7.12.13", - "@babel/helper-validator-option": "^7.12.17", - "@babel/plugin-proposal-async-generator-functions": "^7.12.13", - "@babel/plugin-proposal-class-properties": "^7.12.13", - "@babel/plugin-proposal-dynamic-import": "^7.12.17", - "@babel/plugin-proposal-export-namespace-from": "^7.12.13", - "@babel/plugin-proposal-json-strings": "^7.12.13", - "@babel/plugin-proposal-logical-assignment-operators": "^7.12.13", - "@babel/plugin-proposal-nullish-coalescing-operator": "^7.12.13", - "@babel/plugin-proposal-numeric-separator": "^7.12.13", - "@babel/plugin-proposal-object-rest-spread": "^7.12.13", - "@babel/plugin-proposal-optional-catch-binding": "^7.12.13", - "@babel/plugin-proposal-optional-chaining": "^7.12.17", - "@babel/plugin-proposal-private-methods": "^7.12.13", - "@babel/plugin-proposal-unicode-property-regex": "^7.12.13", - "@babel/plugin-syntax-async-generators": "^7.8.0", - "@babel/plugin-syntax-class-properties": "^7.12.13", - "@babel/plugin-syntax-dynamic-import": "^7.8.0", - "@babel/plugin-syntax-export-namespace-from": "^7.8.3", - "@babel/plugin-syntax-json-strings": "^7.8.0", - "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.0", - "@babel/plugin-syntax-numeric-separator": "^7.10.4", - "@babel/plugin-syntax-object-rest-spread": "^7.8.0", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.0", - "@babel/plugin-syntax-optional-chaining": "^7.8.0", - "@babel/plugin-syntax-top-level-await": "^7.12.13", - "@babel/plugin-transform-arrow-functions": "^7.12.13", - "@babel/plugin-transform-async-to-generator": "^7.12.13", - "@babel/plugin-transform-block-scoped-functions": "^7.12.13", - "@babel/plugin-transform-block-scoping": "^7.12.13", - "@babel/plugin-transform-classes": "^7.12.13", - "@babel/plugin-transform-computed-properties": "^7.12.13", - "@babel/plugin-transform-destructuring": "^7.12.13", - "@babel/plugin-transform-dotall-regex": "^7.12.13", - "@babel/plugin-transform-duplicate-keys": "^7.12.13", - "@babel/plugin-transform-exponentiation-operator": "^7.12.13", - "@babel/plugin-transform-for-of": "^7.12.13", - "@babel/plugin-transform-function-name": "^7.12.13", - "@babel/plugin-transform-literals": "^7.12.13", - "@babel/plugin-transform-member-expression-literals": "^7.12.13", - "@babel/plugin-transform-modules-amd": "^7.12.13", - "@babel/plugin-transform-modules-commonjs": "^7.12.13", - "@babel/plugin-transform-modules-systemjs": "^7.12.13", - "@babel/plugin-transform-modules-umd": "^7.12.13", - "@babel/plugin-transform-named-capturing-groups-regex": "^7.12.13", - "@babel/plugin-transform-new-target": "^7.12.13", - "@babel/plugin-transform-object-super": "^7.12.13", - "@babel/plugin-transform-parameters": "^7.12.13", - "@babel/plugin-transform-property-literals": "^7.12.13", - "@babel/plugin-transform-regenerator": "^7.12.13", - "@babel/plugin-transform-reserved-words": "^7.12.13", - "@babel/plugin-transform-shorthand-properties": "^7.12.13", - "@babel/plugin-transform-spread": "^7.12.13", - "@babel/plugin-transform-sticky-regex": "^7.12.13", - "@babel/plugin-transform-template-literals": "^7.12.13", - "@babel/plugin-transform-typeof-symbol": "^7.12.13", - "@babel/plugin-transform-unicode-escapes": "^7.12.13", - "@babel/plugin-transform-unicode-regex": "^7.12.13", - "@babel/preset-modules": "^0.1.3", - "@babel/types": "^7.12.17", - "core-js-compat": "^3.8.0", - "semver": "^5.5.0" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.12.13.tgz", - "integrity": "sha512-C+10MXCXJLiR6IeG9+Wiejt9jmtFpxUc3MQqCmPY8hfCjyUGl9kT+B2okzEZrtykiwrc4dbCPdDoz0A/HQbDaA==" - }, - "@babel/helper-validator-identifier": { - "version": "7.12.11", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.12.11.tgz", - "integrity": "sha512-np/lG3uARFybkoHokJUmf1QfEvRVCPbmQeUQpKow5cQ3xWrV9i3rUHodKDJPQfTVX61qKi+UdYk8kik84n7XOw==" - }, - "@babel/helper-validator-option": { - "version": "7.12.17", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.12.17.tgz", - "integrity": "sha512-TopkMDmLzq8ngChwRlyjR6raKD6gMSae4JdYDB8bByKreQgG0RBTuKe9LRxW3wFtUnjxOPRKBDwEH6Mg5KeDfw==" - }, - "@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==", - "requires": { - "@babel/helper-plugin-utils": "^7.12.13" - } - }, - "@babel/plugin-syntax-top-level-await": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.12.13.tgz", - "integrity": "sha512-A81F9pDwyS7yM//KwbCSDqy3Uj4NMIurtplxphWxoYtNPov7cJsDkAFNNyVlIZ3jwGycVsurZ+LtOA8gZ376iQ==", - "requires": { - "@babel/helper-plugin-utils": "^7.12.13" - } - }, - "@babel/types": { - "version": "7.12.17", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.12.17.tgz", - "integrity": "sha512-tNMDjcv/4DIcHxErTgwB9q2ZcYyN0sUfgGKUK/mm1FJK7Wz+KstoEekxrl/tBiNDgLK1HGi+sppj1An/1DR4fQ==", - "requires": { - "@babel/helper-validator-identifier": "^7.12.11", - "lodash": "^4.17.19", - "to-fast-properties": "^2.0.0" - } - }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" - } - } - }, - "@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==", - "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/preset-typescript": { - "version": "7.12.7", - "resolved": "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.12.7.tgz", - "integrity": "sha512-nOoIqIqBmHBSEgBXWR4Dv/XBehtIFcw9PqZw6rFYuKrzsZmOQm3PR5siLBnKZFEsDb03IegG8nSjU/iXXXYRmw==", - "requires": { - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/helper-validator-option": "^7.12.1", - "@babel/plugin-transform-typescript": "^7.12.1" - } - }, - "@babel/runtime": { - "version": "7.12.18", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.12.18.tgz", - "integrity": "sha512-BogPQ7ciE6SYAUPtlm9tWbgI9+2AgqSam6QivMgXgAT+fKbgppaj4ZX15MHeLC1PVF5sNk70huBu20XxWOs8Cg==", - "requires": { - "regenerator-runtime": "^0.13.4" - } - }, - "@babel/template": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.10.4.tgz", - "integrity": "sha512-ZCjD27cGJFUB6nmCB1Enki3r+L5kJveX9pq1SvAUKoICy6CZ9yD8xO086YXdYhvNjBdnekm4ZnaP5yC8Cs/1tA==", - "requires": { - "@babel/code-frame": "^7.10.4", - "@babel/parser": "^7.10.4", - "@babel/types": "^7.10.4" - } - }, - "@babel/traverse": { - "version": "7.11.5", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.11.5.tgz", - "integrity": "sha512-EjiPXt+r7LiCZXEfRpSJd+jUMnBd4/9OUv7Nx3+0u9+eimMwJmG0Q98lw4/289JCoxSE8OolDMNZaaF/JZ69WQ==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.10.4", - "@babel/generator": "^7.11.5", - "@babel/helper-function-name": "^7.10.4", - "@babel/helper-split-export-declaration": "^7.11.0", - "@babel/parser": "^7.11.5", - "@babel/types": "^7.11.5", - "debug": "^4.1.0", - "globals": "^11.1.0", - "lodash": "^4.17.19" - }, - "dependencies": { - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "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 - } - } - }, - "@babel/types": { - "version": "7.11.5", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.11.5.tgz", - "integrity": "sha512-bvM7Qz6eKnJVFIn+1LPtjlBFPVN5jNDc1XmN15vWe7Q3DPBufWWsLiIvUu7xW87uTG6QoggpIDnUgLQvPheU+Q==", - "requires": { - "@babel/helper-validator-identifier": "^7.10.4", - "lodash": "^4.17.19", - "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 - }, - "@cnakazawa/watch": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/@cnakazawa/watch/-/watch-1.0.4.tgz", - "integrity": "sha512-v9kIhKwjeZThiWrLmj0y17CWoyddASLj9O2yvbZkbvw/N3rWOYy9zkV66ursAoVr0mV15bL8g0c4QZUE6cdDoQ==", - "dev": true, - "requires": { - "exec-sh": "^0.3.2", - "minimist": "^1.2.0" - } - }, - "@discoveryjs/json-ext": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.2.tgz", - "integrity": "sha512-HyYEUDeIj5rRQU2Hk5HTB2uHsbRQpF70nvMhVzi+VJR0X+xNEhjPui4/kBf3VeH/wqD28PT4sVOm8qqLjBrSZg==", - "dev": true - }, - "@eslint/eslintrc": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.2.2.tgz", - "integrity": "sha512-EfB5OHNYp1F4px/LI/FEnGylop7nOqkQ1LRzCM0KccA2U8tvV8w01KBv37LbO7nW4H+YhKyo2LcJhRwjjV17QQ==", - "dev": true, - "requires": { - "ajv": "^6.12.4", - "debug": "^4.1.1", - "espree": "^7.3.0", - "globals": "^12.1.0", - "ignore": "^4.0.6", - "import-fresh": "^3.2.1", - "js-yaml": "^3.13.1", - "lodash": "^4.17.19", - "minimatch": "^3.0.4", - "strip-json-comments": "^3.1.1" - }, - "dependencies": { - "acorn": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", - "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", - "dev": true - }, - "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 - }, - "debug": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", - "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", - "dev": true, - "requires": { - "ms": "2.1.2" - } - }, - "espree": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-7.3.1.tgz", - "integrity": "sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g==", - "dev": true, - "requires": { - "acorn": "^7.4.0", - "acorn-jsx": "^5.3.1", - "eslint-visitor-keys": "^1.3.0" - } - }, - "globals": { - "version": "12.4.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-12.4.0.tgz", - "integrity": "sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg==", - "dev": true, - "requires": { - "type-fest": "^0.8.1" - } - }, - "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 - }, - "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 - } - } - }, - "@fullcalendar/common": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/@fullcalendar/common/-/common-5.5.0.tgz", - "integrity": "sha512-xHsHRI2xnC4vDPdRaOkt03SGIEsmlcSTI6RVInI2PQKi3n4otgM4ej3WL4B010uT4IzrBlUvNm8HHEo/o3g8Ug==", - "requires": { - "ical.js": "^1.4.0", - "tslib": "^2.0.3" - } - }, - "@fullcalendar/core": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/@fullcalendar/core/-/core-5.5.0.tgz", - "integrity": "sha512-NHyrH6AP1zRRCWsK0NuY/bZFQes1UaGB2pukMv86A0Yq1BI7Y7m9u/yH7D0/ZCaNkCLVxrSlIwAOtMQxPPITdg==", - "requires": { - "@fullcalendar/common": "~5.5.0", - "preact": "^10.0.5", - "tslib": "^2.0.3" - } - }, - "@fullcalendar/daygrid": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/@fullcalendar/daygrid/-/daygrid-5.5.0.tgz", - "integrity": "sha512-O/59C3ihElLsPnkjlD1xUgAf3v7WEARXVO+wZfASKtK14Ccux2MA9mWUA1+80m9q8on7SYL36ORhrea7GKy/qQ==", - "requires": { - "@fullcalendar/common": "~5.5.0", - "tslib": "^2.0.3" - } - }, - "@fullcalendar/interaction": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/@fullcalendar/interaction/-/interaction-5.5.0.tgz", - "integrity": "sha512-LKc4VeESBkBkrI/sAtV++f4qUleYyt7STBrnuc5Mpojv7jg5x5XZ1rfOarLwRbEYSvbo6CwccDrsaLTbC1Qk2A==", - "requires": { - "@fullcalendar/common": "~5.5.0", - "tslib": "^2.0.3" - } - }, - "@fullcalendar/list": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/@fullcalendar/list/-/list-5.5.0.tgz", - "integrity": "sha512-hC+EKrXtnj71rq4gq8vIhb12dlOxu07BuOTzU1kxgB3BdhuO1RiAPm1TCKdYpQjtUTCRT23Ocvs+m/Ei/xh90Q==", - "requires": { - "@fullcalendar/common": "~5.5.0", - "tslib": "^2.0.3" - } - }, - "@fullcalendar/premium-common": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/@fullcalendar/premium-common/-/premium-common-5.5.0.tgz", - "integrity": "sha512-8794uG3DES4eRr+q8shnhcVOEN0hJdNexfXZgYx/D2euWGsLNKo8+Xi4oQLcmEGZg1my9dmfzsqiHpRn2lDGSQ==", - "requires": { - "@fullcalendar/common": "~5.5.0", - "tslib": "^2.0.3" - } - }, - "@fullcalendar/resource-common": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/@fullcalendar/resource-common/-/resource-common-5.5.0.tgz", - "integrity": "sha512-Bp1oqL30p9UGJ28ippsXtaHrBxbDXdcM5z/ZLEnmjbDB2wAHhy4oMXHZITbDvv1NlCqw0HUKjNz/gjWIhhSFiA==", - "requires": { - "@fullcalendar/common": "~5.5.0", - "@fullcalendar/premium-common": "~5.5.0", - "tslib": "^2.0.3" - } - }, - "@fullcalendar/resource-timeline": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/@fullcalendar/resource-timeline/-/resource-timeline-5.5.0.tgz", - "integrity": "sha512-HLjs9RbidX9p3XStOuOz/8x/jPBJ4/9B2SUSU7KlhjEWnwvaxAgfeNApXSFy1c2IUh40t3rxf31Z3z+HcbEyZw==", - "requires": { - "@fullcalendar/common": "~5.5.0", - "@fullcalendar/premium-common": "~5.5.0", - "@fullcalendar/resource-common": "~5.5.0", - "@fullcalendar/scrollgrid": "~5.5.0", - "@fullcalendar/timeline": "~5.5.0", - "tslib": "^2.0.3" - } - }, - "@fullcalendar/scrollgrid": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/@fullcalendar/scrollgrid/-/scrollgrid-5.5.0.tgz", - "integrity": "sha512-xwWggE+rd1LkbdNeMNC/mevm5wRS3exBjggndCLuae6XzmGgzdx2HDJrtTbJAmJ2XSEbo3ugP4VGNv2XoAMPPQ==", - "requires": { - "@fullcalendar/common": "~5.5.0", - "@fullcalendar/premium-common": "~5.5.0", - "tslib": "^2.0.3" - } - }, - "@fullcalendar/timegrid": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/@fullcalendar/timegrid/-/timegrid-5.5.0.tgz", - "integrity": "sha512-Y4k3/ux031pL7WQWJnvJbGcOua+zg1BGn08xeycgBICNqVMIhKm++uCnLzCvHGDV4Gp7oRjNAw/nJw4M1kMoXg==", - "requires": { - "@fullcalendar/common": "~5.5.0", - "@fullcalendar/daygrid": "~5.5.0", - "tslib": "^2.0.3" - } - }, - "@fullcalendar/timeline": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/@fullcalendar/timeline/-/timeline-5.5.0.tgz", - "integrity": "sha512-W7Bj7X/+tKK62oT/KrSrcelpYFVt3MgEDnt2ju9BZzkjk5LX+Xa8jiH+PLFtUZasF9pJ50i86KICC9WnFZzu3g==", - "requires": { - "@fullcalendar/common": "~5.5.0", - "@fullcalendar/premium-common": "~5.5.0", - "@fullcalendar/scrollgrid": "~5.5.0", - "tslib": "^2.0.3" - } - }, - "@fullcalendar/vue": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/@fullcalendar/vue/-/vue-5.5.0.tgz", - "integrity": "sha512-CLqUyEc1OvPSmYl8zA92WZktoHZvDN3q58f4g91IOcjTWsBP3fVie9eOVFN6OxHTwQ9nekvnC0Y/fM4OFZJ1hQ==", - "requires": { - "@fullcalendar/core": "~5.5.0", - "tslib": "^2.0.3" - } - }, - "@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.2", - "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.2.tgz", - "integrity": "sha512-tsAQNx32a8CoFhjhijUIhI4kccIAgmGhy8LZMZgGfmXcpMbPRUqn5LWmgRttILi6yeGmBJd2xsPkFMs0PzgPCw==", - "dev": true - }, - "@jest/console": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/@jest/console/-/console-26.6.2.tgz", - "integrity": "sha512-IY1R2i2aLsLr7Id3S6p2BA82GNWryt4oSvEXLAKc+L2zdi89dSkE8xC1C+0kpATG4JhBJREnQOH7/zmccM2B0g==", - "dev": true, - "requires": { - "@jest/types": "^26.6.2", - "@types/node": "*", - "chalk": "^4.0.0", - "jest-message-util": "^26.6.2", - "jest-util": "^26.6.2", - "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.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", - "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", - "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": "26.6.3", - "resolved": "https://registry.npmjs.org/@jest/core/-/core-26.6.3.tgz", - "integrity": "sha512-xvV1kKbhfUqFVuZ8Cyo+JPpipAHHAV3kcDBftiduK8EICXmTFddryy3P7NfZt8Pv37rA9nEJBKCCkglCPt/Xjw==", - "dev": true, - "requires": { - "@jest/console": "^26.6.2", - "@jest/reporters": "^26.6.2", - "@jest/test-result": "^26.6.2", - "@jest/transform": "^26.6.2", - "@jest/types": "^26.6.2", - "@types/node": "*", - "ansi-escapes": "^4.2.1", - "chalk": "^4.0.0", - "exit": "^0.1.2", - "graceful-fs": "^4.2.4", - "jest-changed-files": "^26.6.2", - "jest-config": "^26.6.3", - "jest-haste-map": "^26.6.2", - "jest-message-util": "^26.6.2", - "jest-regex-util": "^26.0.0", - "jest-resolve": "^26.6.2", - "jest-resolve-dependencies": "^26.6.3", - "jest-runner": "^26.6.3", - "jest-runtime": "^26.6.3", - "jest-snapshot": "^26.6.2", - "jest-util": "^26.6.2", - "jest-validate": "^26.6.2", - "jest-watcher": "^26.6.2", - "micromatch": "^4.0.2", - "p-each-series": "^2.1.0", - "rimraf": "^3.0.0", - "slash": "^3.0.0", - "strip-ansi": "^6.0.0" - }, - "dependencies": { - "ansi-escapes": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.1.tgz", - "integrity": "sha512-JWF7ocqNrp8u9oqpgV+wH5ftbt+cfvv+PTjOvKLT3AdYly/LmORARfEVT1iyjwN+4MqE5UmVKoAdIBqeoCHgLA==", - "dev": true, - "requires": { - "type-fest": "^0.11.0" - } - }, - "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", - "dev": true - }, - "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.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", - "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", - "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.2", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", - "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", - "dev": true, - "requires": { - "braces": "^3.0.1", - "picomatch": "^2.0.5" - } - }, - "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" - } - }, - "slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "dev": true - }, - "strip-ansi": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", - "dev": true, - "requires": { - "ansi-regex": "^5.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" - } - }, - "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" - } - }, - "type-fest": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.11.0.tgz", - "integrity": "sha512-OdjXJxnCN1AvyLSzeKIgXTXxV+99ZuXl3Hpo9XpJAv9MBcHrrJOQ5kV7ypXOuQie+AmWG25hLbiKdwYTifzcfQ==", - "dev": true - } - } - }, - "@jest/environment": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-26.6.2.tgz", - "integrity": "sha512-nFy+fHl28zUrRsCeMB61VDThV1pVTtlEokBRgqPrcT1JNq4yRNIyTHfyht6PqtUvY9IsuLGTrbG8kPXjSZIZwA==", - "dev": true, - "requires": { - "@jest/fake-timers": "^26.6.2", - "@jest/types": "^26.6.2", - "@types/node": "*", - "jest-mock": "^26.6.2" - } - }, - "@jest/fake-timers": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-26.6.2.tgz", - "integrity": "sha512-14Uleatt7jdzefLPYM3KLcnUl1ZNikaKq34enpb5XG9i81JpppDb5muZvonvKyrl7ftEHkKS5L5/eB/kxJ+bvA==", - "dev": true, - "requires": { - "@jest/types": "^26.6.2", - "@sinonjs/fake-timers": "^6.0.1", - "@types/node": "*", - "jest-message-util": "^26.6.2", - "jest-mock": "^26.6.2", - "jest-util": "^26.6.2" - } - }, - "@jest/globals": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-26.6.2.tgz", - "integrity": "sha512-85Ltnm7HlB/KesBUuALwQ68YTU72w9H2xW9FjZ1eL1U3lhtefjjl5c2MiUbpXt/i6LaPRvoOFJ22yCBSfQ0JIA==", - "dev": true, - "requires": { - "@jest/environment": "^26.6.2", - "@jest/types": "^26.6.2", - "expect": "^26.6.2" - } - }, - "@jest/reporters": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-26.6.2.tgz", - "integrity": "sha512-h2bW53APG4HvkOnVMo8q3QXa6pcaNt1HkwVsOPMBV6LD/q9oSpxNSYZQYkAnjdMjrJ86UuYeLo+aEZClV6opnw==", - "dev": true, - "requires": { - "@bcoe/v8-coverage": "^0.2.3", - "@jest/console": "^26.6.2", - "@jest/test-result": "^26.6.2", - "@jest/transform": "^26.6.2", - "@jest/types": "^26.6.2", - "chalk": "^4.0.0", - "collect-v8-coverage": "^1.0.0", - "exit": "^0.1.2", - "glob": "^7.1.2", - "graceful-fs": "^4.2.4", - "istanbul-lib-coverage": "^3.0.0", - "istanbul-lib-instrument": "^4.0.3", - "istanbul-lib-report": "^3.0.0", - "istanbul-lib-source-maps": "^4.0.0", - "istanbul-reports": "^3.0.2", - "jest-haste-map": "^26.6.2", - "jest-resolve": "^26.6.2", - "jest-util": "^26.6.2", - "jest-worker": "^26.6.2", - "node-notifier": "^8.0.0", - "slash": "^3.0.0", - "source-map": "^0.6.0", - "string-length": "^4.0.1", - "terminal-link": "^2.0.0", - "v8-to-istanbul": "^7.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.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", - "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", - "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": "26.6.2", - "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-26.6.2.tgz", - "integrity": "sha512-YwYcCwAnNmOVsZ8mr3GfnzdXDAl4LaenZP5z+G0c8bzC9/dugL8zRmxZzdoTl4IaS3CryS1uWnROLPFmb6lVvA==", - "dev": true, - "requires": { - "callsites": "^3.0.0", - "graceful-fs": "^4.2.4", - "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": "26.6.2", - "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-26.6.2.tgz", - "integrity": "sha512-5O7H5c/7YlojphYNrK02LlDIV2GNPYisKwHm2QTKjNZeEzezCbwYs9swJySv2UfPMyZ0VdsmMv7jIlD/IKYQpQ==", - "dev": true, - "requires": { - "@jest/console": "^26.6.2", - "@jest/types": "^26.6.2", - "@types/istanbul-lib-coverage": "^2.0.0", - "collect-v8-coverage": "^1.0.0" - } - }, - "@jest/test-sequencer": { - "version": "26.6.3", - "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-26.6.3.tgz", - "integrity": "sha512-YHlVIjP5nfEyjlrSr8t/YdNfU/1XEt7c5b4OxcXCjyRhjzLYu/rO69/WHPuYcbCWkz8kAeZVZp2N2+IOLLEPGw==", - "dev": true, - "requires": { - "@jest/test-result": "^26.6.2", - "graceful-fs": "^4.2.4", - "jest-haste-map": "^26.6.2", - "jest-runner": "^26.6.3", - "jest-runtime": "^26.6.3" - } - }, - "@jest/transform": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-26.6.2.tgz", - "integrity": "sha512-E9JjhUgNzvuQ+vVAL21vlyfy12gP0GhazGgJC4h6qUt1jSdUXGWJ1wfu/X7Sd8etSgxV4ovT1pb9v5D6QW4XgA==", - "dev": true, - "requires": { - "@babel/core": "^7.1.0", - "@jest/types": "^26.6.2", - "babel-plugin-istanbul": "^6.0.0", - "chalk": "^4.0.0", - "convert-source-map": "^1.4.0", - "fast-json-stable-stringify": "^2.0.0", - "graceful-fs": "^4.2.4", - "jest-haste-map": "^26.6.2", - "jest-regex-util": "^26.0.0", - "jest-util": "^26.6.2", - "micromatch": "^4.0.2", - "pirates": "^4.0.1", - "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.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", - "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", - "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.2", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", - "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", - "dev": true, - "requires": { - "braces": "^3.0.1", - "picomatch": "^2.0.5" - } - }, - "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": "26.6.2", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz", - "integrity": "sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==", - "dev": true, - "requires": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^15.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.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", - "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", - "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" - } - }, - "@nextcloud/axios": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/@nextcloud/axios/-/axios-1.6.0.tgz", - "integrity": "sha512-yhCEFIQza1LBWJqq66ZcPxIjG60A/rUdw+oF7T796HXfW1JFsrRORmmTmV0b2Bxd0v9xSkW3Lgb3hKNk1aQBSw==", - "requires": { - "@babel/cli": "^7.8.4", - "@babel/core": "^7.9.0", - "@babel/preset-env": "^7.9.0", - "@babel/preset-typescript": "^7.9.0", - "@nextcloud/auth": "^1.2.2", - "axios": "^0.21.0", - "core-js": "^3.6.4" - } - }, - "@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": "1.0.0", - "resolved": "https://registry.npmjs.org/@nextcloud/browserslist-config/-/browserslist-config-1.0.0.tgz", - "integrity": "sha512-f+sKpdLZXkODV+OY39K1M+Spmd4RgxmtEXmNn4Bviv4R7uBFHXuw+JX9ZdfDeOryfHjJ/TRQxQEp0GMpBwZFUw==", - "dev": true - }, - "@nextcloud/capabilities": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@nextcloud/capabilities/-/capabilities-1.0.2.tgz", - "integrity": "sha512-HR5vnT2GKTvoQla/WdP+V0/MD1eAGUNWCM0QXVGXQ0TCHb0AORYYMdEQafROsjNSH2kriArFnS/l3YZQrUa9yA==", - "requires": { - "@nextcloud/initial-state": "^1.1.2", - "core-js": "^3.6.4" - } - }, - "@nextcloud/dialogs": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/@nextcloud/dialogs/-/dialogs-3.1.1.tgz", - "integrity": "sha512-T816Jo5Dz/NrMXn+rDDAkb1mLcCPD2ZKFX7cVjYvfKP9Ta9LxaRlvwAhS/K7bQ17fpjX8jAmqwrhO8MWDnGGmA==", - "requires": { - "@nextcloud/l10n": "^1.3.0", - "@nextcloud/typings": "^1.0.0", - "core-js": "^3.6.4", - "toastify-js": "^1.9.1" - }, - "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": "1.2.0", - "resolved": "https://registry.npmjs.org/@nextcloud/eslint-config/-/eslint-config-1.2.0.tgz", - "integrity": "sha512-aI89LvMy/NoJBlaO45RGGIh/mzRwNpykUqi8RV+5p1oWu4qSe3V2mF/TAt/hWRZf5h1p+Wh95fiZ8XGlECrySA==", - "dev": true - }, - "@nextcloud/eslint-plugin": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/@nextcloud/eslint-plugin/-/eslint-plugin-1.5.0.tgz", - "integrity": "sha512-cM8+xlJy1FPiADGBcFn3mB2RYQLQjME/jMF5YVEIA1AQGavgT4JHo+I6DVIBoTyoGbAGrTf94FDrRKdoIm1JWQ==", - "dev": true, - "requires": { - "requireindex": "^1.2.0" - } - }, - "@nextcloud/event-bus": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@nextcloud/event-bus/-/event-bus-1.2.0.tgz", - "integrity": "sha512-pNS0R6Mvgj4WnbJQ8LYjxRjCbRndpwjHNyZYm0zl8U71gbHsUvQIIzTdW7WYg6Nz/FjAlrdmDXJDFLh1DDcIFA==", - "requires": { - "@types/semver": "^7.1.0", - "core-js": "^3.6.2", - "semver": "^7.3.2" - } - }, - "@nextcloud/initial-state": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@nextcloud/initial-state/-/initial-state-1.2.0.tgz", - "integrity": "sha512-/ZN4f/gihvRPXa7S2mgV2Is5QyEGqb4/Z2OGHxilJV86ZKBnR9DlA5dFqtzdV86dHVsZ+PfthUI3vDPJ81hTJA==", - "requires": { - "core-js": "^3.6.4" - } - }, - "@nextcloud/l10n": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/@nextcloud/l10n/-/l10n-1.4.1.tgz", - "integrity": "sha512-19LPGmozfuLCeO4xRS9Y1Av6DquqVgBH2kQyWL6dJ49AynMGN9uVOrNv3GYoqULzEcHoetMAt+8PLTdE6zKbvA==", - "requires": { - "core-js": "^3.6.4", - "node-gettext": "^3.0.0" - } - }, - "@nextcloud/logger": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@nextcloud/logger/-/logger-1.1.2.tgz", - "integrity": "sha512-cteyvWnUzDVqh2ppwLVS4+0LCr68SW8K4NOkx9RNoeJzTbbSc44wtSRlcpj5yUoiBUGEUO9p81Z7xrr8OIWa4w==", - "requires": { - "@nextcloud/auth": "^1.2.2", - "babel-plugin-transform-class-properties": "^6.24.1", - "core-js": "^3.6.4" - } - }, - "@nextcloud/moment": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@nextcloud/moment/-/moment-1.1.1.tgz", - "integrity": "sha512-lh7Xn9Ver12pLfE0rpjxE6x/ipscAV+7fw1u+7TJak1QR1T1UDRMZ9dA7z77W8mZH2C3yveTh/VEHZIflKBrng==", - "requires": { - "@nextcloud/l10n": "1.2.0", - "core-js": "3.6.4", - "jed": "^1.1.1", - "moment": "2.24.0", - "node-gettext": "^2.0.0" - }, - "dependencies": { - "@nextcloud/l10n": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@nextcloud/l10n/-/l10n-1.2.0.tgz", - "integrity": "sha512-aPsVAewCYMNe2h0yse3Fj7LofvnvFPimojw24K47ip1+I1gawMIsQL+BYAnN8wzlcbsDTEc7I1FxtOh+8dHHIA==", - "requires": { - "core-js": "^3.6.4", - "node-gettext": "^3.0.0" - }, - "dependencies": { - "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" - } - } - } - }, - "core-js": { - "version": "3.6.4", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.6.4.tgz", - "integrity": "sha512-4paDGScNgZP2IXXilaffL9X7968RuvwlkK3xWtZRVqgd8SYNiVKRJvkFd1aqqEuPfN7E68ZHEp9hDj6lHj4Hyw==" - }, - "node-gettext": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/node-gettext/-/node-gettext-2.1.0.tgz", - "integrity": "sha512-vsHImHl+Py0vB7M2UXcFEJ5NJ3950gcja45YclBFtYxYeZiqdfQdcu+G9s4L7jpRFSh/J/7VoS3upR4JM1nS+g==", - "requires": { - "lodash.get": "^4.4.2" - } - } - } - }, - "@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/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": "2.9.0", - "resolved": "https://registry.npmjs.org/@nextcloud/vue/-/vue-2.9.0.tgz", - "integrity": "sha512-OaddUORB2MdrXtmqnXJlbftYMGBBX339utLe2b4jz2qaT/IvvaTmwet6qSl/736upLaJveIoPrdyn3FZea5CUg==", - "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.0", - "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", - "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.2" - }, - "dependencies": { - "@nextcloud/dialogs": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/@nextcloud/dialogs/-/dialogs-3.1.1.tgz", - "integrity": "sha512-T816Jo5Dz/NrMXn+rDDAkb1mLcCPD2ZKFX7cVjYvfKP9Ta9LxaRlvwAhS/K7bQ17fpjX8jAmqwrhO8MWDnGGmA==", - "requires": { - "@nextcloud/l10n": "^1.3.0", - "@nextcloud/typings": "^1.0.0", - "core-js": "^3.6.4", - "toastify-js": "^1.9.1" - } - }, - "@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/vue-dashboard": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@nextcloud/vue-dashboard/-/vue-dashboard-1.0.1.tgz", - "integrity": "sha512-QKOf0qm4UYobuC3djLYwICSuj29H6xnm24IHetc0AMsrfhwPNN1/CC5IWEl1uKCCvwI0NA02HXCVFLtUErlgyg==", - "requires": { - "@nextcloud/vue": "^2.3.0", - "core-js": "^3.6.4", - "vue": "^2.6.11" - } - }, - "@nicolo-ribaudo/chokidar-2": { - "version": "2.1.8-no-fsevents", - "resolved": "https://registry.npmjs.org/@nicolo-ribaudo/chokidar-2/-/chokidar-2-2.1.8-no-fsevents.tgz", - "integrity": "sha512-+nb9vWloHNNMFHjGofEam3wopE3m1yuambrrd/fnPc+lFOMB9ROTqQlche9ByFWNkdNqfSgR/kkQtQ8DzEWt2w==", - "optional": true, - "requires": { - "anymatch": "^2.0.0", - "async-each": "^1.0.1", - "braces": "^2.3.2", - "glob-parent": "^3.1.0", - "inherits": "^2.0.3", - "is-binary-path": "^1.0.0", - "is-glob": "^4.0.0", - "normalize-path": "^3.0.0", - "path-is-absolute": "^1.0.0", - "readdirp": "^2.2.1", - "upath": "^1.1.1" - } - }, - "@nodelib/fs.scandir": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.4.tgz", - "integrity": "sha512-33g3pMJk3bg5nXbL/+CY6I2eJDzZAni49PfJnL5fghPTggPvBd/pFNSgJsdAgWptuFu7qq/ERvOYFlhvsLTCKA==", - "dev": true, - "requires": { - "@nodelib/fs.stat": "2.0.4", - "run-parallel": "^1.1.9" - } - }, - "@nodelib/fs.stat": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.4.tgz", - "integrity": "sha512-IYlHJA0clt2+Vg7bccq+TzRdJvv19c2INqBSsoOLp1je7xjtr7J26+WXR72MCdvU9q1qTzIWDfhMf+DRvQJK4Q==", - "dev": true - }, - "@nodelib/fs.walk": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.6.tgz", - "integrity": "sha512-8Broas6vTtW4GIXTAHDoE32hnN2M5ykgCpWGbuXHQ15vEMqr23pB76e/GZcYsZCHALv50ktd24qhEyKr6wBtow==", - "dev": true, - "requires": { - "@nodelib/fs.scandir": "2.1.4", - "fastq": "^1.6.0" - } - }, - "@npmcli/move-file": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@npmcli/move-file/-/move-file-1.0.1.tgz", - "integrity": "sha512-Uv6h1sT+0DrblvIrolFtbvM1FgWm+/sy4B3pvLp67Zys+thcukzS5ekn7HsZFGpWP4Q3fYJCljbWQE/XivMRLw==", - "dev": true, - "requires": { - "mkdirp": "^1.0.4" - } - }, - "@sinonjs/commons": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.1.tgz", - "integrity": "sha512-892K+kWUUi3cl+LlqEWIDrhvLgdL79tECi8JZUyq6IviKy/DNhuzCRlbHUjxK89f4ypPMMaFnFuR9Ie6DoIMsw==", - "dev": true, - "requires": { - "type-detect": "4.0.8" - } - }, - "@sinonjs/fake-timers": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-6.0.1.tgz", - "integrity": "sha512-MZPUxrmFubI36XS1DI3qmI0YdN1gks62JtFZvxR67ljjSNCeK6U08Zx4msEWOXuofgqUt6zPHSi1H9fbjR/NRA==", - "dev": true, - "requires": { - "@sinonjs/commons": "^1.7.0" - } - }, - "@stylelint/postcss-css-in-js": { - "version": "0.37.2", - "resolved": "https://registry.npmjs.org/@stylelint/postcss-css-in-js/-/postcss-css-in-js-0.37.2.tgz", - "integrity": "sha512-nEhsFoJurt8oUmieT8qy4nk81WRHmJynmVwn/Vts08PL9fhgIsMhk1GId5yAN643OzqEEb5S/6At2TZW7pqPDA==", - "dev": true, - "requires": { - "@babel/core": ">=7.9.0" - } - }, - "@stylelint/postcss-markdown": { - "version": "0.36.2", - "resolved": "https://registry.npmjs.org/@stylelint/postcss-markdown/-/postcss-markdown-0.36.2.tgz", - "integrity": "sha512-2kGbqUVJUGE8dM+bMzXG/PYUWKkjLIkRLWNh39OaADkiabDRdw8ATFCgbMz5xdIcvwspPAluSL7uY+ZiTWdWmQ==", - "dev": true, - "requires": { - "remark": "^13.0.0", - "unist-util-find-all-after": "^3.0.2" - } - }, - "@types/babel__core": { - "version": "7.1.12", - "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.12.tgz", - "integrity": "sha512-wMTHiiTiBAAPebqaPiPDLFA4LYPKr6Ph0Xq/6rq1Ur3v66HXyG+clfR9CNETkD7MQS8ZHvpQOtA53DLws5WAEQ==", - "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.2", - "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.2.tgz", - "integrity": "sha512-MdSJnBjl+bdwkLskZ3NGFp9YcXGx5ggLpQQPqtgakVhsWK0hTtNYhjpZLlWQTviGTvF8at+Bvli3jV7faPdgeQ==", - "dev": true, - "requires": { - "@babel/types": "^7.0.0" - } - }, - "@types/babel__template": { - "version": "7.4.0", - "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.0.tgz", - "integrity": "sha512-NTPErx4/FiPCGScH7foPyr+/1Dkzkni+rHiYHHoTjvwou7AQzJkNeD60A9CXRy+ZEN2B1bggmkTMCDb+Mv5k+A==", - "dev": true, - "requires": { - "@babel/parser": "^7.1.0", - "@babel/types": "^7.0.0" - } - }, - "@types/babel__traverse": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.11.0.tgz", - "integrity": "sha512-kSjgDMZONiIfSH1Nxcr5JIRMwUetDki63FSQfpTCz8ogF3Ulqm8+mr5f78dUYs6vMiB6gBusQqfQmBvHZj/lwg==", - "dev": true, - "requires": { - "@babel/types": "^7.3.0" - } - }, - "@types/eslint-visitor-keys": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@types/eslint-visitor-keys/-/eslint-visitor-keys-1.0.0.tgz", - "integrity": "sha512-OCutwjDZ4aFS6PB1UZ988C4YgwlBHJd6wCeQqaLdmadZ/7e+w79+hbMUFC1QXDNCmdyoRfAFdm0RypzwR+Qpag==", - "dev": true - }, - "@types/graceful-fs": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.3.tgz", - "integrity": "sha512-AiHRaEB50LQg0pZmm659vNBb9f4SJ0qrAnteuzhSeAUcJKxoYgEnprg/83kppCnc2zvtCKbdZry1a5pVY3lOTQ==", - "dev": 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.0", - "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.0.tgz", - "integrity": "sha512-nwKNbvnwJ2/mndE9ItP/zc2TCzw6uuodnF4EHYWD+gCQDVBuRQL5UzbZD0/ezy1iKsFU2ZQiDqg4M9dN4+wZgA==", - "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.6", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.6.tgz", - "integrity": "sha512-3c+yGKvVP5Y9TYBEibGNR+kLtijnj7mYrXRg+WpFb2X9xm04g/DXYkfg4hmzJQosc9snFNUPkbYIhu+KAm6jJw==", - "dev": true - }, - "@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 - }, - "@types/mdast": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.3.tgz", - "integrity": "sha512-SXPBMnFVQg1s00dlMCc/jCdvPqdE4mXaMMCeRlxLDmTAEoegHT53xKtkDnzDTOcmMHUfcjyf36/YYZ6SxRdnsw==", - "dev": true, - "requires": { - "@types/unist": "*" - } - }, - "@types/minimist": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.1.tgz", - "integrity": "sha512-fZQQafSREFyuZcdWFAExYjBiCL7AUCdgsk80iO0q4yihYYdcIiH28CcuPTGFgLOCC8RlW49GSQxdHwZP+I7CNg==", - "dev": true - }, - "@types/node": { - "version": "14.6.4", - "resolved": "https://registry.npmjs.org/@types/node/-/node-14.6.4.tgz", - "integrity": "sha512-Wk7nG1JSaMfMpoMJDKUsWYugliB2Vy55pdjLpmLixeyMi7HizW2I/9QoxsPCkXl3dO+ZOVqPumKaDUv5zJu2uQ==", - "dev": true - }, - "@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 - }, - "@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 - }, - "@types/prettier": { - "version": "2.1.6", - "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-2.1.6.tgz", - "integrity": "sha512-6gOkRe7OIioWAXfnO/2lFiv+SJichKVSys1mSsgyrYHSEjk8Ctv4tSR/Odvnu+HWlH2C8j53dahU03XmQdd5fA==", - "dev": true - }, - "@types/semver": { - "version": "7.3.4", - "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.3.4.tgz", - "integrity": "sha512-+nVsLKlcUCeMzD2ufHEYuJ9a2ovstb6Dp52A5VsoKxDXgvE051XgHI/33I1EymwkRGQkwnA0LkhnUzituGs4EQ==" - }, - "@types/stack-utils": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.0.tgz", - "integrity": "sha512-RJJrrySY7A8havqpGObOB4W92QXKJo63/jFLLgpvOtsGUqbQZ9Sbgl35KMm1DjC6j7AvmmU2bIno+3IyEaemaw==", - "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/unist": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.3.tgz", - "integrity": "sha512-FvUupuM3rlRsRtCN+fDudtmytGO6iHJuuRKS1Ss0pG5z8oX0diNEw94UEL7hgDbpN94rgaK5R7sWm6RrSkZuAQ==", - "dev": true - }, - "@types/yargs": { - "version": "15.0.5", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.5.tgz", - "integrity": "sha512-Dk/IDOPtOgubt/IaevIUbTgV7doaKkoorvOyYM2CMwuDyP89bekI7H4xLIwunNYiK9jhCkmc6pUrJk3cj2AB9w==", - "dev": true, - "requires": { - "@types/yargs-parser": "*" - } - }, - "@types/yargs-parser": { - "version": "15.0.0", - "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-15.0.0.tgz", - "integrity": "sha512-FA/BWv8t8ZWJ+gEOnLLd8ygxH/2UFbAvgEonyfN6yWGLKc7zVjbpl2Y4CTjid9h2RfgPP6SEt6uHwEOply00yw==", - "dev": true - }, - "@typescript-eslint/experimental-utils": { - "version": "3.10.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-3.10.1.tgz", - "integrity": "sha512-DewqIgscDzmAfd5nOGe4zm6Bl7PKtMG2Ad0KG8CUZAHlXfAKTF9Ol5PXhiMh39yRL2ChRH1cuuUGOcVyyrhQIw==", - "dev": true, - "requires": { - "@types/json-schema": "^7.0.3", - "@typescript-eslint/types": "3.10.1", - "@typescript-eslint/typescript-estree": "3.10.1", - "eslint-scope": "^5.0.0", - "eslint-utils": "^2.0.0" - }, - "dependencies": { - "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==", - "dev": 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, - "requires": { - "eslint-visitor-keys": "^1.1.0" - } - } - } - }, - "@typescript-eslint/parser": { - "version": "3.10.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-3.10.1.tgz", - "integrity": "sha512-Ug1RcWcrJP02hmtaXVS3axPPTTPnZjupqhgj+NnZ6BCkwSImWk/283347+x9wN+lqOdK9Eo3vsyiyDHgsmiEJw==", - "dev": true, - "requires": { - "@types/eslint-visitor-keys": "^1.0.0", - "@typescript-eslint/experimental-utils": "3.10.1", - "@typescript-eslint/types": "3.10.1", - "@typescript-eslint/typescript-estree": "3.10.1", - "eslint-visitor-keys": "^1.1.0" - } - }, - "@typescript-eslint/types": { - "version": "3.10.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-3.10.1.tgz", - "integrity": "sha512-+3+FCUJIahE9q0lDi1WleYzjCwJs5hIsbugIgnbB+dSCYUxl8L6PwmsyOPFZde2hc1DlTo/xnkOgiTLSyAbHiQ==", - "dev": true - }, - "@typescript-eslint/typescript-estree": { - "version": "3.10.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-3.10.1.tgz", - "integrity": "sha512-QbcXOuq6WYvnB3XPsZpIwztBoquEYLXh2MtwVU+kO8jgYCiv4G5xrSP/1wg4tkvrEE+esZVquIPX/dxPlePk1w==", - "dev": true, - "requires": { - "@typescript-eslint/types": "3.10.1", - "@typescript-eslint/visitor-keys": "3.10.1", - "debug": "^4.1.1", - "glob": "^7.1.6", - "is-glob": "^4.0.1", - "lodash": "^4.17.15", - "semver": "^7.3.2", - "tsutils": "^3.17.1" - }, - "dependencies": { - "debug": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", - "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", - "dev": true, - "requires": { - "ms": "2.1.2" - } - }, - "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 - } - } - }, - "@typescript-eslint/visitor-keys": { - "version": "3.10.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-3.10.1.tgz", - "integrity": "sha512-9JgC82AaQeglebjZMgYR5wgmfUdUc+EitGUUMW8u2nDckaeimzW+VsoLV6FoimPv2id3VQzfjwBxEMVz08ameQ==", - "dev": true, - "requires": { - "eslint-visitor-keys": "^1.1.0" - } - }, - "@vue/component-compiler-utils": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/@vue/component-compiler-utils/-/component-compiler-utils-3.2.0.tgz", - "integrity": "sha512-lejBLa7xAMsfiZfNp7Kv51zOzifnb29FwdnMLa96z26kXErPFioSf9BMcePVIQ6/Gc6/mC0UrPpxAWIHyae0vw==", - "dev": 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.14", - "postcss-selector-parser": "^6.0.2", - "prettier": "^1.18.2", - "source-map": "~0.6.1", - "vue-template-es2015-compiler": "^1.9.0" - }, - "dependencies": { - "prettier": { - "version": "1.19.1", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-1.19.1.tgz", - "integrity": "sha512-s7PoyDv/II1ObgQunCbB9PdLmUcBZcnWOcxDh7O0N/UwDEsHyqkW+Qh28jW+mVuCdx7gLB0BotYI1Y6uI9iyew==", - "dev": true, - "optional": 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 - } - } - }, - "@vue/test-utils": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/@vue/test-utils/-/test-utils-1.1.3.tgz", - "integrity": "sha512-BAY1Cwe9JpkJseimC295EW3YlAmgIJI9OPkg2FSP62+PHZooB0B+wceDi9TYyU57oqzL0yLbcP73JKFpKiLc9A==", - "dev": true, - "requires": { - "dom-event-types": "^1.0.0", - "lodash": "^4.17.15", - "pretty": "^2.0.0" - } - }, - "@webassemblyjs/ast": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.9.0.tgz", - "integrity": "sha512-C6wW5L+b7ogSDVqymbkkvuW9kruN//YisMED04xzeBBqjHa2FYnmvOlS6Xj68xWQRgWvI9cIglsjFowH/RJyEA==", - "dev": true, - "requires": { - "@webassemblyjs/helper-module-context": "1.9.0", - "@webassemblyjs/helper-wasm-bytecode": "1.9.0", - "@webassemblyjs/wast-parser": "1.9.0" - } - }, - "@webassemblyjs/floating-point-hex-parser": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.9.0.tgz", - "integrity": "sha512-TG5qcFsS8QB4g4MhrxK5TqfdNe7Ey/7YL/xN+36rRjl/BlGE/NcBvJcqsRgCP6Z92mRE+7N50pRIi8SmKUbcQA==", - "dev": true - }, - "@webassemblyjs/helper-api-error": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.9.0.tgz", - "integrity": "sha512-NcMLjoFMXpsASZFxJ5h2HZRcEhDkvnNFOAKneP5RbKRzaWJN36NC4jqQHKwStIhGXu5mUWlUUk7ygdtrO8lbmw==", - "dev": true - }, - "@webassemblyjs/helper-buffer": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.9.0.tgz", - "integrity": "sha512-qZol43oqhq6yBPx7YM3m9Bv7WMV9Eevj6kMi6InKOuZxhw+q9hOkvq5e/PpKSiLfyetpaBnogSbNCfBwyB00CA==", - "dev": true - }, - "@webassemblyjs/helper-code-frame": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.9.0.tgz", - "integrity": "sha512-ERCYdJBkD9Vu4vtjUYe8LZruWuNIToYq/ME22igL+2vj2dQ2OOujIZr3MEFvfEaqKoVqpsFKAGsRdBSBjrIvZA==", - "dev": true, - "requires": { - "@webassemblyjs/wast-printer": "1.9.0" - } - }, - "@webassemblyjs/helper-fsm": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.9.0.tgz", - "integrity": "sha512-OPRowhGbshCb5PxJ8LocpdX9Kl0uB4XsAjl6jH/dWKlk/mzsANvhwbiULsaiqT5GZGT9qinTICdj6PLuM5gslw==", - "dev": true - }, - "@webassemblyjs/helper-module-context": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-module-context/-/helper-module-context-1.9.0.tgz", - "integrity": "sha512-MJCW8iGC08tMk2enck1aPW+BE5Cw8/7ph/VGZxwyvGbJwjktKkDK7vy7gAmMDx88D7mhDTCNKAW5tED+gZ0W8g==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.9.0" - } - }, - "@webassemblyjs/helper-wasm-bytecode": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.9.0.tgz", - "integrity": "sha512-R7FStIzyNcd7xKxCZH5lE0Bqy+hGTwS3LJjuv1ZVxd9O7eHCedSdrId/hMOd20I+v8wDXEn+bjfKDLzTepoaUw==", - "dev": true - }, - "@webassemblyjs/helper-wasm-section": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.9.0.tgz", - "integrity": "sha512-XnMB8l3ek4tvrKUUku+IVaXNHz2YsJyOOmz+MMkZvh8h1uSJpSen6vYnw3IoQ7WwEuAhL8Efjms1ZWjqh2agvw==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.9.0", - "@webassemblyjs/helper-buffer": "1.9.0", - "@webassemblyjs/helper-wasm-bytecode": "1.9.0", - "@webassemblyjs/wasm-gen": "1.9.0" - } - }, - "@webassemblyjs/ieee754": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.9.0.tgz", - "integrity": "sha512-dcX8JuYU/gvymzIHc9DgxTzUUTLexWwt8uCTWP3otys596io0L5aW02Gb1RjYpx2+0Jus1h4ZFqjla7umFniTg==", - "dev": true, - "requires": { - "@xtuc/ieee754": "^1.2.0" - } - }, - "@webassemblyjs/leb128": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.9.0.tgz", - "integrity": "sha512-ENVzM5VwV1ojs9jam6vPys97B/S65YQtv/aanqnU7D8aSoHFX8GyhGg0CMfyKNIHBuAVjy3tlzd5QMMINa7wpw==", - "dev": true, - "requires": { - "@xtuc/long": "4.2.2" - } - }, - "@webassemblyjs/utf8": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.9.0.tgz", - "integrity": "sha512-GZbQlWtopBTP0u7cHrEx+73yZKrQoBMpwkGEIqlacljhXCkVM1kMQge/Mf+csMJAjEdSwhOyLAS0AoR3AG5P8w==", - "dev": true - }, - "@webassemblyjs/wasm-edit": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.9.0.tgz", - "integrity": "sha512-FgHzBm80uwz5M8WKnMTn6j/sVbqilPdQXTWraSjBwFXSYGirpkSWE2R9Qvz9tNiTKQvoKILpCuTjBKzOIm0nxw==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.9.0", - "@webassemblyjs/helper-buffer": "1.9.0", - "@webassemblyjs/helper-wasm-bytecode": "1.9.0", - "@webassemblyjs/helper-wasm-section": "1.9.0", - "@webassemblyjs/wasm-gen": "1.9.0", - "@webassemblyjs/wasm-opt": "1.9.0", - "@webassemblyjs/wasm-parser": "1.9.0", - "@webassemblyjs/wast-printer": "1.9.0" - } - }, - "@webassemblyjs/wasm-gen": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.9.0.tgz", - "integrity": "sha512-cPE3o44YzOOHvlsb4+E9qSqjc9Qf9Na1OO/BHFy4OI91XDE14MjFN4lTMezzaIWdPqHnsTodGGNP+iRSYfGkjA==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.9.0", - "@webassemblyjs/helper-wasm-bytecode": "1.9.0", - "@webassemblyjs/ieee754": "1.9.0", - "@webassemblyjs/leb128": "1.9.0", - "@webassemblyjs/utf8": "1.9.0" - } - }, - "@webassemblyjs/wasm-opt": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.9.0.tgz", - "integrity": "sha512-Qkjgm6Anhm+OMbIL0iokO7meajkzQD71ioelnfPEj6r4eOFuqm4YC3VBPqXjFyyNwowzbMD+hizmprP/Fwkl2A==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.9.0", - "@webassemblyjs/helper-buffer": "1.9.0", - "@webassemblyjs/wasm-gen": "1.9.0", - "@webassemblyjs/wasm-parser": "1.9.0" - } - }, - "@webassemblyjs/wasm-parser": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.9.0.tgz", - "integrity": "sha512-9+wkMowR2AmdSWQzsPEjFU7njh8HTO5MqO8vjwEHuM+AMHioNqSBONRdr0NQQ3dVQrzp0s8lTcYqzUdb7YgELA==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.9.0", - "@webassemblyjs/helper-api-error": "1.9.0", - "@webassemblyjs/helper-wasm-bytecode": "1.9.0", - "@webassemblyjs/ieee754": "1.9.0", - "@webassemblyjs/leb128": "1.9.0", - "@webassemblyjs/utf8": "1.9.0" - } - }, - "@webassemblyjs/wast-parser": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.9.0.tgz", - "integrity": "sha512-qsqSAP3QQ3LyZjNC/0jBJ/ToSxfYJ8kYyuiGvtn/8MK89VrNEfwj7BPQzJVHi0jGTRK2dGdJ5PRqhtjzoww+bw==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.9.0", - "@webassemblyjs/floating-point-hex-parser": "1.9.0", - "@webassemblyjs/helper-api-error": "1.9.0", - "@webassemblyjs/helper-code-frame": "1.9.0", - "@webassemblyjs/helper-fsm": "1.9.0", - "@xtuc/long": "4.2.2" - } - }, - "@webassemblyjs/wast-printer": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.9.0.tgz", - "integrity": "sha512-2J0nE95rHXHyQ24cWjMKJ1tqB/ds8z/cyeOZxJhcb+rW+SQASVjuznUSmdz5GpVJTzU8JkhYut0D3siFDD6wsA==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.9.0", - "@webassemblyjs/wast-parser": "1.9.0", - "@xtuc/long": "4.2.2" - } - }, - "@webpack-cli/configtest": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@webpack-cli/configtest/-/configtest-1.0.1.tgz", - "integrity": "sha512-B+4uBUYhpzDXmwuo3V9yBH6cISwxEI4J+NO5ggDaGEEHb0osY/R7MzeKc0bHURXQuZjMM4qD+bSJCKIuI3eNBQ==", - "dev": true - }, - "@webpack-cli/info": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/@webpack-cli/info/-/info-1.2.2.tgz", - "integrity": "sha512-5U9kUJHnwU+FhKH4PWGZuBC1hTEPYyxGSL5jjoBI96Gx8qcYJGOikpiIpFoTq8mmgX3im2zAo2wanv/alD74KQ==", - "dev": true, - "requires": { - "envinfo": "^7.7.3" - } - }, - "@webpack-cli/serve": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/@webpack-cli/serve/-/serve-1.3.0.tgz", - "integrity": "sha512-k2p2VrONcYVX1wRRrf0f3X2VGltLWcv+JzXRBDmvCxGlCeESx4OXw91TsWeKOkp784uNoVQo313vxJFHXPPwfw==", - "dev": true - }, - "@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 - }, - "@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 - }, - "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 - }, - "acorn": { - "version": "6.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.1.tgz", - "integrity": "sha512-ZVA9k326Nwrj3Cj9jlh3wGFutC2ZornPNARZwsNYqQYgN0EsV2d53w5RN/co65Ohn4sUAUtb1rSUAOD6XN9idA==", - "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" - }, - "dependencies": { - "acorn": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", - "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", - "dev": true - } - } - }, - "acorn-jsx": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.2.0.tgz", - "integrity": "sha512-HiUX/+K2YpkpJ+SzBffkM/AQ2YE03S0U1kjTLVpoJdhZMOWy8qvXVN9JdLqv2QsaQ6MPYQIuNmwD8zOiYUofLQ==", - "dev": true - }, - "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": "3.0.0", - "resolved": "https://registry.npmjs.org/adjust-sourcemap-loader/-/adjust-sourcemap-loader-3.0.0.tgz", - "integrity": "sha512-YBrGyT2/uVQ/c6Rr+t6ZJXniY03YtHGMJQYal368burRGYKqhx9qGTWqcBU5s1CwYY9E/ri63RYyG1IacMZtqw==", - "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" - } - } - } - }, - "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, - "requires": { - "clean-stack": "^2.0.0", - "indent-string": "^4.0.0" - }, - "dependencies": { - "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 - } - } - }, - "ajv": { - "version": "6.12.4", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.4.tgz", - "integrity": "sha512-eienB2c9qVQs2KWexhkrdMLVDoIQCz5KSeLxwg9Lzk4DOfBtIK9PQwwufcsn1jjGuf9WZmqPMbGxOzfcuphJCQ==", - "dev": true, - "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-errors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/ajv-errors/-/ajv-errors-1.0.1.tgz", - "integrity": "sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ==", - "dev": 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==", - "dev": true - }, - "amdefine": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz", - "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=", - "dev": true - }, - "ansi-colors": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz", - "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==", - "dev": true - }, - "ansi-escapes": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.2.0.tgz", - "integrity": "sha512-cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ==", - "dev": true - }, - "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": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "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==", - "requires": { - "color-name": "1.1.3" - } - } - } - }, - "anymatch": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz", - "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", - "requires": { - "micromatch": "^3.1.4", - "normalize-path": "^2.1.1" - }, - "dependencies": { - "normalize-path": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", - "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", - "requires": { - "remove-trailing-separator": "^1.0.1" - } - } - } - }, - "aproba": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", - "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", - "dev": true - }, - "are-we-there-yet": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz", - "integrity": "sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w==", - "dev": true, - "requires": { - "delegates": "^1.0.0", - "readable-stream": "^2.0.6" - } - }, - "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" - } - }, - "arity-n": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/arity-n/-/arity-n-1.0.4.tgz", - "integrity": "sha1-2edrEXM+CFacCEeuezmyhgswt0U=", - "dev": true - }, - "arr-diff": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", - "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=" - }, - "arr-flatten": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", - "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==" - }, - "arr-union": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", - "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=" - }, - "array-find-index": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz", - "integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=", - "dev": true - }, - "array-includes": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.1.tgz", - "integrity": "sha512-c2VXaCHl7zPsvpkFsw4nxvFie4fh1ur9bpcgsVkIjqn0H/Xwdg+7fv3n2r/isyS8EBj5b06M9kHyZuIr4El6WQ==", - "dev": true, - "requires": { - "define-properties": "^1.1.3", - "es-abstract": "^1.17.0", - "is-string": "^1.0.5" - } - }, - "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 - }, - "array-unique": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", - "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=" - }, - "array.prototype.flat": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.2.3.tgz", - "integrity": "sha512-gBlRZV0VSmfPIeWfuuy56XZMvbVfbEUnOXUvt3F/eUUUSyzlgLxhEX4YAEpxNAogRGehPSnfXyPtYyKAhkzQhQ==", - "dev": true, - "requires": { - "define-properties": "^1.1.3", - "es-abstract": "^1.17.0-next.1" - } - }, - "arrify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", - "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=", - "dev": true - }, - "asn1": { - "version": "0.2.4", - "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz", - "integrity": "sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==", - "dev": true, - "requires": { - "safer-buffer": "~2.1.0" - } - }, - "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, - "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.11.9", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", - "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", - "dev": true - } - } - }, - "assert": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/assert/-/assert-1.5.0.tgz", - "integrity": "sha512-EDsgawzwoun2CZkCgtxJbv392v4nbk9XDD06zI+kQYoBM/3RBWLlEyJARDOmhAAosBjWACEkKL6S+lIZtcAubA==", - "dev": true, - "requires": { - "object-assign": "^4.1.1", - "util": "0.10.3" - }, - "dependencies": { - "inherits": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", - "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=", - "dev": true - }, - "util": { - "version": "0.10.3", - "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz", - "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=", - "dev": true, - "requires": { - "inherits": "2.0.1" - } - } - } - }, - "assert-plus": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", - "dev": true - }, - "assign-symbols": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", - "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=" - }, - "astral-regex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-1.0.0.tgz", - "integrity": "sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==", - "dev": true - }, - "async-each": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.3.tgz", - "integrity": "sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ==", - "optional": true - }, - "async-foreach": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/async-foreach/-/async-foreach-0.1.3.tgz", - "integrity": "sha1-NhIfhFwFeBct5Bmpfb6x0W7DRUI=", - "dev": true - }, - "asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", - "dev": true - }, - "atob": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", - "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==" - }, - "autoprefixer": { - "version": "9.8.6", - "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-9.8.6.tgz", - "integrity": "sha512-XrvP4VVHdRBCdX1S3WXVD8+RyG9qeb1D5Sn1DeLiG2xfSpzellk5k54xbUERJ3M5DggQxes39UGOTP8CFrEGbg==", - "dev": true, - "requires": { - "browserslist": "^4.12.0", - "caniuse-lite": "^1.0.30001109", - "colorette": "^1.2.1", - "normalize-range": "^0.1.2", - "num2fraction": "^1.2.2", - "postcss": "^7.0.32", - "postcss-value-parser": "^4.1.0" - } - }, - "autosize": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/autosize/-/autosize-4.0.2.tgz", - "integrity": "sha512-jnSyH2d+qdfPGpWlcuhGiHmqBJ6g3X+8T+iRwFrHPLVcdoGJE/x6Qicm6aDHfTsbgZKxyV8UU/YB2p4cjKDRRA==" - }, - "aws-sign2": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", - "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=", - "dev": true - }, - "aws4": { - "version": "1.10.1", - "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.10.1.tgz", - "integrity": "sha512-zg7Hz2k5lI8kb7U32998pRRFin7zJlkfezGJjUc2heaD4Pw2wObakCDVzkKztTm/Ln7eiVvYsjqak0Ed4LkMDA==", - "dev": true - }, - "axios": { - "version": "0.21.1", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.1.tgz", - "integrity": "sha512-dKQiRHxGD9PPRIUNIWvZhPTPpl1rf/OxTYKsqKUDjBwYylTvV7SjSHJb9ratfyzM6wCdLCOYLzs73qpg5c4iGA==", - "requires": { - "follow-redirects": "^1.10.0" - } - }, - "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-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" - } - }, - "js-tokens": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", - "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=" - }, - "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 - }, - "babel-eslint": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/babel-eslint/-/babel-eslint-10.1.0.tgz", - "integrity": "sha512-ifWaTHQ0ce+448CYop8AdrQiBsGrnC+bMgfyKFdi6EsPLTAWG+QfyDeM6OH+FmWnKvEq5NnBMLvlBUPKQZoDSg==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.0.0", - "@babel/parser": "^7.7.0", - "@babel/traverse": "^7.7.0", - "@babel/types": "^7.7.0", - "eslint-visitor-keys": "^1.0.0", - "resolve": "^1.12.0" - } - }, - "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": "26.6.3", - "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-26.6.3.tgz", - "integrity": "sha512-pl4Q+GAVOHwvjrck6jKjvmGhnO3jHX/xuB9d27f+EJZ/6k+6nMuPjorrYp7s++bKKdANwzElBWnLWaObvTnaZA==", - "dev": true, - "requires": { - "@jest/transform": "^26.6.2", - "@jest/types": "^26.6.2", - "@types/babel__core": "^7.1.7", - "babel-plugin-istanbul": "^6.0.0", - "babel-preset-jest": "^26.6.2", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.4", - "slash": "^3.0.0" - }, - "dependencies": { - "@jest/transform": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-26.6.2.tgz", - "integrity": "sha512-E9JjhUgNzvuQ+vVAL21vlyfy12gP0GhazGgJC4h6qUt1jSdUXGWJ1wfu/X7Sd8etSgxV4ovT1pb9v5D6QW4XgA==", - "dev": true, - "requires": { - "@babel/core": "^7.1.0", - "@jest/types": "^26.6.2", - "babel-plugin-istanbul": "^6.0.0", - "chalk": "^4.0.0", - "convert-source-map": "^1.4.0", - "fast-json-stable-stringify": "^2.0.0", - "graceful-fs": "^4.2.4", - "jest-haste-map": "^26.6.2", - "jest-regex-util": "^26.0.0", - "jest-util": "^26.6.2", - "micromatch": "^4.0.2", - "pirates": "^4.0.1", - "slash": "^3.0.0", - "source-map": "^0.6.1", - "write-file-atomic": "^3.0.0" - } - }, - "@jest/types": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz", - "integrity": "sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==", - "dev": true, - "requires": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^15.0.0", - "chalk": "^4.0.0" - } - }, - "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" - } - }, - "anymatch": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz", - "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==", - "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" - } - }, - "chalk": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", - "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", - "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 - }, - "jest-haste-map": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-26.6.2.tgz", - "integrity": "sha512-easWIJXIw71B2RdR8kgqpjQrbMRWQBgiBwXYEhtGUTaX+doCjBheluShdDMeR8IMfJiTqH4+zfhtg29apJf/8w==", - "dev": true, - "requires": { - "@jest/types": "^26.6.2", - "@types/graceful-fs": "^4.1.2", - "@types/node": "*", - "anymatch": "^3.0.3", - "fb-watchman": "^2.0.0", - "fsevents": "^2.1.2", - "graceful-fs": "^4.2.4", - "jest-regex-util": "^26.0.0", - "jest-serializer": "^26.6.2", - "jest-util": "^26.6.2", - "jest-worker": "^26.6.2", - "micromatch": "^4.0.2", - "sane": "^4.0.3", - "walker": "^1.0.7" - } - }, - "jest-serializer": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-26.6.2.tgz", - "integrity": "sha512-S5wqyz0DXnNJPd/xfIzZ5Xnp1HrJWBczg8mMfMpN78OJ5eDxXyf+Ygld9wX1DnUWbIbhM1YDY95NjR4CBXkb2g==", - "dev": true, - "requires": { - "@types/node": "*", - "graceful-fs": "^4.2.4" - } - }, - "jest-util": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-26.6.2.tgz", - "integrity": "sha512-MDW0fKfsn0OI7MS7Euz6h8HNDXVQ0gaM9uW6RjfDmd1DAFcaxX9OqIakHIqhbnmF08Cf2DLDG+ulq8YQQ0Lp0Q==", - "dev": true, - "requires": { - "@jest/types": "^26.6.2", - "@types/node": "*", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.4", - "is-ci": "^2.0.0", - "micromatch": "^4.0.2" - } - }, - "jest-worker": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-26.6.2.tgz", - "integrity": "sha512-KWYVV1c4i+jbMpaBC+U++4Va0cp8OisU185o73T1vo99hqi7w8tSJfUXYswwqqrjzwxa6KpRK54WhPvwf5w6PQ==", - "dev": true, - "requires": { - "@types/node": "*", - "merge-stream": "^2.0.0", - "supports-color": "^7.0.0" - } - }, - "micromatch": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", - "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", - "dev": true, - "requires": { - "braces": "^3.0.1", - "picomatch": "^2.0.5" - } - }, - "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" - } - } - } - }, - "babel-loader": { - "version": "8.2.2", - "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.2.2.tgz", - "integrity": "sha512-JvTd0/D889PQBtUXJ2PXaKU/pjZDMtHA9V2ecm+eNRmmBCMR09a+fmpGTNwnJtFmFl5Ei7Vy47LjBb+L0wQ99g==", - "dev": true, - "requires": { - "find-cache-dir": "^3.3.1", - "loader-utils": "^1.4.0", - "make-dir": "^3.1.0", - "schema-utils": "^2.6.5" - }, - "dependencies": { - "find-cache-dir": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.1.tgz", - "integrity": "sha512-t2GDMt3oGC/v+BMwzmllWDuJF/xcDtE5j/fCGbqDD7OLuJkj0cfh1YSA5VKPvwMeLFLNDBkwOKZ2X85jGLVftQ==", - "dev": true, - "requires": { - "commondir": "^1.0.1", - "make-dir": "^3.0.2", - "pkg-dir": "^4.1.0" - } - }, - "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" - } - }, - "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" - } - }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } - } - }, - "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==", - "requires": { - "object.assign": "^4.1.0" - } - }, - "babel-plugin-istanbul": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.0.0.tgz", - "integrity": "sha512-AF55rZXpe7trmEylbaE1Gv54wn6rwU03aptvRoVIGP8YykoSxqdVLV1TfwflBCE/QtHmqtP8SWlTENqbK8GCSQ==", - "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": "^4.0.0", - "test-exclude": "^6.0.0" - } - }, - "babel-plugin-jest-hoist": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-26.6.2.tgz", - "integrity": "sha512-PO9t0697lNTmcEHH69mdtYiOIkkOlj9fySqfO3K1eCcdISevLAE0xY59VLLUj0SoiPiTX/JU2CYFpILydUa5Lw==", - "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-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": "26.6.2", - "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-26.6.2.tgz", - "integrity": "sha512-YvdtlVm9t3k777c5NPQIv6cxFFFapys25HiUmuSgHwIZhfifweR5c5Sf5nwE3MAbfu327CYSvps8Yx6ANLyleQ==", - "dev": true, - "requires": { - "babel-plugin-jest-hoist": "^26.6.2", - "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.11", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.11.tgz", - "integrity": "sha512-5wjnpaT/3dV+XB4borEsnAYQchn00XSgTAWKDkEqv+K8KevjbzmofK6hfJ9TZIlpj2N0xQpazy7PiRQiWHqzWg==" - }, - "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": { - "globals": { - "version": "9.18.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz", - "integrity": "sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==" - } - } - }, - "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==" - }, - "bail": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/bail/-/bail-1.0.5.tgz", - "integrity": "sha512-xFbRxM1tahm08yHBP16MMjVUAvDaBMD38zsM9EMAUN61omwLmKlOpB/Zku5QkjZ8TZ4vn53pj+t518cH0S03RQ==", - "dev": true - }, - "balanced-match": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", - "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=" - }, - "base": { - "version": "0.11.2", - "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz", - "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", - "requires": { - "cache-base": "^1.0.1", - "class-utils": "^0.3.5", - "component-emitter": "^1.2.1", - "define-property": "^1.0.0", - "isobject": "^3.0.1", - "mixin-deep": "^1.2.0", - "pascalcase": "^0.1.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "requires": { - "is-descriptor": "^1.0.0" - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - } - } - }, - "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 - }, - "bcrypt-pbkdf": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", - "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", - "dev": true, - "requires": { - "tweetnacl": "^0.14.3" - } - }, - "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 - }, - "binary-extensions": { - "version": "1.13.1", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz", - "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==", - "optional": true - }, - "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 - }, - "bn.js": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.1.3.tgz", - "integrity": "sha512-GkTiFpjFtUzU9CbMeJ5iazkCzGL3jrhzerzZIuqLABjbwRaFt33I9tUdSNryIptM+RxDet6OKm2WnLXzW51KsQ==", - "dev": true - }, - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "braces": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", - "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", - "requires": { - "arr-flatten": "^1.1.0", - "array-unique": "^0.3.2", - "extend-shallow": "^2.0.1", - "fill-range": "^4.0.0", - "isobject": "^3.0.1", - "repeat-element": "^1.1.2", - "snapdragon": "^0.8.1", - "snapdragon-node": "^2.0.1", - "split-string": "^3.0.2", - "to-regex": "^3.0.1" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "brorand": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", - "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=", - "dev": 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, - "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, - "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, - "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, - "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, - "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": { - "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" - } - }, - "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 - } - } - }, - "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, - "requires": { - "pako": "~1.0.5" - } - }, - "browserslist": { - "version": "4.16.1", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.16.1.tgz", - "integrity": "sha512-UXhDrwqsNcpTYJBTZsbGATDxZbiVDsx6UjpmRUmtnP10pr8wAYr5LgFoEFw9ixriQH2mv/NX2SfGzE/o8GndLA==", - "requires": { - "caniuse-lite": "^1.0.30001173", - "colorette": "^1.2.1", - "electron-to-chromium": "^1.3.634", - "escalade": "^3.1.1", - "node-releases": "^1.1.69" - } - }, - "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": "4.9.2", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.2.tgz", - "integrity": "sha512-xq+q3SRMOxGivLhBNaUdC64hDTQwejJ+H0T/NB1XMtTVEwNTrfFF3gAxiyW0Bu/xWEGhjVKgUcMhCrUy2+uCWg==", - "dev": true, - "requires": { - "base64-js": "^1.0.2", - "ieee754": "^1.1.4", - "isarray": "^1.0.0" - } - }, - "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==", - "dev": true - }, - "buffer-xor": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", - "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=", - "dev": true - }, - "builtin-status-codes": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz", - "integrity": "sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug=", - "dev": true - }, - "cacache": { - "version": "15.0.5", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-15.0.5.tgz", - "integrity": "sha512-lloiL22n7sOjEEXdL8NAjTgv9a1u43xICE9/203qonkZUCj5X1UEWIdf2/Y0d6QcCtMzbKQyhrcDbdvlZTs/+A==", - "dev": true, - "requires": { - "@npmcli/move-file": "^1.0.1", - "chownr": "^2.0.0", - "fs-minipass": "^2.0.0", - "glob": "^7.1.4", - "infer-owner": "^1.0.4", - "lru-cache": "^6.0.0", - "minipass": "^3.1.1", - "minipass-collect": "^1.0.2", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.2", - "mkdirp": "^1.0.3", - "p-map": "^4.0.0", - "promise-inflight": "^1.0.1", - "rimraf": "^3.0.2", - "ssri": "^8.0.0", - "tar": "^6.0.2", - "unique-filename": "^1.1.1" - }, - "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==", - "dev": true, - "requires": { - "yallist": "^4.0.0" - } - }, - "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" - } - }, - "tar": { - "version": "6.0.5", - "resolved": "https://registry.npmjs.org/tar/-/tar-6.0.5.tgz", - "integrity": "sha512-0b4HOimQHj9nXNEAA7zWwMM91Zhhba3pspja6sQbgTpynOJf+bkjBnfybNYzbpLbnwXnbyB4LOREvlyXLkCHSg==", - "dev": true, - "requires": { - "chownr": "^2.0.0", - "fs-minipass": "^2.0.0", - "minipass": "^3.0.0", - "minizlib": "^2.1.1", - "mkdirp": "^1.0.3", - "yallist": "^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 - } - } - }, - "cache-base": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", - "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", - "requires": { - "collection-visit": "^1.0.0", - "component-emitter": "^1.2.1", - "get-value": "^2.0.6", - "has-value": "^1.0.0", - "isobject": "^3.0.1", - "set-value": "^2.0.0", - "to-object-path": "^0.3.0", - "union-value": "^1.0.0", - "unset-value": "^1.0.0" - } - }, - "calendar-js": { - "version": "git+https://github.com/nextcloud/calendar-js.git#f5c9865d88e6cb19eeb0467709374c78c0d42ec4", - "from": "git+https://github.com/nextcloud/calendar-js.git", - "requires": { - "ical.js": "^1.4.0", - "uuid": "^8.3.2" - } - }, - "call-bind": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", - "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", - "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": "2.1.0", - "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz", - "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=", - "dev": true, - "requires": { - "camelcase": "^2.0.0", - "map-obj": "^1.0.0" - }, - "dependencies": { - "camelcase": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz", - "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=", - "dev": true - } - } - }, - "caniuse-lite": { - "version": "1.0.30001179", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001179.tgz", - "integrity": "sha512-blMmO0QQujuUWZKyVrD1msR4WNDAqb/UPO1Sw2WWsQ7deoM5bJiicKnWJ1Y0NS/aGINSnKPIWBMw5luX+NDUCA==" - }, - "capture-exit": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/capture-exit/-/capture-exit-2.0.0.tgz", - "integrity": "sha512-PiT/hQmTonHhl/HFGN+Lx3JJUznrVYJ3+AQsnthneZbvW7x+f08Tk7yLJTLEOUvBTbduLeeBkxEaYXUOUrRq6g==", - "dev": true, - "requires": { - "rsvp": "^4.8.4" - } - }, - "caseless": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", - "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", - "dev": true - }, - "cdav-library": { - "version": "github:nextcloud/cdav-library#4d3bbec44c54cb5bb1877cc32ea53208f4a4bc39", - "from": "github:nextcloud/cdav-library#4d3bbec44c54cb5bb1877cc32ea53208f4a4bc39", - "requires": { - "core-js": "^3.8.3", - "regenerator-runtime": "^0.13.7" - } - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "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==" - }, - "character-entities": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/character-entities/-/character-entities-1.2.4.tgz", - "integrity": "sha512-iBMyeEHxfVnIakwOuDXpVkc54HijNgCyQB2w0VfGQThle6NXn50zU6V/u+LDhxHcDUPojn6Kpga3PTAD8W1bQw==", - "dev": true - }, - "character-entities-legacy": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/character-entities-legacy/-/character-entities-legacy-1.1.4.tgz", - "integrity": "sha512-3Xnr+7ZFS1uxeiUDvV02wQ+QDbc55o97tIV5zHScSPJpcLm/r0DFPcoY3tYRp+VZukxuMeKgXYmsXQHO05zQeA==", - "dev": true - }, - "character-reference-invalid": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/character-reference-invalid/-/character-reference-invalid-1.1.4.tgz", - "integrity": "sha512-mKKUkUbhPpQlCOfIuZkvSEgktjPFIsZKRRbC6KWVEMvlzblj3i3asQv5ODsrwt0N3pHAEvjP8KTQPHkp0+6jOg==", - "dev": true - }, - "chardet": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", - "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", - "dev": true - }, - "charenc": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/charenc/-/charenc-0.0.2.tgz", - "integrity": "sha1-wKHS86cJLgN3S/qD8UwPxXkKhmc=" - }, - "chokidar": { - "version": "3.5.1", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.1.tgz", - "integrity": "sha512-9+s+Od+W0VJJzawDma/gvBNQqkTiqYTWLuZoyAsivsI4AaWTCzHG06/TMjsf1cYe9Cb97UCEhjz7HvnPk2p/tw==", - "dev": true, - "optional": true, - "requires": { - "anymatch": "~3.1.1", - "braces": "~3.0.2", - "fsevents": "~2.3.1", - "glob-parent": "~5.1.0", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.5.0" - }, - "dependencies": { - "anymatch": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz", - "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==", - "dev": true, - "optional": 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, - "optional": 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, - "optional": 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, - "optional": true, - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "glob-parent": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.1.tgz", - "integrity": "sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==", - "dev": true, - "optional": true, - "requires": { - "is-glob": "^4.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, - "optional": 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, - "optional": true - }, - "readdirp": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.5.0.tgz", - "integrity": "sha512-cMhu7c/8rdhkHXWsY+osBhfSy0JikwpHK/5+imo+LpeasTF8ouErHrlYkwT0++njiyuDvc7OFY5T3ukvZ8qmFQ==", - "dev": true, - "optional": 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, - "optional": true, - "requires": { - "is-number": "^7.0.0" - } - } - } - }, - "chownr": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", - "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", - "dev": true - }, - "chrome-trace-event": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.2.tgz", - "integrity": "sha512-9e/zx1jw7B4CO+c/RXoCsfg/x1AfUBioy4owYH0bJprEYAx5hRFLRhWBqHAG57D0ZM4H7vxbP7bPe0VwhQRYDQ==", - "dev": true, - "requires": { - "tslib": "^1.9.0" - }, - "dependencies": { - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - } - } - }, - "ci-info": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz", - "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==", - "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, - "requires": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - } - }, - "cjs-module-lexer": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-0.6.0.tgz", - "integrity": "sha512-uc2Vix1frTfnuzxxu1Hp4ktSvM3QaI4oXl4ZUqL1wjTu/BGki9TrCWoqLTg/drR1KwAEarXuRFCG2Svr1GxPFw==", - "dev": true - }, - "clamp": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/clamp/-/clamp-1.0.1.tgz", - "integrity": "sha1-ZqDmQBGBbjcZaCj9yMjBRzEshjQ=" - }, - "class-utils": { - "version": "0.3.6", - "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", - "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", - "requires": { - "arr-union": "^3.1.0", - "define-property": "^0.2.5", - "isobject": "^3.0.0", - "static-extend": "^0.1.1" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "requires": { - "is-descriptor": "^0.1.0" - } - } - } - }, - "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 - }, - "cli-cursor": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz", - "integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=", - "dev": true, - "requires": { - "restore-cursor": "^2.0.0" - } - }, - "cli-width": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.1.tgz", - "integrity": "sha512-GRMWDxpOB6Dgk2E5Uo+3eEBvtOOlimMmpbFiKuLFnQzYDavtLFY3K5ona41jgN/WdRZtG7utuVSVTL4HbZHGkw==", - "dev": true - }, - "clipboard": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/clipboard/-/clipboard-2.0.6.tgz", - "integrity": "sha512-g5zbiixBRk/wyKakSwCKd7vQXDjFnAMGHoEyBogG/bw9kTD9GvdAvaoRR1ALcEzt3pVKxZR0pViekPMIS0QyGg==", - "requires": { - "good-listener": "^1.2.2", - "select": "^1.1.2", - "tiny-emitter": "^2.0.0" - } - }, - "cliui": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", - "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", - "dev": true, - "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^6.2.0" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", - "dev": true - }, - "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 - }, - "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 - }, - "string-width": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", - "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.0" - } - }, - "strip-ansi": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", - "dev": true, - "requires": { - "ansi-regex": "^5.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, - "requires": { - "is-plain-object": "^2.0.4", - "kind-of": "^6.0.2", - "shallow-clone": "^3.0.0" - } - }, - "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, - "requires": { - "is-regexp": "^2.0.0" - } - }, - "closest-css-color": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/closest-css-color/-/closest-css-color-0.1.1.tgz", - "integrity": "sha512-Vor9mkq3sXlEO8FTTjxVhV8jlmh2dQ9oVsrhcSan2f4qikBgnqZnJQXSvxrYrGWEp5UHUIAEEtPZ1OLeyfMa5w==", - "requires": { - "colour-proximity": "0.0.2", - "css-color-names": "0.0.4", - "hex-rgb": "^2.0.0", - "lodash.merge": "^4.6.1", - "lodash.pick": "^4.4.0", - "lodash.sortby": "^4.7.0", - "lodash.uniqby": "^4.7.0" - }, - "dependencies": { - "css-color-names": { - "version": "0.0.4", - "resolved": "https://registry.npmjs.org/css-color-names/-/css-color-names-0.0.4.tgz", - "integrity": "sha1-gIrcLnnPhHOAabZGyyDsJ762KeA=" - } - } - }, - "co": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", - "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=", - "dev": true - }, - "coalescy": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/coalescy/-/coalescy-1.0.0.tgz", - "integrity": "sha1-SwZYRrg2NhrabEtKSr9LwcrDG/E=", - "dev": true - }, - "code-point-at": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", - "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", - "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 - }, - "collection-visit": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", - "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", - "requires": { - "map-visit": "^1.0.0", - "object-visit": "^1.0.0" - } - }, - "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" - }, - "dependencies": { - "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-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" - }, - "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=" - } - } - }, - "colorette": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.2.1.tgz", - "integrity": "sha512-puCDz0CzydiSYOrnXpz/PKd69zRrribezjtE9yd4zvytoRc8+RY/KJPvtPFKZS3E3wP6neGyMe0vOTlHO5L3Pw==" - }, - "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==", - "dev": true, - "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==" - }, - "common-tags": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/common-tags/-/common-tags-1.8.0.tgz", - "integrity": "sha512-6P6g0uetGpW/sdyUy/iQQCbFF0kWVMSIVSyYz7Zgjcgh8mgw8PQzDNZeyZ5DQ2gM7LBoZPHmnjz8rUthkBG5tw==", - "dev": true - }, - "commondir": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", - "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=", - "dev": true - }, - "component-emitter": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", - "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==" - }, - "compose-function": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/compose-function/-/compose-function-3.0.3.tgz", - "integrity": "sha1-ntZ18TzFRQHTCVCkhv9qe6OrGF8=", - "dev": true, - "requires": { - "arity-n": "^1.0.4" - } - }, - "concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" - }, - "concat-stream": { - "version": "1.6.2", - "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", - "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", - "dev": true, - "requires": { - "buffer-from": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^2.2.2", - "typedarray": "^0.0.6" - } - }, - "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" - }, - "dependencies": { - "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" - } - }, - "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" - } - } - } - }, - "config-chain": { - "version": "1.1.12", - "resolved": "https://registry.npmjs.org/config-chain/-/config-chain-1.1.12.tgz", - "integrity": "sha512-a1eOIcu8+7lUInge4Rpf/n4Krkf3Dd9lqhljRzII1/Zno/kRtUWnznPO3jOKBmTEktkt3fkxisUcivoj0ebzoA==", - "dev": true, - "requires": { - "ini": "^1.3.4", - "proto-list": "~1.2.1" - } - }, - "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 - }, - "console-control-strings": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=", - "dev": 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, - "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": "sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U=", - "dev": true - }, - "contains-path": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/contains-path/-/contains-path-0.1.0.tgz", - "integrity": "sha1-/ozxhP9mcLa67wGp1IYaXL7EEgo=", - "dev": true - }, - "convert-source-map": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.7.0.tgz", - "integrity": "sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA==", - "requires": { - "safe-buffer": "~5.1.1" - } - }, - "copy-concurrently": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/copy-concurrently/-/copy-concurrently-1.0.5.tgz", - "integrity": "sha512-f2domd9fsVDFtaFcbaRZuYXwtdmnzqbADSwhSWYxYB/Q8zsdUUFMXVRwXGDMWmbEzAn1kdRrtI1T/KTFOL4X2A==", - "dev": true, - "requires": { - "aproba": "^1.1.1", - "fs-write-stream-atomic": "^1.0.8", - "iferr": "^0.1.5", - "mkdirp": "^0.5.1", - "rimraf": "^2.5.4", - "run-queue": "^1.0.0" - }, - "dependencies": { - "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" - } - } - } - }, - "copy-descriptor": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", - "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=" - }, - "core-js": { - "version": "3.9.0", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.9.0.tgz", - "integrity": "sha512-PyFBJaLq93FlyYdsndE5VaueA9K5cNB7CGzeCj191YYLhkQM0gdZR2SKihM70oF0wdqKSKClv/tEBOpoRmdOVQ==" - }, - "core-js-compat": { - "version": "3.9.0", - "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.9.0.tgz", - "integrity": "sha512-YK6fwFjCOKWwGnjFUR3c544YsnA/7DoLL0ysncuOJ4pwbriAtOpvM2bygdlcXbvQCQZ7bBU9CL4t7tGl7ETRpQ==", - "requires": { - "browserslist": "^4.16.3", - "semver": "7.0.0" - }, - "dependencies": { - "browserslist": { - "version": "4.16.3", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.16.3.tgz", - "integrity": "sha512-vIyhWmIkULaq04Gt93txdh+j02yX/JzlyhLYbV3YQCn/zvES3JnY7TifHHvvr1w5hTDluNKMkV05cs4vy8Q7sw==", - "requires": { - "caniuse-lite": "^1.0.30001181", - "colorette": "^1.2.1", - "electron-to-chromium": "^1.3.649", - "escalade": "^3.1.1", - "node-releases": "^1.1.70" - } - }, - "caniuse-lite": { - "version": "1.0.30001189", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001189.tgz", - "integrity": "sha512-BSfxClP/UWCD0RX1h1L+vLDexNSJY7SfOtbJtW10bcnatfj3BcoietUFYNwWreOCk+SNvGUaNapGqUNPiGAiSA==" - }, - "electron-to-chromium": { - "version": "1.3.670", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.670.tgz", - "integrity": "sha512-iiHQa72+3wbkPR0O8InsNbRwKcV6gBEKiUqPaJ4+TOwQkJQY4ku1sBNC+0ZSfANQ0nqr0SyRO3/Qr6S7Lct/IA==" - }, - "semver": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.0.0.tgz", - "integrity": "sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A==" - } - } - }, - "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=" - }, - "cosmiconfig": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.0.0.tgz", - "integrity": "sha512-pondGvTuVYDk++upghXJabWzL6Kxu6f26ljFw64Swq9v6sQPUL3EUlVDV56diOjpCayKihL6hVe8exIACU4XcA==", - "dev": 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, - "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 - } - } - }, - "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, - "requires": { - "bn.js": "^4.1.0", - "elliptic": "^6.5.3" - }, - "dependencies": { - "bn.js": { - "version": "4.11.9", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", - "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", - "dev": 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, - "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, - "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": "6.0.5", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", - "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", - "dev": true, - "requires": { - "nice-try": "^1.0.4", - "path-key": "^2.0.1", - "semver": "^5.5.0", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - }, - "dependencies": { - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - } - } - }, - "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, - "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": "3.6.0", - "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-3.6.0.tgz", - "integrity": "sha512-M5lSukoWi1If8dhQAUCvj4H8vUt3vOnwbQBH9DdTm/s4Ym2B/3dPMtYZeJmq7Q3S3Pa+I94DcZ7pc9bP14cWIQ==", - "dev": true, - "requires": { - "camelcase": "^5.3.1", - "cssesc": "^3.0.0", - "icss-utils": "^4.1.1", - "loader-utils": "^1.2.3", - "normalize-path": "^3.0.0", - "postcss": "^7.0.32", - "postcss-modules-extract-imports": "^2.0.0", - "postcss-modules-local-by-default": "^3.0.2", - "postcss-modules-scope": "^2.2.0", - "postcss-modules-values": "^3.0.0", - "postcss-value-parser": "^4.1.0", - "schema-utils": "^2.7.0", - "semver": "^6.3.0" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": 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 - }, - "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 - } - } - }, - "cubic2quad": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/cubic2quad/-/cubic2quad-1.1.1.tgz", - "integrity": "sha1-abGcYaP1tB7PLx1fro+wNBWqixU=", - "dev": true - }, - "currently-unhandled": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz", - "integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=", - "dev": true, - "requires": { - "array-find-index": "^1.0.1" - } - }, - "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==" - }, - "cyclist": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/cyclist/-/cyclist-1.0.1.tgz", - "integrity": "sha1-WW6WmP0MgOEgOMK4LW6xs1tiJNk=", - "dev": true - }, - "d": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/d/-/d-1.0.1.tgz", - "integrity": "sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA==", - "dev": true, - "requires": { - "es5-ext": "^0.10.50", - "type": "^1.0.1" - } - }, - "dashdash": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", - "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0" - } - }, - "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.0", - "resolved": "https://registry.npmjs.org/debounce/-/debounce-1.2.0.tgz", - "integrity": "sha512-mYtLl1xfZLi1m4RtQYlZgJUNQjl4ZxVnHzIR8nLLgi4q1YT8o/WM+MK/f8yfcc9s5Ir5zRaPZyZU6xs1Syoocg==" - }, - "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" - } - }, - "decamelize": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", - "dev": 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, - "requires": { - "decamelize": "^1.1.0", - "map-obj": "^1.0.0" - } - }, - "decimal.js": { - "version": "10.2.1", - "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.2.1.tgz", - "integrity": "sha512-KaL7+6Fw6i5A2XSnsbhm/6B+NuEA7TZ4vqxnd5tXz9sbKtrN9Srj8ab4vKVdK8YAqZO9P1kg45Y6YLoduPf+kw==", - "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=" - }, - "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 - }, - "define-properties": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", - "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", - "requires": { - "object-keys": "^1.0.12" - } - }, - "define-property": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", - "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", - "requires": { - "is-descriptor": "^1.0.2", - "isobject": "^3.0.1" - }, - "dependencies": { - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - } - } - }, - "delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", - "dev": true - }, - "delegate": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/delegate/-/delegate-3.2.0.tgz", - "integrity": "sha512-IofjkYBZaZivn0V8nnsMJGBr4jVLxHDheKSW88PyxS5QC4Vo9ZbZVvhzlSxY87fVq3STR6r+4cGepyHkcWOQSw==" - }, - "delegates": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", - "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=", - "dev": 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, - "requires": { - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0" - } - }, - "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 - }, - "diff-sequences": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-26.6.2.tgz", - "integrity": "sha512-Mv/TDa3nZ9sbc5soK+OoA74BsS3mL37yixCvUAQkiuA4Wz6YtwP/K47n2rv2ovzHZvoiQeA5FTQOschKkEwB0Q==", - "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, - "requires": { - "bn.js": "^4.1.0", - "miller-rabin": "^4.0.0", - "randombytes": "^2.0.0" - }, - "dependencies": { - "bn.js": { - "version": "4.11.9", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", - "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", - "dev": 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, - "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 - } - } - }, - "dlv": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/dlv/-/dlv-1.1.3.tgz", - "integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==", - "dev": true - }, - "doctrine": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", - "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", - "dev": 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": "0.2.2", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.2.2.tgz", - "integrity": "sha512-2/xPb3ORsQ42nHYiSunXkDjPLBaEj/xTwUO4B7XCZQTRk7EBtTOPaygh10YAAh2OI1Qrp6NWfpAhzswj0ydt9g==", - "dev": true, - "requires": { - "domelementtype": "^2.0.1", - "entities": "^2.0.0" - }, - "dependencies": { - "domelementtype": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.1.0.tgz", - "integrity": "sha512-LsTgx/L5VpD+Q8lmsXSHW2WpA+eBlZ9HPf3erD1IoPF00/3JKHZ3BknUVA2QGDNu69ZNmyFmCWBSO45XjYKC5w==", - "dev": true - }, - "entities": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", - "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", - "dev": true - } - } - }, - "domain-browser": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.2.0.tgz", - "integrity": "sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA==", - "dev": true - }, - "domelementtype": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz", - "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==", - "dev": 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": "2.4.2", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.4.2.tgz", - "integrity": "sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA==", - "dev": true, - "requires": { - "domelementtype": "1" - } - }, - "domutils": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.7.0.tgz", - "integrity": "sha512-Lgd2XcJ/NjEw+7tFvfKxOzCYKZsdct5lczQ2ZaQY8Djz7pfAD3Gbp8ySJWtreII/vDlMVmxwa6pHmdxIYgttDg==", - "dev": true, - "requires": { - "dom-serializer": "0", - "domelementtype": "1" - } - }, - "duplexify": { - "version": "3.7.1", - "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.7.1.tgz", - "integrity": "sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g==", - "dev": true, - "requires": { - "end-of-stream": "^1.0.0", - "inherits": "^2.0.1", - "readable-stream": "^2.0.0", - "stream-shift": "^1.0.0" - } - }, - "ecc-jsbn": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", - "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", - "dev": true, - "requires": { - "jsbn": "~0.1.0", - "safer-buffer": "^2.1.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 - } - } - }, - "electron-to-chromium": { - "version": "1.3.643", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.643.tgz", - "integrity": "sha512-TGomM4gj8adt/uqRgPbu9F0yhUVAR1deww5X0fvbQgpGr9suSMjLgc4IwQ9YKGkp1t03cDbZum20OfAkiTYjAg==" - }, - "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.3", - "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.3.tgz", - "integrity": "sha512-IMqzv5wNQf+E6aHeIqATs0tOLeOTwj1QKbRcS3jBbYkl5oLAserA8yJTT7/VyHUYG91PRmPyeQDObKLPpeS4dw==", - "dev": true, - "requires": { - "bn.js": "^4.4.0", - "brorand": "^1.0.1", - "hash.js": "^1.0.0", - "hmac-drbg": "^1.0.0", - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0", - "minimalistic-crypto-utils": "^1.0.0" - }, - "dependencies": { - "bn.js": { - "version": "4.11.9", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", - "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", - "dev": true - } - } - }, - "emittery": { - "version": "0.7.2", - "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.7.2.tgz", - "integrity": "sha512-A8OG5SR/ij3SsJdWDJdkkSYUjQdCUx6APQXem0SaEePBSRg4eymGYwBkKo1Y6DU+af/Jn2dBQqDBvjnr9Vi8nQ==", - "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" - }, - "dependencies": { - "@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" - } - }, - "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==" - } - } - }, - "emoji-regex": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", - "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", - "dev": true - }, - "emojis-list": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", - "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", - "dev": true - }, - "end-of-stream": { - "version": "1.4.4", - "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", - "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", - "dev": true, - "requires": { - "once": "^1.4.0" - } - }, - "enquirer": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz", - "integrity": "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==", - "dev": true, - "requires": { - "ansi-colors": "^4.1.1" - } - }, - "entities": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz", - "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==", - "dev": true - }, - "env-paths": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.0.tgz", - "integrity": "sha512-6u0VYSCo/OW6IoD5WCLLy9JUGARbamfSavcNXry/eu8aHVFei6CD3Sw+VGX5alea1i9pgPHW0mbu6Xj0uBh7gA==", - "dev": true - }, - "envinfo": { - "version": "7.7.4", - "resolved": "https://registry.npmjs.org/envinfo/-/envinfo-7.7.4.tgz", - "integrity": "sha512-TQXTYFVVwwluWSFis6K2XKxgrD22jEv0FTuLCQI+OjH7rn93+iY0fSSFM5lrSxFY+H1+B0/cvvlamr3UsBivdQ==", - "dev": true - }, - "errno": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.7.tgz", - "integrity": "sha512-MfrRBDWzIWifgq6tJj60gkAwtLNb6sQPlcFrSOflcP1aFmmruKQ2wRnze/8V6kgyz7H3FF8Npzv78mZ7XLLflg==", - "dev": true, - "requires": { - "prr": "~1.0.1" - } - }, - "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.17.7", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.7.tgz", - "integrity": "sha512-VBl/gnfcJ7OercKA9MVaegWsBHFjV492syMudcnQZvt/Dw8ezpcOHYZXa/J96O8vx+g4x65YKhxOwDUh63aS5g==", - "requires": { - "es-to-primitive": "^1.2.1", - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.1", - "is-callable": "^1.2.2", - "is-regex": "^1.1.1", - "object-inspect": "^1.8.0", - "object-keys": "^1.1.1", - "object.assign": "^4.1.1", - "string.prototype.trimend": "^1.0.1", - "string.prototype.trimstart": "^1.0.1" - }, - "dependencies": { - "es-abstract": { - "version": "1.18.0-next.1", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.0-next.1.tgz", - "integrity": "sha512-I4UGspA0wpZXWENrdA0uHbnhte683t3qT/1VFH9aX2dA5PPSf6QW5HHXf5HImaqPmjXaVeVk4RGWnaylmV7uAA==", - "requires": { - "es-to-primitive": "^1.2.1", - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.1", - "is-callable": "^1.2.2", - "is-negative-zero": "^2.0.0", - "is-regex": "^1.1.1", - "object-inspect": "^1.8.0", - "object-keys": "^1.1.1", - "object.assign": "^4.1.1", - "string.prototype.trimend": "^1.0.1", - "string.prototype.trimstart": "^1.0.1" - } - }, - "object.assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.1.tgz", - "integrity": "sha512-VT/cxmx5yaoHSOTSyrCygIDFco+RsibY2NM0a4RdEeY/4KgqezwFtK1yr3U67xYhqJSlASm2pKhLVzPj2lr4bA==", - "requires": { - "define-properties": "^1.1.3", - "es-abstract": "^1.18.0-next.0", - "has-symbols": "^1.0.1", - "object-keys": "^1.1.1" - }, - "dependencies": { - "es-abstract": { - "version": "1.18.0-next.1", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.0-next.1.tgz", - "integrity": "sha512-I4UGspA0wpZXWENrdA0uHbnhte683t3qT/1VFH9aX2dA5PPSf6QW5HHXf5HImaqPmjXaVeVk4RGWnaylmV7uAA==", - "requires": { - "es-to-primitive": "^1.2.1", - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.1", - "is-callable": "^1.2.2", - "is-negative-zero": "^2.0.0", - "is-regex": "^1.1.1", - "object-inspect": "^1.8.0", - "object-keys": "^1.1.1", - "object.assign": "^4.1.1", - "string.prototype.trimend": "^1.0.1", - "string.prototype.trimstart": "^1.0.1" - } - } - } - } - } - }, - "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==", - "requires": { - "is-callable": "^1.1.4", - "is-date-object": "^1.0.1", - "is-symbol": "^1.0.2" - } - }, - "es5-ext": { - "version": "0.10.53", - "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.53.tgz", - "integrity": "sha512-Xs2Stw6NiNHWypzRTY1MtaG/uJlwCk8kH81920ma8mvN8Xq1gsfhZvpkImLQArw8AHnv8MT2I45J3c0R8slE+Q==", - "dev": true, - "requires": { - "es6-iterator": "~2.0.3", - "es6-symbol": "~3.1.3", - "next-tick": "~1.0.0" - } - }, - "es6-iterator": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz", - "integrity": "sha1-p96IkUGgWpSwhUQDstCg+/qY87c=", - "dev": true, - "requires": { - "d": "1", - "es5-ext": "^0.10.35", - "es6-symbol": "^3.1.1" - } - }, - "es6-symbol": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.3.tgz", - "integrity": "sha512-NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA==", - "dev": true, - "requires": { - "d": "^1.0.1", - "ext": "^1.1.2" - } - }, - "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": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" - }, - "escodegen": { - "version": "1.14.3", - "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.14.3.tgz", - "integrity": "sha512-qFcX0XJkdg+PB3xjZZG/wKSuT1PnQWx57+TVSjIMmILd2yC/6ByYElPwJnslDsuWuSAp4AwJGumarAAmJch5Kw==", - "dev": true, - "requires": { - "esprima": "^4.0.1", - "estraverse": "^4.2.0", - "esutils": "^2.0.2", - "optionator": "^0.8.1", - "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, - "optional": true - } - } - }, - "eslint": { - "version": "5.16.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-5.16.0.tgz", - "integrity": "sha512-S3Rz11i7c8AA5JPv7xAH+dOyq/Cu/VXHiHXBPOU1k/JAM5dXqQPt3qcrhpHSorXmrpu2g0gkIBVXAqCpzfoZIg==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.0.0", - "ajv": "^6.9.1", - "chalk": "^2.1.0", - "cross-spawn": "^6.0.5", - "debug": "^4.0.1", - "doctrine": "^3.0.0", - "eslint-scope": "^4.0.3", - "eslint-utils": "^1.3.1", - "eslint-visitor-keys": "^1.0.0", - "espree": "^5.0.1", - "esquery": "^1.0.1", - "esutils": "^2.0.2", - "file-entry-cache": "^5.0.1", - "functional-red-black-tree": "^1.0.1", - "glob": "^7.1.2", - "globals": "^11.7.0", - "ignore": "^4.0.6", - "import-fresh": "^3.0.0", - "imurmurhash": "^0.1.4", - "inquirer": "^6.2.2", - "js-yaml": "^3.13.0", - "json-stable-stringify-without-jsonify": "^1.0.1", - "levn": "^0.3.0", - "lodash": "^4.17.11", - "minimatch": "^3.0.4", - "mkdirp": "^0.5.1", - "natural-compare": "^1.4.0", - "optionator": "^0.8.2", - "path-is-inside": "^1.0.2", - "progress": "^2.0.0", - "regexpp": "^2.0.1", - "semver": "^5.5.1", - "strip-ansi": "^4.0.0", - "strip-json-comments": "^2.0.1", - "table": "^5.2.3", - "text-table": "^0.2.0" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true - }, - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "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" - } - }, - "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 - }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } - } - }, - "eslint-config-standard": { - "version": "12.0.0", - "resolved": "https://registry.npmjs.org/eslint-config-standard/-/eslint-config-standard-12.0.0.tgz", - "integrity": "sha512-COUz8FnXhqFitYj4DTqHzidjIL/t4mumGZto5c7DrBpvWoie+Sn3P4sLEzUGeYhRElWuFEf8K1S1EfvD1vixCQ==", - "dev": true - }, - "eslint-friendly-formatter": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/eslint-friendly-formatter/-/eslint-friendly-formatter-4.0.1.tgz", - "integrity": "sha1-J9UE3IN/fK3b8gGy6EpO5zC6Pvo=", - "dev": true, - "requires": { - "chalk": "^2.0.1", - "coalescy": "1.0.0", - "extend": "^3.0.0", - "minimist": "^1.2.0", - "strip-ansi": "^4.0.0", - "text-table": "^0.2.0" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } - } - }, - "eslint-import-resolver-node": { - "version": "0.3.4", - "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.4.tgz", - "integrity": "sha512-ogtf+5AB/O+nM6DIeBUNr2fuT7ot9Qg/1harBfBtaP13ekEWFQEEMP94BCB7zaNW3gyY+8SHYF00rnqYwXKWOA==", - "dev": true, - "requires": { - "debug": "^2.6.9", - "resolve": "^1.13.1" - } - }, - "eslint-loader": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/eslint-loader/-/eslint-loader-3.0.4.tgz", - "integrity": "sha512-I496aBd+Hi23Y0Cx+sKvw+VwlJre4ScIRlkrvTO6Scq68X/UXbN6F3lAhN8b0Zv8atAyprkyrA42K5QBJtCyaw==", - "dev": true, - "requires": { - "fs-extra": "^8.1.0", - "loader-fs-cache": "^1.0.3", - "loader-utils": "^1.2.3", - "object-hash": "^2.0.3", - "schema-utils": "^2.6.5" - } - }, - "eslint-module-utils": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.6.0.tgz", - "integrity": "sha512-6j9xxegbqe8/kZY8cYpcp0xhbK0EgJlg3g9mib3/miLaExuuwc3n5UEfSnU6hWMbT0FAYVvDbL9RrRgpUeQIvA==", - "dev": true, - "requires": { - "debug": "^2.6.9", - "pkg-dir": "^2.0.0" - }, - "dependencies": { - "find-up": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", - "dev": 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, - "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, - "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, - "requires": { - "p-limit": "^1.1.0" - } - }, - "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 - }, - "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 - }, - "pkg-dir": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz", - "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", - "dev": true, - "requires": { - "find-up": "^2.1.0" - } - } - } - }, - "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, - "requires": { - "eslint-utils": "^2.0.0", - "regexpp": "^3.0.0" - }, - "dependencies": { - "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, - "requires": { - "eslint-visitor-keys": "^1.1.0" - } - }, - "regexpp": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.1.0.tgz", - "integrity": "sha512-ZOIzd8yVsQQA7j8GCSlPGXwg5PfmA1mrq0JP4nGhh54LaKN3xdai/vHUDu74pKwV8OxseMS65u2NImosQcSD0Q==", - "dev": true - } - } - }, - "eslint-plugin-import": { - "version": "2.22.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.22.1.tgz", - "integrity": "sha512-8K7JjINHOpH64ozkAhpT3sd+FswIZTfMZTjdx052pnWrgRCVfp8op9tbjpAk3DdUeI/Ba4C8OjdC0r90erHEOw==", - "dev": true, - "requires": { - "array-includes": "^3.1.1", - "array.prototype.flat": "^1.2.3", - "contains-path": "^0.1.0", - "debug": "^2.6.9", - "doctrine": "1.5.0", - "eslint-import-resolver-node": "^0.3.4", - "eslint-module-utils": "^2.6.0", - "has": "^1.0.3", - "minimatch": "^3.0.4", - "object.values": "^1.1.1", - "read-pkg-up": "^2.0.0", - "resolve": "^1.17.0", - "tsconfig-paths": "^3.9.0" - }, - "dependencies": { - "doctrine": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-1.5.0.tgz", - "integrity": "sha1-N53Ocw9hZvds76TmcHoVmwLFpvo=", - "dev": true, - "requires": { - "esutils": "^2.0.2", - "isarray": "^1.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, - "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-utils": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz", - "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==", - "dev": true, - "requires": { - "eslint-visitor-keys": "^1.1.0" - } - }, - "ignore": { - "version": "5.1.8", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.8.tgz", - "integrity": "sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw==", - "dev": true - }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } - } - }, - "eslint-plugin-promise": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-promise/-/eslint-plugin-promise-4.3.1.tgz", - "integrity": "sha512-bY2sGqyptzFBDLh/GMbAxfdJC+b0f23ME63FOE4+Jao0oZ3E1LEwFtWJX/1pGMJLiTtrSSern2CRM/g+dfc0eQ==", - "dev": true - }, - "eslint-plugin-standard": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-standard/-/eslint-plugin-standard-4.1.0.tgz", - "integrity": "sha512-ZL7+QRixjTR6/528YNGyDotyffm5OQst/sGxKDwGb9Uqs4In5Egi4+jbobhqJoyoCM6/7v/1A5fhQ7ScMtDjaQ==", - "dev": true - }, - "eslint-plugin-vue": { - "version": "5.2.3", - "resolved": "https://registry.npmjs.org/eslint-plugin-vue/-/eslint-plugin-vue-5.2.3.tgz", - "integrity": "sha512-mGwMqbbJf0+VvpGR5Lllq0PMxvTdrZ/ZPjmhkacrCHbubJeJOt+T6E3HUzAifa2Mxi7RSdJfC9HFpOeSYVMMIw==", - "dev": true, - "requires": { - "vue-eslint-parser": "^5.0.0" - } - }, - "eslint-scope": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-4.0.3.tgz", - "integrity": "sha512-p7VutNr1O/QrxysMo3E45FjYDTeXBy0iTltPFNSqKAIfjDSXC+4dj+qfyuD8bfAXrW/y6lW3O76VaYNPKfpKrg==", - "dev": true, - "requires": { - "esrecurse": "^4.1.0", - "estraverse": "^4.1.1" - } - }, - "eslint-utils": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-1.4.3.tgz", - "integrity": "sha512-fbBN5W2xdY45KulGXmLHZ3c3FHfVYmKg0IrAKGOkT/464PQsx2UeIzfz1RmEci+KLm1bBaAzZAh8+/E+XAeZ8Q==", - "dev": true, - "requires": { - "eslint-visitor-keys": "^1.1.0" - } - }, - "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 - }, - "espree": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-5.0.1.tgz", - "integrity": "sha512-qWAZcWh4XE/RwzLJejfcofscgMc9CamR6Tn1+XRXNzrvUSSbiAjGOI/fggztjIi7y9VLPqnICMIPiGyr8JaZ0A==", - "dev": true, - "requires": { - "acorn": "^6.0.7", - "acorn-jsx": "^5.0.0", - "eslint-visitor-keys": "^1.0.0" - } - }, - "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 - }, - "esquery": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.3.1.tgz", - "integrity": "sha512-olpvt9QG0vniUBZspVRN6lwB7hOZoTRtT+jzR+tS4ffYx2mzbw+z0XCOk44aaLYKApNX5nMm+E+P6o25ip/DHQ==", - "dev": 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 - } - } - }, - "esrecurse": { - "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, - "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==", - "dev": true - } - } - }, - "estraverse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", - "dev": true - }, - "esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==" - }, - "events": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/events/-/events-3.2.0.tgz", - "integrity": "sha512-/46HWwbfCX2xTawVfkKLGxMifJYQBWMwY1mjywRtb4c9x8l5NP3KoJtnIOiL1hfdRkIuYhETxQlo62IF8tcnlg==", - "dev": 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, - "requires": { - "md5.js": "^1.3.4", - "safe-buffer": "^5.1.1" - } - }, - "exec-sh": { - "version": "0.3.4", - "resolved": "https://registry.npmjs.org/exec-sh/-/exec-sh-0.3.4.tgz", - "integrity": "sha512-sEFIkc61v75sWeOe72qyrqg2Qg0OuLESziUDk/O/z2qgS15y2gWVFrI6f2Qn/qw/0/NCfCEsmNA4zOjkwEZT1A==", - "dev": true - }, - "execa": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-1.0.0.tgz", - "integrity": "sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==", - "dev": true, - "requires": { - "cross-spawn": "^6.0.0", - "get-stream": "^4.0.0", - "is-stream": "^1.1.0", - "npm-run-path": "^2.0.0", - "p-finally": "^1.0.0", - "signal-exit": "^3.0.0", - "strip-eof": "^1.0.0" - } - }, - "execall": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/execall/-/execall-2.0.0.tgz", - "integrity": "sha512-0FU2hZ5Hh6iQnarpRtQurM/aAvp3RIbfvgLHrcqJYzhXyV2KFruhuChf9NC6waAhiUR7FFtlugkI4p7f2Fqlow==", - "dev": 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 - }, - "expand-brackets": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", - "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", - "requires": { - "debug": "^2.3.3", - "define-property": "^0.2.5", - "extend-shallow": "^2.0.1", - "posix-character-classes": "^0.1.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "expect": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/expect/-/expect-26.6.2.tgz", - "integrity": "sha512-9/hlOBkQl2l/PLHJx6JjoDF6xPKcJEsUlWKb23rKE7KzeDqUZKXKNMW27KIue5JMdBV9HgmoJPcc8HtO85t9IA==", - "dev": true, - "requires": { - "@jest/types": "^26.6.2", - "ansi-styles": "^4.0.0", - "jest-get-type": "^26.3.0", - "jest-matcher-utils": "^26.6.2", - "jest-message-util": "^26.6.2", - "jest-regex-util": "^26.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" - } - } - } - }, - "ext": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/ext/-/ext-1.4.0.tgz", - "integrity": "sha512-Key5NIsUxdqKg3vIsdw9dSuXpPCQ297y6wBjL30edxwPgt2E44WcWBZey/ZvUc6sERLTxKdyCu4gZFmUbk1Q7A==", - "dev": true, - "requires": { - "type": "^2.0.0" - }, - "dependencies": { - "type": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/type/-/type-2.1.0.tgz", - "integrity": "sha512-G9absDWvhAWCV2gmF1zKud3OyC61nZDwWvBL2DApaVFogI07CprggiQAOOjvp2NRjYWFzPyu7vwtDrQFq8jeSA==", - "dev": true - } - } - }, - "extend": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", - "dev": true - }, - "extend-shallow": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", - "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", - "requires": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" - }, - "dependencies": { - "is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "requires": { - "is-plain-object": "^2.0.4" - } - } - } - }, - "external-editor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", - "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", - "dev": true, - "requires": { - "chardet": "^0.7.0", - "iconv-lite": "^0.4.24", - "tmp": "^0.0.33" - } - }, - "extglob": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", - "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", - "requires": { - "array-unique": "^0.3.2", - "define-property": "^1.0.0", - "expand-brackets": "^2.1.4", - "extend-shallow": "^2.0.1", - "fragment-cache": "^0.2.1", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "requires": { - "is-descriptor": "^1.0.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - } - } - }, - "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" - } - }, - "extsprintf": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", - "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", - "dev": true - }, - "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==", - "dev": true - }, - "fast-glob": { - "version": "3.2.5", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.5.tgz", - "integrity": "sha512-2DtFcgT68wiTTiwZ2hNdJfcHNke9XOfnwmBRWXhmeKM8rF0TGwmC/Qto3S7RoZKp5cilZbxzO5iTNTQsJ+EeDg==", - "dev": true, - "requires": { - "@nodelib/fs.stat": "^2.0.2", - "@nodelib/fs.walk": "^1.2.3", - "glob-parent": "^5.1.0", - "merge2": "^1.3.0", - "micromatch": "^4.0.2", - "picomatch": "^2.2.1" - }, - "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, - "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" - } - }, - "glob-parent": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.1.tgz", - "integrity": "sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==", - "dev": true, - "requires": { - "is-glob": "^4.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.2", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", - "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", - "dev": true, - "requires": { - "braces": "^3.0.1", - "picomatch": "^2.0.5" - } - }, - "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" - } - } - } - }, - "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==", - "dev": true - }, - "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 - }, - "fastq": { - "version": "1.10.1", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.10.1.tgz", - "integrity": "sha512-AWuv6Ery3pM+dY7LYS8YIaCiQvUaos9OB1RyNgaOWnaX+Tik7Onvcsf8x8c+YtDeT0maYLniBip2hox5KtEXXA==", - "dev": true, - "requires": { - "reusify": "^1.0.4" - } - }, - "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" - } - }, - "figgy-pudding": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/figgy-pudding/-/figgy-pudding-3.5.2.tgz", - "integrity": "sha512-0btnI/H8f2pavGMN8w40mlSKOfTK2SVJmBfBeVIj3kNw0swwgzyRq0d5TJVOwodFmtvpPeWPN/MCcfuWF0Ezbw==", - "dev": true - }, - "figures": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz", - "integrity": "sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI=", - "dev": true, - "requires": { - "escape-string-regexp": "^1.0.5" - } - }, - "file-entry-cache": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-5.0.1.tgz", - "integrity": "sha512-bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g==", - "dev": true, - "requires": { - "flat-cache": "^2.0.1" - } - }, - "file-loader": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/file-loader/-/file-loader-6.2.0.tgz", - "integrity": "sha512-qo3glqyTa61Ytg4u73GultjHGjdRyig3tG6lPtyX/jOEJvHif9uB0/OCI2Kif6ctF3caQTW2G5gym21oAsI4pw==", - "dev": true, - "requires": { - "loader-utils": "^2.0.0", - "schema-utils": "^3.0.0" - }, - "dependencies": { - "ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "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" - } - }, - "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" - } - }, - "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==", - "dev": true, - "requires": { - "@types/json-schema": "^7.0.6", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" - } - } - } - }, - "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 - }, - "fill-range": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", - "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", - "requires": { - "extend-shallow": "^2.0.1", - "is-number": "^3.0.0", - "repeat-string": "^1.6.1", - "to-regex-range": "^2.1.0" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "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": "2.1.0", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz", - "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==", - "dev": true, - "requires": { - "commondir": "^1.0.1", - "make-dir": "^2.0.0", - "pkg-dir": "^3.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": "2.0.1", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-2.0.1.tgz", - "integrity": "sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA==", - "dev": true, - "requires": { - "flatted": "^2.0.0", - "rimraf": "2.6.3", - "write": "1.0.3" - } - }, - "flatted": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.2.tgz", - "integrity": "sha512-r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA==", - "dev": true - }, - "flush-write-stream": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/flush-write-stream/-/flush-write-stream-1.1.1.tgz", - "integrity": "sha512-3Z4XhFZ3992uIq0XOqb9AreonueSYphE6oYbpt5+3u06JWklbsPkNv3ZKkP9Bz/r+1MWCaMoSQ28P85+1Yc77w==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "readable-stream": "^2.3.6" - } - }, - "follow-redirects": { - "version": "1.13.1", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.13.1.tgz", - "integrity": "sha512-SSG5xmZh1mkPGyKzjZP8zLjltIfpW32Y5QpdNJyjcfGxK3qo3NDDkZOZSFiGn1A6SclQxY9GzEwAHQ3dmYRWpg==" - }, - "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" - }, - "dependencies": { - "esprima": { - "version": "2.7.3", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-2.7.3.tgz", - "integrity": "sha1-luO3DVd59q1JzQMmc9HDEnZ7pYE=", - "dev": true - } - } - }, - "for-in": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", - "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=" - }, - "forever-agent": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", - "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", - "dev": true - }, - "form-data": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", - "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", - "dev": true, - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.6", - "mime-types": "^2.1.12" - } - }, - "fragment-cache": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", - "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", - "requires": { - "map-cache": "^0.2.2" - } - }, - "from2": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/from2/-/from2-2.3.0.tgz", - "integrity": "sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8=", - "dev": true, - "requires": { - "inherits": "^2.0.1", - "readable-stream": "^2.0.0" - } - }, - "fs-extra": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", - "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", - "dev": true, - "requires": { - "graceful-fs": "^4.2.0", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - } - }, - "fs-minipass": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", - "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", - "dev": true, - "requires": { - "minipass": "^3.0.0" - } - }, - "fs-readdir-recursive": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/fs-readdir-recursive/-/fs-readdir-recursive-1.1.0.tgz", - "integrity": "sha512-GNanXlVr2pf02+sPN40XN8HG+ePaNcvM0q5mZBd668Obwb0yD5GiUbZOFgwn8kGMY6I3mdyDJzieUy3PTYyTRA==" - }, - "fs-write-stream-atomic": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz", - "integrity": "sha1-tH31NJPvkR33VzHnCp3tAYnbQMk=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "iferr": "^0.1.5", - "imurmurhash": "^0.1.4", - "readable-stream": "1 || 2" - } - }, - "fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" - }, - "fsevents": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", - "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==" - }, - "function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" - }, - "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 - }, - "gauge": { - "version": "2.7.4", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", - "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", - "dev": true, - "requires": { - "aproba": "^1.0.3", - "console-control-strings": "^1.0.0", - "has-unicode": "^2.0.0", - "object-assign": "^4.1.0", - "signal-exit": "^3.0.0", - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1", - "wide-align": "^1.1.0" - }, - "dependencies": { - "is-fullwidth-code-point": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", - "dev": true, - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", - "dev": true, - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } - } - } - }, - "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==" - }, - "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==", - "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": "4.0.1", - "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz", - "integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=", - "dev": true - }, - "get-stream": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", - "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", - "dev": true, - "requires": { - "pump": "^3.0.0" - } - }, - "get-value": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", - "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=" - }, - "getpass": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", - "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0" - } - }, - "glob": { - "version": "7.1.6", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", - "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", - "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": "3.1.0", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", - "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", - "optional": true, - "requires": { - "is-glob": "^3.1.0", - "path-dirname": "^1.0.0" - }, - "dependencies": { - "is-glob": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", - "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", - "optional": true, - "requires": { - "is-extglob": "^2.1.0" - } - } - } - }, - "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, - "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, - "requires": { - "ini": "^1.3.5", - "kind-of": "^6.0.2", - "which": "^1.3.1" - } - }, - "globals": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==" - }, - "globby": { - "version": "11.0.2", - "resolved": "https://registry.npmjs.org/globby/-/globby-11.0.2.tgz", - "integrity": "sha512-2ZThXDvvV8fYFRVIxnrMQBipZQDr7MxKAmQK1vujaj9/7eF0efG7BPUKJ7jP7G5SLF37xKDXvO4S/KKLj/Z0og==", - "dev": 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": { - "ignore": { - "version": "5.1.8", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.8.tgz", - "integrity": "sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw==", - "dev": true - }, - "slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "dev": true - } - } - }, - "globjoin": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/globjoin/-/globjoin-0.1.4.tgz", - "integrity": "sha1-L0SUrIkZ43Z8XLtpHp9GMyQoXUM=", - "dev": 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" - } - }, - "gonzales-pe": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/gonzales-pe/-/gonzales-pe-4.3.0.tgz", - "integrity": "sha512-otgSPpUmdWJ43VXyiNgEYE4luzHCL2pz4wQ0OnDluC6Eg4Ko3Vexy/SrSynglw/eR+OhkzmqFCZa/OFa/RgAOQ==", - "dev": true, - "requires": { - "minimist": "^1.2.5" - } - }, - "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.4", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.4.tgz", - "integrity": "sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw==" - }, - "growly": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/growly/-/growly-1.3.0.tgz", - "integrity": "sha1-8QdIy+dq+WS3yWyTxrzCivEgwIE=", - "dev": true, - "optional": true - }, - "hammerjs": { - "version": "2.0.8", - "resolved": "https://registry.npmjs.org/hammerjs/-/hammerjs-2.0.8.tgz", - "integrity": "sha1-BO93hiz/K7edMPdpIJWTAiK/YPE=" - }, - "har-schema": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", - "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=", - "dev": true - }, - "har-validator": { - "version": "5.1.5", - "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz", - "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==", - "dev": true, - "requires": { - "ajv": "^6.12.3", - "har-schema": "^2.0.0" - } - }, - "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 - }, - "has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "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" - } - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=" - }, - "has-symbols": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz", - "integrity": "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==" - }, - "has-unicode": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=", - "dev": true - }, - "has-value": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz", - "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=", - "requires": { - "get-value": "^2.0.6", - "has-values": "^1.0.0", - "isobject": "^3.0.0" - } - }, - "has-values": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz", - "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=", - "requires": { - "is-number": "^3.0.0", - "kind-of": "^4.0.0" - }, - "dependencies": { - "kind-of": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", - "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "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, - "requires": { - "inherits": "^2.0.4", - "readable-stream": "^3.6.0", - "safe-buffer": "^5.2.0" - }, - "dependencies": { - "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" - } - }, - "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 - } - } - }, - "hash-sum": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/hash-sum/-/hash-sum-1.0.2.tgz", - "integrity": "sha1-M7QHd3VMZDJXPBIMw4CLvRDUfwQ=", - "dev": 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, - "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 - }, - "hex-rgb": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/hex-rgb/-/hex-rgb-2.0.0.tgz", - "integrity": "sha512-JDPETuFBgYKFWufLB9tk7SaLoia5nSsOSa2DWzbLvK0TXxQglIQ4FBxrO9QmfUKenJJjBfFQ0jJ6jSIK2468kQ==" - }, - "hmac-drbg": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", - "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=", - "dev": true, - "requires": { - "hash.js": "^1.0.3", - "minimalistic-assert": "^1.0.0", - "minimalistic-crypto-utils": "^1.0.1" - } - }, - "hosted-git-info": { - "version": "2.8.8", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.8.tgz", - "integrity": "sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg==", - "dev": true - }, - "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-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 - }, - "htmlparser2": { - "version": "3.10.1", - "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.10.1.tgz", - "integrity": "sha512-IgieNijUMbkDovyoKObU1DUhm1iwNYE/fuifEoEHfd1oZKZDaONBSkal7Y01shxsM49R4XaMdGez3WnF9UfiCQ==", - "dev": true, - "requires": { - "domelementtype": "^1.3.1", - "domhandler": "^2.3.0", - "domutils": "^1.5.1", - "entities": "^1.1.1", - "inherits": "^2.0.1", - "readable-stream": "^3.1.1" - }, - "dependencies": { - "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" - } - } - } - }, - "http-signature": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", - "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0", - "jsprim": "^1.2.2", - "sshpk": "^1.7.0" - } - }, - "https-browserify": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz", - "integrity": "sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=", - "dev": true - }, - "human-signals": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-1.1.1.tgz", - "integrity": "sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw==", - "dev": true - }, - "ical.js": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/ical.js/-/ical.js-1.4.0.tgz", - "integrity": "sha512-ltHZuOFNNjcyEYbzDgjemS7LWIFh2vydJeznxQHUh3dnarbxqOYsWONYteBVAq1MEOHnwXFGN2eskZReHclnrA==" - }, - "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" - } - }, - "icss-utils": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-4.1.1.tgz", - "integrity": "sha512-4aFq7wvWyMHKgxsH8QQtGpvbASCf+eM3wPRLI6R+MgAnTCZ6STYsRvttLvRWK0Nfif5piF394St3HeJDaljGPA==", - "dev": true, - "requires": { - "postcss": "^7.0.14" - } - }, - "ieee754": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", - "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", - "dev": true - }, - "iferr": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/iferr/-/iferr-0.1.5.tgz", - "integrity": "sha1-xg7taebY/bazEEofy8ocGS3FtQE=", - "dev": true - }, - "ignore": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", - "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", - "dev": true - }, - "import-fresh": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.2.1.tgz", - "integrity": "sha512-6e1q1cnWP2RXD9/keSkxHScg508CdXqXWgWBaETNhyuBFz+kUZlKboh+ISK+bU++DmbHimVBrOz/zzPe0sZ3sQ==", - "dev": 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 - } - } - }, - "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 - }, - "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": "2.1.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz", - "integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=", - "dev": true, - "requires": { - "repeating": "^2.0.0" - } - }, - "indexes-of": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/indexes-of/-/indexes-of-1.0.1.tgz", - "integrity": "sha1-8w9xbI4r00bHtn0985FVZqfAVgc=", - "dev": true - }, - "infer-owner": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz", - "integrity": "sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==", - "dev": true - }, - "inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", - "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==" - }, - "ini": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", - "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", - "dev": true - }, - "inquirer": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-6.5.2.tgz", - "integrity": "sha512-cntlB5ghuB0iuO65Ovoi8ogLHiWGs/5yNrtUcKjFhSSiVeAIVpD7koaSU9RM8mpXw5YDi9RdYXGQMaOURB7ycQ==", - "dev": true, - "requires": { - "ansi-escapes": "^3.2.0", - "chalk": "^2.4.2", - "cli-cursor": "^2.1.0", - "cli-width": "^2.0.0", - "external-editor": "^3.0.3", - "figures": "^2.0.0", - "lodash": "^4.17.12", - "mute-stream": "0.0.7", - "run-async": "^2.2.0", - "rxjs": "^6.4.0", - "string-width": "^2.1.0", - "strip-ansi": "^5.1.0", - "through": "^2.3.6" - }, - "dependencies": { - "ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", - "dev": true - }, - "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "dev": true, - "requires": { - "ansi-regex": "^4.1.0" - } - } - } - }, - "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 - }, - "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-regex": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/ip-regex/-/ip-regex-2.1.0.tgz", - "integrity": "sha1-+ni/XS5pE8kRzp+BnuUUa7bYROk=", - "dev": true - }, - "is-accessor-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", - "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-alphabetical": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-alphabetical/-/is-alphabetical-1.0.4.tgz", - "integrity": "sha512-DwzsA04LQ10FHTZuL0/grVDk4rFoVH1pjAToYwBrHSxcrBIGQuXrQMtD5U1b0U2XVgKZCTLLP8u2Qxqhy3l2Vg==", - "dev": true - }, - "is-alphanumerical": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-alphanumerical/-/is-alphanumerical-1.0.4.tgz", - "integrity": "sha512-UzoZUr+XfVz3t3v4KyGEniVL9BDRoQtY7tOyrRybkVNjDFWyo1yhXNGrrBTQxp3ib9BLAWs7k2YKBQsFRkZG9A==", - "dev": true, - "requires": { - "is-alphabetical": "^1.0.0", - "is-decimal": "^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-binary-path": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", - "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", - "optional": true, - "requires": { - "binary-extensions": "^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.2", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.2.tgz", - "integrity": "sha512-dnMqspv5nU3LoewK2N/y7KLtxtakvTuaCsU9FU50/QDmdbHNy/4/JuRtMHqRU22o3q+W89YQndQEeCVwK+3qrA==" - }, - "is-ci": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz", - "integrity": "sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==", - "dev": true, - "requires": { - "ci-info": "^2.0.0" - } - }, - "is-core-module": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.2.0.tgz", - "integrity": "sha512-XRAfAdyyY5F5cOXn7hYQDqh2Xmii+DEfIcQGxK/uNwMHhIkPWO0g8msXcbzLe+MpGoR951MlqM/2iIlU4vKDdQ==", - "dev": true, - "requires": { - "has": "^1.0.3" - } - }, - "is-data-descriptor": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", - "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-date-object": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.2.tgz", - "integrity": "sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g==" - }, - "is-decimal": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-decimal/-/is-decimal-1.0.4.tgz", - "integrity": "sha512-RGdriMmQQvZ2aqaQq3awNA6dCGtKpiDFcOzrTWrDAT2MiWrKQVPmxLGHl7Y2nNu6led0kEyoX0enY0qXYsv9zw==", - "dev": true - }, - "is-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", - "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", - "requires": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" - }, - "dependencies": { - "kind-of": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", - "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==" - } - } - }, - "is-docker": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.1.1.tgz", - "integrity": "sha512-ZOoqiXfEwtGknTiuDEy8pN2CfE3TxMHprvNer1mXiqwkOT77Rw3YVrUQ52EqAOU3QAWDQ+bQdx7HJzrv7LS2Hw==", - "dev": true, - "optional": true - }, - "is-extendable": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", - "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=" - }, - "is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=" - }, - "is-finite": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.1.0.tgz", - "integrity": "sha512-cdyMtqX/BOqqNBBiKlIVkytNHm49MtMlYyn1zxzvJKWmFMlGzm+ry5BBfYyeY9YmNKbRSo/o7OX9w9ale0wg3w==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "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-glob": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", - "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", - "requires": { - "is-extglob": "^2.1.1" - } - }, - "is-hexadecimal": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-hexadecimal/-/is-hexadecimal-1.0.4.tgz", - "integrity": "sha512-gyPJuv83bHMpocVYoqof5VDiZveEoGoFL8m3BXNb2VW8Xs+rz9kqO8LOQ5DH6EsuvilT1ApazU0pyl+ytbPtlw==", - "dev": true - }, - "is-negative-zero": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.1.tgz", - "integrity": "sha512-2z6JzQvZRa9A2Y7xC6dQQm4FSTSTNWjKIYYTt4246eMTJmIo0Q+ZyOsU66X8lxK1AbB92dFeglPLrhwpeRKO6w==" - }, - "is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-plain-obj": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz", - "integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==", - "dev": 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==", - "requires": { - "isobject": "^3.0.1" - } - }, - "is-potential-custom-element-name": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.0.tgz", - "integrity": "sha1-DFLlS8yjkbssSUsh6GJtczbG45c=", - "dev": true - }, - "is-regex": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.1.tgz", - "integrity": "sha512-1+QkEcxiLlB7VEyFtyBg94e08OAsvq7FUBgApTq/w2ymCLyKJgDPsybBENVtA7XCQEgEXxKPonG+mvYRxh/LIg==", - "requires": { - "has-symbols": "^1.0.1" - } - }, - "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 - }, - "is-stream": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", - "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", - "dev": true - }, - "is-string": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.5.tgz", - "integrity": "sha512-buY6VNRjhQMiF1qWDouloZlQbRhDPCebwxSjxMjxgemYT46YMd2NR0/H+fBhEfWX4A/w9TBJ+ol+okqJKFE6vQ==", - "dev": true - }, - "is-symbol": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.3.tgz", - "integrity": "sha512-OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ==", - "requires": { - "has-symbols": "^1.0.1" - } - }, - "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-utf8": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz", - "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=", - "dev": true - }, - "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-windows": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", - "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==" - }, - "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, - "optional": 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=" - }, - "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=" - }, - "isstream": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", - "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=", - "dev": true - }, - "istanbul-lib-coverage": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.0.tgz", - "integrity": "sha512-UiUIqxMgRDET6eR+o5HbfRYP1l0hqkWOs7vNxC/mggutCMUIhWMm8gAHb8tHlyfD3/l6rlgNA5cKdDzEAf6hEg==", - "dev": true - }, - "istanbul-lib-instrument": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.3.tgz", - "integrity": "sha512-BXgQl9kf4WTCPCCpmFGoJkz/+uhvm7h7PFKUYxh7qarQd3ER33vHG//qaE8eN25l07YqZPpHXU9I09l/RD5aGQ==", - "dev": true, - "requires": { - "@babel/core": "^7.7.5", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-coverage": "^3.0.0", - "semver": "^6.3.0" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } - } - }, - "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" - } - }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "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" - } - } - } - }, - "istanbul-lib-source-maps": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.0.tgz", - "integrity": "sha512-c16LpFRkR8vQXyHZ5nLpY35JZtzj1PQY1iZmesUbf1FZHbIupcWfjgOXBY9YHkLEQ6puz1u4Dgj6qmU/DisrZg==", - "dev": true, - "requires": { - "debug": "^4.1.1", - "istanbul-lib-coverage": "^3.0.0", - "source-map": "^0.6.1" - }, - "dependencies": { - "debug": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", - "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", - "dev": true, - "requires": { - "ms": "2.1.2" - } - }, - "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 - }, - "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.0.2", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.0.2.tgz", - "integrity": "sha512-9tZvz7AiR3PEDNGiV9vIouQ/EAcqMXFmkcA1CDFTwOB98OZVDL0PH9glHotf5Ugp6GCOTypfzGWI/OqjWNCRUw==", - "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": "26.6.3", - "resolved": "https://registry.npmjs.org/jest/-/jest-26.6.3.tgz", - "integrity": "sha512-lGS5PXGAzR4RF7V5+XObhqz2KZIDUA1yD0DG6pBVmy10eh0ZIXQImRuzocsI/N2XZ1GrLFwTS27In2i2jlpq1Q==", - "dev": true, - "requires": { - "@jest/core": "^26.6.3", - "import-local": "^3.0.2", - "jest-cli": "^26.6.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.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", - "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", - "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 - }, - "jest-cli": { - "version": "26.6.3", - "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-26.6.3.tgz", - "integrity": "sha512-GF9noBSa9t08pSyl3CY4frMrqp+aQXFGFkf5hEPbh/pIUFYWMK6ZLTfbmadxJVcJrdRoChlWQsA2VkJcDFK8hg==", - "dev": true, - "requires": { - "@jest/core": "^26.6.3", - "@jest/test-result": "^26.6.2", - "@jest/types": "^26.6.2", - "chalk": "^4.0.0", - "exit": "^0.1.2", - "graceful-fs": "^4.2.4", - "import-local": "^3.0.2", - "is-ci": "^2.0.0", - "jest-config": "^26.6.3", - "jest-util": "^26.6.2", - "jest-validate": "^26.6.2", - "prompts": "^2.0.1", - "yargs": "^15.4.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, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "jest-changed-files": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-26.6.2.tgz", - "integrity": "sha512-fDS7szLcY9sCtIip8Fjry9oGf3I2ht/QT21bAHm5Dmf0mD4X3ReNUf17y+bO6fR8WgbIZTlbyG1ak/53cbRzKQ==", - "dev": true, - "requires": { - "@jest/types": "^26.6.2", - "execa": "^4.0.0", - "throat": "^5.0.0" - }, - "dependencies": { - "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" - } - }, - "execa": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-4.1.0.tgz", - "integrity": "sha512-j5W0//W7f8UxAn8hXVnwG8tLwdiUy4FJLcSupCg6maBYZDpyBvTApK7KyuI4bKj8KOh1r2YH+6ucuYtJv1bTZA==", - "dev": true, - "requires": { - "cross-spawn": "^7.0.0", - "get-stream": "^5.0.0", - "human-signals": "^1.1.1", - "is-stream": "^2.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^4.0.0", - "onetime": "^5.1.0", - "signal-exit": "^3.0.2", - "strip-final-newline": "^2.0.0" - } - }, - "get-stream": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", - "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", - "dev": true, - "requires": { - "pump": "^3.0.0" - } - }, - "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 - }, - "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 - }, - "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" - } - }, - "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" - } - }, - "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 - }, - "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 - }, - "which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - } - } - }, - "jest-config": { - "version": "26.6.3", - "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-26.6.3.tgz", - "integrity": "sha512-t5qdIj/bCj2j7NFVHb2nFB4aUdfucDn3JRKgrZnplb8nieAirAzRSHP8uDEd+qV6ygzg9Pz4YG7UTJf94LPSyg==", - "dev": true, - "requires": { - "@babel/core": "^7.1.0", - "@jest/test-sequencer": "^26.6.3", - "@jest/types": "^26.6.2", - "babel-jest": "^26.6.3", - "chalk": "^4.0.0", - "deepmerge": "^4.2.2", - "glob": "^7.1.1", - "graceful-fs": "^4.2.4", - "jest-environment-jsdom": "^26.6.2", - "jest-environment-node": "^26.6.2", - "jest-get-type": "^26.3.0", - "jest-jasmine2": "^26.6.3", - "jest-regex-util": "^26.0.0", - "jest-resolve": "^26.6.2", - "jest-util": "^26.6.2", - "jest-validate": "^26.6.2", - "micromatch": "^4.0.2", - "pretty-format": "^26.6.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" - } - }, - "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.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", - "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", - "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.2", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", - "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", - "dev": true, - "requires": { - "braces": "^3.0.1", - "picomatch": "^2.0.5" - } - }, - "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": "26.6.2", - "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-26.6.2.tgz", - "integrity": "sha512-6m+9Z3Gv9wN0WFVasqjCL/06+EFCMTqDEUl/b87HYK2rAPTyfz4ZIuSlPhY51PIQRWx5TaxeF1qmXKe9gfN3sA==", - "dev": true, - "requires": { - "chalk": "^4.0.0", - "diff-sequences": "^26.6.2", - "jest-get-type": "^26.3.0", - "pretty-format": "^26.6.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.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", - "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", - "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": "26.0.0", - "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-26.0.0.tgz", - "integrity": "sha512-RDZ4Iz3QbtRWycd8bUEPxQsTlYazfYn/h5R65Fc6gOfwozFhoImx+affzky/FFBuqISPTqjXomoIGJVKBWoo0w==", - "dev": true, - "requires": { - "detect-newline": "^3.0.0" - } - }, - "jest-each": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-26.6.2.tgz", - "integrity": "sha512-Mer/f0KaATbjl8MCJ+0GEpNdqmnVmDYqCTJYTvoo7rqmRiDllmp2AYN+06F93nXcY3ur9ShIjS+CO/uD+BbH4A==", - "dev": true, - "requires": { - "@jest/types": "^26.6.2", - "chalk": "^4.0.0", - "jest-get-type": "^26.3.0", - "jest-util": "^26.6.2", - "pretty-format": "^26.6.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.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", - "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", - "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": "26.6.2", - "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-26.6.2.tgz", - "integrity": "sha512-jgPqCruTlt3Kwqg5/WVFyHIOJHsiAvhcp2qiR2QQstuG9yWox5+iHpU3ZrcBxW14T4fe5Z68jAfLRh7joCSP2Q==", - "dev": true, - "requires": { - "@jest/environment": "^26.6.2", - "@jest/fake-timers": "^26.6.2", - "@jest/types": "^26.6.2", - "@types/node": "*", - "jest-mock": "^26.6.2", - "jest-util": "^26.6.2", - "jsdom": "^16.4.0" - } - }, - "jest-environment-node": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-26.6.2.tgz", - "integrity": "sha512-zhtMio3Exty18dy8ee8eJ9kjnRyZC1N4C1Nt/VShN1apyXc8rWGtJ9lI7vqiWcyyXS4BVSEn9lxAM2D+07/Tag==", - "dev": true, - "requires": { - "@jest/environment": "^26.6.2", - "@jest/fake-timers": "^26.6.2", - "@jest/types": "^26.6.2", - "@types/node": "*", - "jest-mock": "^26.6.2", - "jest-util": "^26.6.2" - } - }, - "jest-get-type": { - "version": "26.3.0", - "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-26.3.0.tgz", - "integrity": "sha512-TpfaviN1R2pQWkIihlfEanwOXK0zcxrKEE4MlU6Tn7keoXdN6/3gK/xl0yEh8DOunn5pOVGKf8hB4R9gVh04ig==", - "dev": true - }, - "jest-haste-map": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-26.6.2.tgz", - "integrity": "sha512-easWIJXIw71B2RdR8kgqpjQrbMRWQBgiBwXYEhtGUTaX+doCjBheluShdDMeR8IMfJiTqH4+zfhtg29apJf/8w==", - "dev": true, - "requires": { - "@jest/types": "^26.6.2", - "@types/graceful-fs": "^4.1.2", - "@types/node": "*", - "anymatch": "^3.0.3", - "fb-watchman": "^2.0.0", - "fsevents": "^2.1.2", - "graceful-fs": "^4.2.4", - "jest-regex-util": "^26.0.0", - "jest-serializer": "^26.6.2", - "jest-util": "^26.6.2", - "jest-worker": "^26.6.2", - "micromatch": "^4.0.2", - "sane": "^4.0.3", - "walker": "^1.0.7" - }, - "dependencies": { - "anymatch": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz", - "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==", - "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.2", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", - "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", - "dev": true, - "requires": { - "braces": "^3.0.1", - "picomatch": "^2.0.5" - } - }, - "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": "26.6.3", - "resolved": "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-26.6.3.tgz", - "integrity": "sha512-kPKUrQtc8aYwBV7CqBg5pu+tmYXlvFlSFYn18ev4gPFtrRzB15N2gW/Roew3187q2w2eHuu0MU9TJz6w0/nPEg==", - "dev": true, - "requires": { - "@babel/traverse": "^7.1.0", - "@jest/environment": "^26.6.2", - "@jest/source-map": "^26.6.2", - "@jest/test-result": "^26.6.2", - "@jest/types": "^26.6.2", - "@types/node": "*", - "chalk": "^4.0.0", - "co": "^4.6.0", - "expect": "^26.6.2", - "is-generator-fn": "^2.0.0", - "jest-each": "^26.6.2", - "jest-matcher-utils": "^26.6.2", - "jest-message-util": "^26.6.2", - "jest-runtime": "^26.6.3", - "jest-snapshot": "^26.6.2", - "jest-util": "^26.6.2", - "pretty-format": "^26.6.2", - "throat": "^5.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.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", - "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", - "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": "26.6.2", - "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-26.6.2.tgz", - "integrity": "sha512-i4xlXpsVSMeKvg2cEKdfhh0H39qlJlP5Ex1yQxwF9ubahboQYMgTtz5oML35AVA3B4Eu+YsmwaiKVev9KCvLxg==", - "dev": true, - "requires": { - "jest-get-type": "^26.3.0", - "pretty-format": "^26.6.2" - } - }, - "jest-matcher-utils": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-26.6.2.tgz", - "integrity": "sha512-llnc8vQgYcNqDrqRDXWwMr9i7rS5XFiCwvh6DTP7Jqa2mqpcCBBlpCbn+trkG0KNhPu/h8rzyBkriOtBstvWhw==", - "dev": true, - "requires": { - "chalk": "^4.0.0", - "jest-diff": "^26.6.2", - "jest-get-type": "^26.3.0", - "pretty-format": "^26.6.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.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", - "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", - "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": "26.6.2", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-26.6.2.tgz", - "integrity": "sha512-rGiLePzQ3AzwUshu2+Rn+UMFk0pHN58sOG+IaJbk5Jxuqo3NYO1U2/MIR4S1sKgsoYSXSzdtSa0TgrmtUwEbmA==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.0.0", - "@jest/types": "^26.6.2", - "@types/stack-utils": "^2.0.0", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.4", - "micromatch": "^4.0.2", - "pretty-format": "^26.6.2", - "slash": "^3.0.0", - "stack-utils": "^2.0.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" - } - }, - "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.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", - "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", - "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.2", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", - "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", - "dev": true, - "requires": { - "braces": "^3.0.1", - "picomatch": "^2.0.5" - } - }, - "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": "26.6.2", - "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-26.6.2.tgz", - "integrity": "sha512-YyFjePHHp1LzpzYcmgqkJ0nm0gg/lJx2aZFzFy1S6eUqNjXsOqTK10zNRff2dNfssgokjkG65OlWNcIlgd3zew==", - "dev": true, - "requires": { - "@jest/types": "^26.6.2", - "@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 - }, - "jest-regex-util": { - "version": "26.0.0", - "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-26.0.0.tgz", - "integrity": "sha512-Gv3ZIs/nA48/Zvjrl34bf+oD76JHiGDUxNOVgUjh3j890sblXryjY4rss71fPtD/njchl6PSE2hIhvyWa1eT0A==", - "dev": true - }, - "jest-resolve": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-26.6.2.tgz", - "integrity": "sha512-sOxsZOq25mT1wRsfHcbtkInS+Ek7Q8jCHUB0ZUTP0tc/c41QHriU/NunqMfCUWsL4H3MHpvQD4QR9kSYhS7UvQ==", - "dev": true, - "requires": { - "@jest/types": "^26.6.2", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.4", - "jest-pnp-resolver": "^1.2.2", - "jest-util": "^26.6.2", - "read-pkg-up": "^7.0.1", - "resolve": "^1.18.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.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", - "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", - "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 - }, - "parse-json": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.1.0.tgz", - "integrity": "sha512-+mi/lmVVNKFNVyLXV31ERiy2CY5E1/F6QtJFEzoChPRwwngMNXRDQ9GJ5WdE2Z2P4AujsOi0/+2qHID68KwfIQ==", - "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" - } - }, - "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, - "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": { - "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 - } - } - }, - "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, - "requires": { - "find-up": "^4.1.0", - "read-pkg": "^5.2.0", - "type-fest": "^0.8.1" - } - }, - "resolve": { - "version": "1.19.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.19.0.tgz", - "integrity": "sha512-rArEXAgsBG4UgRGcynxWIWKFvh/XZCcS8UJdHhwy91zwAvCZIbcs+vAbflgBnNjYMs/i/i+/Ux6IZhML1yPvxg==", - "dev": true, - "requires": { - "is-core-module": "^2.1.0", - "path-parse": "^1.0.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" - } - } - } - }, - "jest-resolve-dependencies": { - "version": "26.6.3", - "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-26.6.3.tgz", - "integrity": "sha512-pVwUjJkxbhe4RY8QEWzN3vns2kqyuldKpxlxJlzEYfKSvY6/bMvxoFrYYzUO1Gx28yKWN37qyV7rIoIp2h8fTg==", - "dev": true, - "requires": { - "@jest/types": "^26.6.2", - "jest-regex-util": "^26.0.0", - "jest-snapshot": "^26.6.2" - } - }, - "jest-runner": { - "version": "26.6.3", - "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-26.6.3.tgz", - "integrity": "sha512-atgKpRHnaA2OvByG/HpGA4g6CSPS/1LK0jK3gATJAoptC1ojltpmVlYC3TYgdmGp+GLuhzpH30Gvs36szSL2JQ==", - "dev": true, - "requires": { - "@jest/console": "^26.6.2", - "@jest/environment": "^26.6.2", - "@jest/test-result": "^26.6.2", - "@jest/types": "^26.6.2", - "@types/node": "*", - "chalk": "^4.0.0", - "emittery": "^0.7.1", - "exit": "^0.1.2", - "graceful-fs": "^4.2.4", - "jest-config": "^26.6.3", - "jest-docblock": "^26.0.0", - "jest-haste-map": "^26.6.2", - "jest-leak-detector": "^26.6.2", - "jest-message-util": "^26.6.2", - "jest-resolve": "^26.6.2", - "jest-runtime": "^26.6.3", - "jest-util": "^26.6.2", - "jest-worker": "^26.6.2", - "source-map-support": "^0.5.6", - "throat": "^5.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.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", - "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", - "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": "26.6.3", - "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-26.6.3.tgz", - "integrity": "sha512-lrzyR3N8sacTAMeonbqpnSka1dHNux2uk0qqDXVkMv2c/A3wYnvQ4EXuI013Y6+gSKSCxdaczvf4HF0mVXHRdw==", - "dev": true, - "requires": { - "@jest/console": "^26.6.2", - "@jest/environment": "^26.6.2", - "@jest/fake-timers": "^26.6.2", - "@jest/globals": "^26.6.2", - "@jest/source-map": "^26.6.2", - "@jest/test-result": "^26.6.2", - "@jest/transform": "^26.6.2", - "@jest/types": "^26.6.2", - "@types/yargs": "^15.0.0", - "chalk": "^4.0.0", - "cjs-module-lexer": "^0.6.0", - "collect-v8-coverage": "^1.0.0", - "exit": "^0.1.2", - "glob": "^7.1.3", - "graceful-fs": "^4.2.4", - "jest-config": "^26.6.3", - "jest-haste-map": "^26.6.2", - "jest-message-util": "^26.6.2", - "jest-mock": "^26.6.2", - "jest-regex-util": "^26.0.0", - "jest-resolve": "^26.6.2", - "jest-snapshot": "^26.6.2", - "jest-util": "^26.6.2", - "jest-validate": "^26.6.2", - "slash": "^3.0.0", - "strip-bom": "^4.0.0", - "yargs": "^15.4.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.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", - "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", - "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 - }, - "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 - }, - "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": "26.6.2", - "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-26.6.2.tgz", - "integrity": "sha512-S5wqyz0DXnNJPd/xfIzZ5Xnp1HrJWBczg8mMfMpN78OJ5eDxXyf+Ygld9wX1DnUWbIbhM1YDY95NjR4CBXkb2g==", - "dev": true, - "requires": { - "@types/node": "*", - "graceful-fs": "^4.2.4" - } - }, - "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": "26.6.2", - "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-26.6.2.tgz", - "integrity": "sha512-OLhxz05EzUtsAmOMzuupt1lHYXCNib0ECyuZ/PZOx9TrZcC8vL0x+DUG3TL+GLX3yHG45e6YGjIm0XwDc3q3og==", - "dev": true, - "requires": { - "@babel/types": "^7.0.0", - "@jest/types": "^26.6.2", - "@types/babel__traverse": "^7.0.4", - "@types/prettier": "^2.0.0", - "chalk": "^4.0.0", - "expect": "^26.6.2", - "graceful-fs": "^4.2.4", - "jest-diff": "^26.6.2", - "jest-get-type": "^26.3.0", - "jest-haste-map": "^26.6.2", - "jest-matcher-utils": "^26.6.2", - "jest-message-util": "^26.6.2", - "jest-resolve": "^26.6.2", - "natural-compare": "^1.4.0", - "pretty-format": "^26.6.2", - "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.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", - "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", - "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-util": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-26.6.2.tgz", - "integrity": "sha512-MDW0fKfsn0OI7MS7Euz6h8HNDXVQ0gaM9uW6RjfDmd1DAFcaxX9OqIakHIqhbnmF08Cf2DLDG+ulq8YQQ0Lp0Q==", - "dev": true, - "requires": { - "@jest/types": "^26.6.2", - "@types/node": "*", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.4", - "is-ci": "^2.0.0", - "micromatch": "^4.0.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" - } - }, - "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.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", - "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", - "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.2", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", - "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", - "dev": true, - "requires": { - "braces": "^3.0.1", - "picomatch": "^2.0.5" - } - }, - "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-validate": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-26.6.2.tgz", - "integrity": "sha512-NEYZ9Aeyj0i5rQqbq+tpIOom0YS1u2MVu6+euBsvpgIme+FOfRmoC4R5p0JiAUpaFvFy24xgrpMknarR/93XjQ==", - "dev": true, - "requires": { - "@jest/types": "^26.6.2", - "camelcase": "^6.0.0", - "chalk": "^4.0.0", - "jest-get-type": "^26.3.0", - "leven": "^3.1.0", - "pretty-format": "^26.6.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" - } - }, - "camelcase": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.2.0.tgz", - "integrity": "sha512-c7wVvbw3f37nuobQNtgsgG9POC9qMbNuMQmTCqZv23b6MIz0fcYpBiOlv9gEN/hdLdnZTDQhg6e9Dq5M1vKvfg==", - "dev": true - }, - "chalk": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", - "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", - "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": "26.6.2", - "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-26.6.2.tgz", - "integrity": "sha512-WKJob0P/Em2csiVthsI68p6aGKTIcsfjH9Gsx1f0A3Italz43e3ho0geSAVsmj09RWOELP1AZ/DXyJgOgDKxXQ==", - "dev": true, - "requires": { - "@jest/test-result": "^26.6.2", - "@jest/types": "^26.6.2", - "@types/node": "*", - "ansi-escapes": "^4.2.1", - "chalk": "^4.0.0", - "jest-util": "^26.6.2", - "string-length": "^4.0.1" - }, - "dependencies": { - "ansi-escapes": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.1.tgz", - "integrity": "sha512-JWF7ocqNrp8u9oqpgV+wH5ftbt+cfvv+PTjOvKLT3AdYly/LmORARfEVT1iyjwN+4MqE5UmVKoAdIBqeoCHgLA==", - "dev": true, - "requires": { - "type-fest": "^0.11.0" - } - }, - "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.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", - "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", - "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" - } - }, - "type-fest": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.11.0.tgz", - "integrity": "sha512-OdjXJxnCN1AvyLSzeKIgXTXxV+99ZuXl3Hpo9XpJAv9MBcHrrJOQ5kV7ypXOuQie+AmWG25hLbiKdwYTifzcfQ==", - "dev": true - } - } - }, - "jest-worker": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-26.6.2.tgz", - "integrity": "sha512-KWYVV1c4i+jbMpaBC+U++4Va0cp8OisU185o73T1vo99hqi7w8tSJfUXYswwqqrjzwxa6KpRK54WhPvwf5w6PQ==", - "dev": true, - "requires": { - "@types/node": "*", - "merge-stream": "^2.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" - } - } - } - }, - "js-base64": { - "version": "2.6.4", - "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-2.6.4.tgz", - "integrity": "sha512-pZe//GGmwJndub7ZghVHz7vjb2LgC1m8B07Au3eYqeqv9emhESByMXxaEgkUkEqJe87oBbSniGYoQNIBklc7IQ==", - "dev": true - }, - "js-beautify": { - "version": "1.13.0", - "resolved": "https://registry.npmjs.org/js-beautify/-/js-beautify-1.13.0.tgz", - "integrity": "sha512-/Tbp1OVzZjbwzwJQFIlYLm9eWQ+3aYbBXLSaqb1mEJzhcQAfrqMMQYtjb6io+U6KpD0ID4F+Id3/xcjH3l/sqA==", - "dev": true, - "requires": { - "config-chain": "^1.1.12", - "editorconfig": "^0.15.3", - "glob": "^7.1.3", - "mkdirp": "^1.0.4", - "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.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.0.tgz", - "integrity": "sha512-/4IbIeHcD9VMHFqDR/gQ7EdZdLimOvW2DdcxFjdyyZ9NsbS+ccrXqVWDtab/lRl5AlUqmpBx8EhPaWR+OtY17A==", - "dev": true, - "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - } - }, - "jsbn": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", - "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", - "dev": true - }, - "jsdom": { - "version": "16.4.0", - "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-16.4.0.tgz", - "integrity": "sha512-lYMm3wYdgPhrl7pDcRmvzPhhrGVBeVhPIqeHjzeiHN3DFmD1RBpbExbi8vU7BJdH8VAZYovR8DMt0PNNDM7k8w==", - "dev": true, - "requires": { - "abab": "^2.0.3", - "acorn": "^7.1.1", - "acorn-globals": "^6.0.0", - "cssom": "^0.4.4", - "cssstyle": "^2.2.0", - "data-urls": "^2.0.0", - "decimal.js": "^10.2.0", - "domexception": "^2.0.1", - "escodegen": "^1.14.1", - "html-encoding-sniffer": "^2.0.1", - "is-potential-custom-element-name": "^1.0.0", - "nwsapi": "^2.2.0", - "parse5": "5.1.1", - "request": "^2.88.2", - "request-promise-native": "^1.0.8", - "saxes": "^5.0.0", - "symbol-tree": "^3.2.4", - "tough-cookie": "^3.0.1", - "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.0.0", - "ws": "^7.2.3", - "xml-name-validator": "^3.0.0" - }, - "dependencies": { - "acorn": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", - "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", - "dev": true - } - } - }, - "jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==" - }, - "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==", - "dev": 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": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", - "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=", - "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==", - "dev": true - }, - "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 - }, - "json-stringify-safe": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", - "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=", - "dev": true - }, - "json5": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.1.3.tgz", - "integrity": "sha512-KXPvOm8K9IJKFM0bmdn8QXh7udDh1g/giieX0NLCaMnb4hEiVFqnop2ImTXCc5e0/oHz3LTqmHGtExn5hfMkOA==", - "requires": { - "minimist": "^1.2.5" - } - }, - "jsonfile": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", - "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.6" - } - }, - "jsprim": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", - "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", - "dev": true, - "requires": { - "assert-plus": "1.0.0", - "extsprintf": "1.3.0", - "json-schema": "0.2.3", - "verror": "1.10.0" - } - }, - "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": "6.0.3", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", - "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==" - }, - "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.4", - "resolved": "https://registry.npmjs.org/klona/-/klona-2.0.4.tgz", - "integrity": "sha512-ZRbnvdg/NxqzC7L9Uyqzf4psi1OM4Cuc+sJAkQPjO6XkQIJTNbfK2Rsmbw8fx1p2mkZdp2FZYo2+LwXYY/uwIA==", - "dev": true - }, - "known-css-properties": { - "version": "0.21.0", - "resolved": "https://registry.npmjs.org/known-css-properties/-/known-css-properties-0.21.0.tgz", - "integrity": "sha512-sZLUnTqimCkvkgRS+kbPlYW5o8q5w1cu+uIisKpEWkj31I8mx8kNG162DwRav8Zirkva6N5uoFsm9kzK4mUXjw==", - "dev": 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.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" - } - }, - "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 - }, - "linkifyjs": { - "version": "2.1.9", - "resolved": "https://registry.npmjs.org/linkifyjs/-/linkifyjs-2.1.9.tgz", - "integrity": "sha512-74ivurkK6WHvHFozVaGtQWV38FzBwSTGNmJolEgFp7QgR2bl6ArUWlvT4GcHKbPe1z3nWYi+VUdDZk16zDOVug==" - }, - "load-json-file": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz", - "integrity": "sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "parse-json": "^2.2.0", - "pify": "^2.0.0", - "strip-bom": "^3.0.0" - }, - "dependencies": { - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", - "dev": true - } - } - }, - "loader-fs-cache": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/loader-fs-cache/-/loader-fs-cache-1.0.3.tgz", - "integrity": "sha512-ldcgZpjNJj71n+2Mf6yetz+c9bM4xpKtNds4LbqXzU/PTdeAX0g3ytnU1AJMEcTk2Lex4Smpe3Q/eCTsvUBxbA==", - "dev": true, - "requires": { - "find-cache-dir": "^0.1.1", - "mkdirp": "^0.5.1" - }, - "dependencies": { - "find-cache-dir": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-0.1.1.tgz", - "integrity": "sha1-yN765XyKUqinhPnjHFfHQumToLk=", - "dev": true, - "requires": { - "commondir": "^1.0.1", - "mkdirp": "^0.5.1", - "pkg-dir": "^1.0.0" - } - }, - "find-up": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", - "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", - "dev": true, - "requires": { - "path-exists": "^2.0.0", - "pinkie-promise": "^2.0.0" - } - }, - "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" - } - }, - "path-exists": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", - "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", - "dev": true, - "requires": { - "pinkie-promise": "^2.0.0" - } - }, - "pkg-dir": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-1.0.0.tgz", - "integrity": "sha1-ektQio1bstYp1EcFb/TpyTFM89Q=", - "dev": true, - "requires": { - "find-up": "^1.0.0" - } - } - } - }, - "loader-runner": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-2.4.0.tgz", - "integrity": "sha512-Jsmr89RcXGIwivFY21FcRrisYZfvLMTWx5kOLc+JTxtpBOG6xML0vzbc6SEQG2FO9/4Fc3wW4LVcB5DmGflaRw==", - "dev": 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, - "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, - "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.20", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.20.tgz", - "integrity": "sha512-PlhdFcillOINfeV7Ni6oF1TAEayyZBoZ8bcshTHqOYJYlrqzRK5hagpagky5o4HfCzzd1TRkXPMFq6cKk9rGmA==" - }, - "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==" - }, - "lodash.pick": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/lodash.pick/-/lodash.pick-4.4.0.tgz", - "integrity": "sha1-UvBWEP/53tQiYRRB7R/BI6AwAbM=" - }, - "lodash.sortby": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/lodash.sortby/-/lodash.sortby-4.7.0.tgz", - "integrity": "sha1-7dFMgk4sycHgsKG0K7UhBRakJDg=" - }, - "lodash.throttle": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/lodash.throttle/-/lodash.throttle-4.1.1.tgz", - "integrity": "sha1-wj6RtxAkKscMN/HhzaknTMOb8vQ=" - }, - "lodash.uniqby": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/lodash.uniqby/-/lodash.uniqby-4.7.0.tgz", - "integrity": "sha1-2ZwHpmnp5tJOE2Lf4mbGdhavEwI=" - }, - "log-symbols": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.0.0.tgz", - "integrity": "sha512-FN8JBzLx6CzeMrB0tg6pqlGU1wCrXW+ZXGH481kfsBqer0hToTIiHdjH4Mq8xJUbvATujKCvaREGWpGUionraA==", - "dev": true, - "requires": { - "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.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", - "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", - "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" - } - } - } - }, - "loglevel": { - "version": "1.7.1", - "resolved": "https://registry.npmjs.org/loglevel/-/loglevel-1.7.1.tgz", - "integrity": "sha512-Hesni4s5UkWkwCGJMQGAh71PaLUmKFM60dHvq0zi/vDhhrzuk+4GgNbTXJ12YYQJn6ZKBDNIjYcuQGKudvqrIw==", - "dev": true - }, - "loglevel-colored-level-prefix": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/loglevel-colored-level-prefix/-/loglevel-colored-level-prefix-1.0.0.tgz", - "integrity": "sha1-akAhj9x64V/HbD0PPmdsRlOIYD4=", - "dev": true, - "requires": { - "chalk": "^1.1.3", - "loglevel": "^1.4.1" - }, - "dependencies": { - "ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", - "dev": true - }, - "chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", - "dev": true, - "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" - } - }, - "supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", - "dev": true - } - } - }, - "longest-streak": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/longest-streak/-/longest-streak-2.0.4.tgz", - "integrity": "sha512-vM6rUVCVUJJt33bnmHiZEvr7wPT78ztX7rojL+LW51bHtLh6HTjx84LA5W4+oa6aKEJA7jJu5LR6vQRBpA5DVg==", - "dev": 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" - } - }, - "loud-rejection": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz", - "integrity": "sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=", - "dev": true, - "requires": { - "currently-unhandled": "^0.4.1", - "signal-exit": "^3.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" - } - }, - "make-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", - "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", - "requires": { - "pify": "^4.0.1", - "semver": "^5.6.0" - }, - "dependencies": { - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" - } - } - }, - "makeerror": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.11.tgz", - "integrity": "sha1-4BpckQnyr3lmDk6LlYd5AYT1qWw=", - "dev": true, - "requires": { - "tmpl": "1.0.x" - } - }, - "map-cache": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", - "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=" - }, - "map-obj": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", - "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=", - "dev": true - }, - "map-visit": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", - "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", - "requires": { - "object-visit": "^1.0.0" - } - }, - "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 - }, - "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, - "requires": { - "hash-base": "^3.0.0", - "inherits": "^2.0.1", - "safe-buffer": "^5.1.2" - } - }, - "mdast-util-from-markdown": { - "version": "0.8.5", - "resolved": "https://registry.npmjs.org/mdast-util-from-markdown/-/mdast-util-from-markdown-0.8.5.tgz", - "integrity": "sha512-2hkTXtYYnr+NubD/g6KGBS/0mFmBcifAsI0yIWRiRo0PjVs6SSOSOdtzbp6kSGnShDN6G5aWZpKQ2lWRy27mWQ==", - "dev": true, - "requires": { - "@types/mdast": "^3.0.0", - "mdast-util-to-string": "^2.0.0", - "micromark": "~2.11.0", - "parse-entities": "^2.0.0", - "unist-util-stringify-position": "^2.0.0" - } - }, - "mdast-util-to-markdown": { - "version": "0.6.5", - "resolved": "https://registry.npmjs.org/mdast-util-to-markdown/-/mdast-util-to-markdown-0.6.5.tgz", - "integrity": "sha512-XeV9sDE7ZlOQvs45C9UKMtfTcctcaj/pGwH8YLbMHoMOXNNCn2LsqVQOqrF1+/NU8lKDAqozme9SCXWyo9oAcQ==", - "dev": true, - "requires": { - "@types/unist": "^2.0.0", - "longest-streak": "^2.0.0", - "mdast-util-to-string": "^2.0.0", - "parse-entities": "^2.0.0", - "repeat-string": "^1.0.0", - "zwitch": "^1.0.0" - } - }, - "mdast-util-to-string": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-2.0.0.tgz", - "integrity": "sha512-AW4DRS3QbBayY/jJmD8437V1Gombjf8RSOUCMFBuo5iHi58AGEgVCKQ+ezHkZZDpAQS75hcBMpLqjpJTjtUL7w==", - "dev": true - }, - "memory-fs": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.4.1.tgz", - "integrity": "sha1-OpoguEYlI+RHz7x+i7gO1me/xVI=", - "dev": true, - "requires": { - "errno": "^0.1.3", - "readable-stream": "^2.0.1" - } - }, - "meow": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz", - "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=", - "dev": true, - "requires": { - "camelcase-keys": "^2.0.0", - "decamelize": "^1.1.2", - "loud-rejection": "^1.0.0", - "map-obj": "^1.0.1", - "minimist": "^1.1.3", - "normalize-package-data": "^2.3.4", - "object-assign": "^4.0.1", - "read-pkg-up": "^1.0.1", - "redent": "^1.0.0", - "trim-newlines": "^1.0.0" - }, - "dependencies": { - "find-up": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", - "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", - "dev": true, - "requires": { - "path-exists": "^2.0.0", - "pinkie-promise": "^2.0.0" - } - }, - "load-json-file": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", - "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "parse-json": "^2.2.0", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0", - "strip-bom": "^2.0.0" - } - }, - "path-exists": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", - "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", - "dev": true, - "requires": { - "pinkie-promise": "^2.0.0" - } - }, - "path-type": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", - "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0" - } - }, - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", - "dev": true - }, - "read-pkg": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", - "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", - "dev": true, - "requires": { - "load-json-file": "^1.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^1.0.0" - } - }, - "read-pkg-up": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz", - "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=", - "dev": true, - "requires": { - "find-up": "^1.0.0", - "read-pkg": "^1.0.0" - } - }, - "strip-bom": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", - "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", - "dev": true, - "requires": { - "is-utf8": "^0.2.0" - } - } - } - }, - "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, - "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 - } - } - }, - "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==", - "dev": true - }, - "merge2": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", - "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", - "dev": true - }, - "microbuffer": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/microbuffer/-/microbuffer-1.0.0.tgz", - "integrity": "sha1-izgy7UDIfVH0e7I0kTppinVtGdI=", - "dev": true - }, - "micromark": { - "version": "2.11.4", - "resolved": "https://registry.npmjs.org/micromark/-/micromark-2.11.4.tgz", - "integrity": "sha512-+WoovN/ppKolQOFIAajxi7Lu9kInbPxFuTBVEavFcL8eAfVstoc5MocPmqBeAdBOJV00uaVjegzH4+MA0DN/uA==", - "dev": true, - "requires": { - "debug": "^4.0.0", - "parse-entities": "^2.0.0" - }, - "dependencies": { - "debug": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", - "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", - "dev": true, - "requires": { - "ms": "2.1.2" - } - }, - "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 - } - } - }, - "micromatch": { - "version": "3.1.10", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", - "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", - "requires": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "braces": "^2.3.1", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "extglob": "^2.0.4", - "fragment-cache": "^0.2.1", - "kind-of": "^6.0.2", - "nanomatch": "^1.2.9", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.2" - } - }, - "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, - "requires": { - "bn.js": "^4.0.0", - "brorand": "^1.0.1" - }, - "dependencies": { - "bn.js": { - "version": "4.11.9", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", - "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", - "dev": true - } - } - }, - "mime-db": { - "version": "1.44.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.44.0.tgz", - "integrity": "sha512-/NOTfLrsPBVeH7YtFPgsVWveuL+4SjjYxaQ1xtM1KMFj7HdxlBlxeyNLzhyJVx7r4rZGJAZ/6lkKCitSc/Nmpg==", - "dev": true - }, - "mime-types": { - "version": "2.1.27", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.27.tgz", - "integrity": "sha512-JIhqnCasI9yD+SsmkquHBxTSEuZdQX5BuQnS2Vc7puQQQ+8yiP5AY5uWhpdv4YL4VM5c6iliiYWPgJ/nJQLp7w==", - "dev": true, - "requires": { - "mime-db": "1.44.0" - } - }, - "mimic-fn": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz", - "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==", - "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 - }, - "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 - }, - "minimalistic-crypto-utils": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", - "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=", - "dev": true - }, - "minimatch": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", - "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", - "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==" - }, - "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, - "requires": { - "arrify": "^1.0.1", - "is-plain-obj": "^1.1.0", - "kind-of": "^6.0.3" - }, - "dependencies": { - "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 - } - } - }, - "minipass": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.1.3.tgz", - "integrity": "sha512-Mgd2GdMVzY+x3IJ+oHnVM+KG3lA5c8tnabyJKmHSaG2kAGpudxuOf8ToDkhumF7UzME7DecbQE9uOZhNm7PuJg==", - "dev": true, - "requires": { - "yallist": "^4.0.0" - }, - "dependencies": { - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - } - } - }, - "minipass-collect": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-1.0.2.tgz", - "integrity": "sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==", - "dev": true, - "requires": { - "minipass": "^3.0.0" - } - }, - "minipass-flush": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz", - "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==", - "dev": true, - "requires": { - "minipass": "^3.0.0" - } - }, - "minipass-pipeline": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz", - "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==", - "dev": true, - "requires": { - "minipass": "^3.0.0" - } - }, - "minizlib": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", - "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", - "dev": true, - "requires": { - "minipass": "^3.0.0", - "yallist": "^4.0.0" - }, - "dependencies": { - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - } - } - }, - "mississippi": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/mississippi/-/mississippi-3.0.0.tgz", - "integrity": "sha512-x471SsVjUtBRtcvd4BzKE9kFC+/2TeWgKCgw0bZcw1b9l2X3QX5vCWgF+KaZaYm87Ss//rHnWryupDrgLvmSkA==", - "dev": true, - "requires": { - "concat-stream": "^1.5.0", - "duplexify": "^3.4.2", - "end-of-stream": "^1.1.0", - "flush-write-stream": "^1.0.0", - "from2": "^2.1.0", - "parallel-transform": "^1.1.0", - "pump": "^3.0.0", - "pumpify": "^1.3.3", - "stream-each": "^1.1.0", - "through2": "^2.0.0" - } - }, - "mixin-deep": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz", - "integrity": "sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==", - "requires": { - "for-in": "^1.0.2", - "is-extendable": "^1.0.1" - }, - "dependencies": { - "is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "requires": { - "is-plain-object": "^2.0.4" - } - } - } - }, - "mkdirp": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", - "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", - "dev": true - }, - "module-available": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/module-available/-/module-available-1.0.6.tgz", - "integrity": "sha1-3XJl7uwRWHkepTBaFsGsZzGYD0Q=", - "dev": true - }, - "moment": { - "version": "2.24.0", - "resolved": "https://registry.npmjs.org/moment/-/moment-2.24.0.tgz", - "integrity": "sha512-bV7f+6l2QigeBBZSM/6yTNq4P2fNpSWj/0e7jQcy87A8e7o2nAfP/34/2ky5Vw4B9S446EtIhodAzkFCcR4dQg==" - }, - "move-concurrently": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/move-concurrently/-/move-concurrently-1.0.1.tgz", - "integrity": "sha1-viwAX9oy4LKa8fBdfEszIUxwH5I=", - "dev": true, - "requires": { - "aproba": "^1.1.1", - "copy-concurrently": "^1.0.0", - "fs-write-stream-atomic": "^1.0.8", - "mkdirp": "^0.5.1", - "rimraf": "^2.5.4", - "run-queue": "^1.0.3" - }, - "dependencies": { - "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" - } - } - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" - }, - "mute-stream": { - "version": "0.0.7", - "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz", - "integrity": "sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=", - "dev": true - }, - "nan": { - "version": "2.14.1", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.14.1.tgz", - "integrity": "sha512-isWHgVjnFjh2x2yuJ/tj3JbwoHu3UC2dX5G/88Cm24yB6YopVgxvBObDY7n5xW6ExmFhJpSEQqFPvq9zaXc8Jw==", - "dev": true - }, - "nanomatch": { - "version": "1.2.13", - "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz", - "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==", - "requires": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "fragment-cache": "^0.2.1", - "is-windows": "^1.0.2", - "kind-of": "^6.0.2", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - } - }, - "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" - } - }, - "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==", - "dev": true - }, - "next-tick": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.0.0.tgz", - "integrity": "sha1-yobR/ogoFpsBICCOPchCS524NCw=", - "dev": true - }, - "nice-try": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", - "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==", - "dev": 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-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-gyp": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-7.1.2.tgz", - "integrity": "sha512-CbpcIo7C3eMu3dL1c3d0xw449fHIGALIJsRP4DDPHpyiW8vcriNY7ubh9TE4zEKfSxscY7PjeFnshE7h75ynjQ==", - "dev": true, - "requires": { - "env-paths": "^2.2.0", - "glob": "^7.1.4", - "graceful-fs": "^4.2.3", - "nopt": "^5.0.0", - "npmlog": "^4.1.2", - "request": "^2.88.2", - "rimraf": "^3.0.2", - "semver": "^7.3.2", - "tar": "^6.0.2", - "which": "^2.0.2" - }, - "dependencies": { - "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" - } - }, - "which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - } - } - }, - "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-libs-browser": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-2.2.1.tgz", - "integrity": "sha512-h/zcD8H9kaDZ9ALUWwlBUDo6TKF8a7qBSCSEGfjTVIYeqsioSKaAX+BN7NgiMGp6iSIXZ3PxgCu8KS3b71YK5Q==", - "dev": true, - "requires": { - "assert": "^1.1.1", - "browserify-zlib": "^0.2.0", - "buffer": "^4.3.0", - "console-browserify": "^1.1.0", - "constants-browserify": "^1.0.0", - "crypto-browserify": "^3.11.0", - "domain-browser": "^1.1.1", - "events": "^3.0.0", - "https-browserify": "^1.0.0", - "os-browserify": "^0.3.0", - "path-browserify": "0.0.1", - "process": "^0.11.10", - "punycode": "^1.2.4", - "querystring-es3": "^0.2.0", - "readable-stream": "^2.3.3", - "stream-browserify": "^2.0.1", - "stream-http": "^2.7.2", - "string_decoder": "^1.0.0", - "timers-browserify": "^2.0.4", - "tty-browserify": "0.0.0", - "url": "^0.11.0", - "util": "^0.11.0", - "vm-browserify": "^1.0.1" - }, - "dependencies": { - "punycode": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", - "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", - "dev": true - } - } - }, - "node-modules-regexp": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz", - "integrity": "sha1-jZ2+KJZKSsVxLpExZCEHxx6Q7EA=", - "dev": true - }, - "node-notifier": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/node-notifier/-/node-notifier-8.0.1.tgz", - "integrity": "sha512-BvEXF+UmsnAfYfoapKM9nGxnP+Wn7P91YfXmrKnfcYCx6VBeoN5Ez5Ogck6I8Bi5k4RlpqRYaw75pAwzX9OphA==", - "dev": true, - "optional": true, - "requires": { - "growly": "^1.3.0", - "is-wsl": "^2.2.0", - "semver": "^7.3.2", - "shellwords": "^0.1.1", - "uuid": "^8.3.0", - "which": "^2.0.2" - }, - "dependencies": { - "which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "optional": true, - "requires": { - "isexe": "^2.0.0" - } - } - } - }, - "node-releases": { - "version": "1.1.70", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.70.tgz", - "integrity": "sha512-Slf2s69+2/uAD79pVVQo8uSiC34+g8GWY8UH2Qtqv34ZfhYrxpYpfzs9Js9d6O0mbDmALuxaTlplnBTnSELcrw==" - }, - "node-sass": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/node-sass/-/node-sass-5.0.0.tgz", - "integrity": "sha512-opNgmlu83ZCF792U281Ry7tak9IbVC+AKnXGovcQ8LG8wFaJv6cLnRlc6DIHlmNxWEexB5bZxi9SZ9JyUuOYjw==", - "dev": true, - "requires": { - "async-foreach": "^0.1.3", - "chalk": "^1.1.1", - "cross-spawn": "^7.0.3", - "gaze": "^1.0.0", - "get-stdin": "^4.0.1", - "glob": "^7.0.3", - "lodash": "^4.17.15", - "meow": "^3.7.0", - "mkdirp": "^0.5.1", - "nan": "^2.13.2", - "node-gyp": "^7.1.0", - "npmlog": "^4.0.0", - "request": "^2.88.0", - "sass-graph": "2.2.5", - "stdout-stream": "^1.4.0", - "true-case-path": "^1.0.2" - }, - "dependencies": { - "ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", - "dev": true - }, - "chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", - "dev": true, - "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" - } - }, - "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" - } - }, - "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" - } - }, - "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 - }, - "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 - }, - "supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", - "dev": true - }, - "which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - } - } - }, - "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-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, - "requires": { - "hosted-git-info": "^2.1.4", - "resolve": "^1.10.0", - "semver": "2 || 3 || 4 || 5", - "validate-npm-package-license": "^3.0.1" - }, - "dependencies": { - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - } - } - }, - "normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==" - }, - "normalize-range": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", - "integrity": "sha1-LRDAa9/TEuqXd2laTShDlFa3WUI=", - "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 - }, - "npm-run-path": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", - "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", - "dev": true, - "requires": { - "path-key": "^2.0.0" - } - }, - "npmlog": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", - "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", - "dev": true, - "requires": { - "are-we-there-yet": "~1.1.2", - "console-control-strings": "~1.1.0", - "gauge": "~2.7.3", - "set-blocking": "~2.0.0" - } - }, - "num2fraction": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/num2fraction/-/num2fraction-1.2.2.tgz", - "integrity": "sha1-b2gragJ6Tp3fpFZM0lidHU5mnt4=", - "dev": true - }, - "number-is-nan": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", - "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", - "dev": true - }, - "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 - }, - "oauth-sign": { - "version": "0.9.0", - "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", - "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", - "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=", - "dev": true - }, - "object-copy": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", - "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", - "requires": { - "copy-descriptor": "^0.1.0", - "define-property": "^0.2.5", - "kind-of": "^3.0.3" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "object-hash": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-2.0.3.tgz", - "integrity": "sha512-JPKn0GMu+Fa3zt3Bmr66JhokJU5BaNBIh4ZeTlaCBzrBsOeXzwcKKAK1tbLiPKgvwmPXsDvvLHoWh5Bm7ofIYg==", - "dev": true - }, - "object-inspect": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.8.0.tgz", - "integrity": "sha512-jLdtEOB112fORuypAyl/50VRVIBIdVQOSUUGQHzJ4xBSbit81zRarz7GThkEFZy1RceYrWYcPcBFPQwHyAc1gA==" - }, - "object-keys": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==" - }, - "object-visit": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", - "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", - "requires": { - "isobject": "^3.0.0" - } - }, - "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==", - "requires": { - "call-bind": "^1.0.0", - "define-properties": "^1.1.3", - "has-symbols": "^1.0.1", - "object-keys": "^1.1.1" - } - }, - "object.pick": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", - "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", - "requires": { - "isobject": "^3.0.1" - } - }, - "object.values": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.1.tgz", - "integrity": "sha512-WTa54g2K8iu0kmS/us18jEmdv1a4Wi//BZ/DTVYEcH0XhLM5NYdpDHja3gt57VrZLcNAO2WGA+KpWsDBaHt6eA==", - "dev": true, - "requires": { - "define-properties": "^1.1.3", - "es-abstract": "^1.17.0-next.1", - "function-bind": "^1.1.1", - "has": "^1.0.3" - } - }, - "once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "requires": { - "wrappy": "1" - } - }, - "onetime": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz", - "integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=", - "dev": true, - "requires": { - "mimic-fn": "^1.0.0" - } - }, - "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" - } - }, - "os-browserify": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz", - "integrity": "sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc=", - "dev": true - }, - "os-tmpdir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", - "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", - "dev": true - }, - "p-each-series": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-each-series/-/p-each-series-2.2.0.tgz", - "integrity": "sha512-ycIL2+1V32th+8scbpTvyHNaHe02z0sjgh91XXjAk+ZeXoPN4Z46DVUnzdso0aX4KckKw0FNNFHdjZ2UsZvxiA==", - "dev": true - }, - "p-finally": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", - "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", - "dev": true - }, - "p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", - "requires": { - "yocto-queue": "^0.1.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-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, - "requires": { - "aggregate-error": "^3.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 - }, - "pako": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", - "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==", - "dev": true - }, - "parallel-transform": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/parallel-transform/-/parallel-transform-1.2.0.tgz", - "integrity": "sha512-P2vSmIu38uIlvdcU7fDkyrxj33gTUy/ABO5ZUbGowxNCopBq/OoD42bP4UmMrJoPyk4Uqf0mu3mtWBhHCZD8yg==", - "dev": true, - "requires": { - "cyclist": "^1.0.1", - "inherits": "^2.0.3", - "readable-stream": "^2.1.5" - } - }, - "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, - "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, - "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" - } - }, - "parse-entities": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/parse-entities/-/parse-entities-2.0.0.tgz", - "integrity": "sha512-kkywGpCcRYhqQIchaWqZ875wzpS/bMKhz5HnN3p7wveJTkTtyAB/AlnS0f8DFSqYW1T82t6yEAkEcB+A1I3MbQ==", - "dev": true, - "requires": { - "character-entities": "^1.0.0", - "character-entities-legacy": "^1.0.0", - "character-reference-invalid": "^1.0.0", - "is-alphanumerical": "^1.0.0", - "is-decimal": "^1.0.0", - "is-hexadecimal": "^1.0.0" - } - }, - "parse-json": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", - "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", - "dev": true, - "requires": { - "error-ex": "^1.2.0" - } - }, - "parse5": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-5.1.1.tgz", - "integrity": "sha512-ugq4DFI0Ptb+WWjAdOK16+u/nHfiIrcE+sh8kZMaM0WllQKLI9rOUq6c2b7cwPkXdzfQESqvoqK6ug7U/Yyzug==", - "dev": true - }, - "pascalcase": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", - "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=" - }, - "path-browserify": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.1.tgz", - "integrity": "sha512-BapA40NHICOS+USX9SN4tyhq+A2RrN/Ws5F0Z5aMHDp98Fl86lX8Oti8B7uN93L4Ifv4fHOEA+pQw87gmMO/lQ==", - "dev": true - }, - "path-dirname": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz", - "integrity": "sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=", - "optional": 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=" - }, - "path-is-inside": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz", - "integrity": "sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM=", - "dev": true - }, - "path-key": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", - "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", - "dev": true - }, - "path-parse": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", - "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==", - "dev": true - }, - "path-type": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-2.0.0.tgz", - "integrity": "sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM=", - "dev": true, - "requires": { - "pify": "^2.0.0" - }, - "dependencies": { - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", - "dev": true - } - } - }, - "pbkdf2": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.1.tgz", - "integrity": "sha512-4Ejy1OPxi9f2tt1rRV7Go7zmfDQ+ZectEQz3VGUQhgq62HtIRPDyG/JtnwIxs6x3uNMwo2V7q1fMvKjb+Tnpqg==", - "dev": 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" - } - }, - "performance-now": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", - "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=", - "dev": true - }, - "picomatch": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.2.2.tgz", - "integrity": "sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg==" - }, - "pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==" - }, - "pinkie": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", - "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", - "dev": true - }, - "pinkie-promise": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", - "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", - "dev": true, - "requires": { - "pinkie": "^2.0.0" - } - }, - "pirates": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.1.tgz", - "integrity": "sha512-WuNqLTbMI3tmfef2TKxlQmAiLHKtFhlsCZnPIpuv2Ow0RDVO8lfy1Opf4NUzlMXLjPl+Men7AuVdX6TA+s+uGA==", - "dev": true, - "requires": { - "node-modules-regexp": "^1.0.0" - } - }, - "pkg-dir": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", - "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", - "dev": true, - "requires": { - "find-up": "^3.0.0" - }, - "dependencies": { - "find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", - "dev": true, - "requires": { - "locate-path": "^3.0.0" - } - }, - "locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", - "dev": true, - "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - } - }, - "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-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", - "dev": true, - "requires": { - "p-limit": "^2.0.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 - } - } - }, - "popper.js": { - "version": "1.16.1", - "resolved": "https://registry.npmjs.org/popper.js/-/popper.js-1.16.1.tgz", - "integrity": "sha512-Wb4p1J4zyFTbM+u6WuO4XstYx4Ky9Cewe4DWrel7B0w6VVICvPwdOpotjzcf6eD8TsckVnIMNONQyPIUFOUbCQ==" - }, - "posix-character-classes": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", - "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=" - }, - "postcss": { - "version": "7.0.32", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.32.tgz", - "integrity": "sha512-03eXong5NLnNCD05xscnGKGDZ98CyzoqPSMjOe6SuoQY7Z2hIj0Ld1g/O/UQRuOle2aRtiIRDg9tDcTGAkLfKw==", - "dev": 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 - }, - "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, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-html": { - "version": "0.36.0", - "resolved": "https://registry.npmjs.org/postcss-html/-/postcss-html-0.36.0.tgz", - "integrity": "sha512-HeiOxGcuwID0AFsNAL0ox3mW6MHH5cstWN1Z3Y+n6H+g12ih7LHdYxWwEA/QmrebctLjo79xz9ouK3MroHwOJw==", - "dev": true, - "requires": { - "htmlparser2": "^3.10.0" - } - }, - "postcss-less": { - "version": "3.1.4", - "resolved": "https://registry.npmjs.org/postcss-less/-/postcss-less-3.1.4.tgz", - "integrity": "sha512-7TvleQWNM2QLcHqvudt3VYjULVB49uiW6XzEUFmvwHzvsOEF5MwBrIXZDJQvJNFGjJQTzSzZnDoCJ8h/ljyGXA==", - "dev": true, - "requires": { - "postcss": "^7.0.14" - } - }, - "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 - }, - "postcss-modules-extract-imports": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-2.0.0.tgz", - "integrity": "sha512-LaYLDNS4SG8Q5WAWqIJgdHPJrDDr/Lv775rMBFUbgjTz6j34lUznACHcdRWroPvXANP2Vj7yNK57vp9eFqzLWQ==", - "dev": true, - "requires": { - "postcss": "^7.0.5" - } - }, - "postcss-modules-local-by-default": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-3.0.3.tgz", - "integrity": "sha512-e3xDq+LotiGesympRlKNgaJ0PCzoUIdpH0dj47iWAui/kyTgh3CiAr1qP54uodmJhl6p9rN6BoNcdEDVJx9RDw==", - "dev": true, - "requires": { - "icss-utils": "^4.1.1", - "postcss": "^7.0.32", - "postcss-selector-parser": "^6.0.2", - "postcss-value-parser": "^4.1.0" - } - }, - "postcss-modules-scope": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-2.2.0.tgz", - "integrity": "sha512-YyEgsTMRpNd+HmyC7H/mh3y+MeFWevy7V1evVhJWewmMbjDHIbZbOXICC2y+m1xI1UVfIT1HMW/O04Hxyu9oXQ==", - "dev": true, - "requires": { - "postcss": "^7.0.6", - "postcss-selector-parser": "^6.0.0" - } - }, - "postcss-modules-values": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-3.0.0.tgz", - "integrity": "sha512-1//E5jCBrZ9DmRX+zCtmQtRSV6PV42Ix7Bzj9GbwJceduuf7IqP8MgeTXuRDHOWj2m0VzZD5+roFWDuU8RQjcg==", - "dev": true, - "requires": { - "icss-utils": "^4.0.0", - "postcss": "^7.0.6" - } - }, - "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 - }, - "postcss-safe-parser": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/postcss-safe-parser/-/postcss-safe-parser-4.0.2.tgz", - "integrity": "sha512-Uw6ekxSWNLCPesSv/cmqf2bY/77z11O7jZGPax3ycZMFU/oi2DMH9i89AdHc1tRwFg/arFoEwX0IS3LCUxJh1g==", - "dev": true, - "requires": { - "postcss": "^7.0.26" - } - }, - "postcss-sass": { - "version": "0.4.4", - "resolved": "https://registry.npmjs.org/postcss-sass/-/postcss-sass-0.4.4.tgz", - "integrity": "sha512-BYxnVYx4mQooOhr+zer0qWbSPYnarAy8ZT7hAQtbxtgVf8gy+LSLT/hHGe35h14/pZDTw1DsxdbrwxBN++H+fg==", - "dev": true, - "requires": { - "gonzales-pe": "^4.3.0", - "postcss": "^7.0.21" - } - }, - "postcss-scss": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/postcss-scss/-/postcss-scss-2.1.1.tgz", - "integrity": "sha512-jQmGnj0hSGLd9RscFw9LyuSVAa5Bl1/KBPqG1NQw9w8ND55nY4ZEsdlVuYJvLPpV+y0nwTV5v/4rHPzZRihQbA==", - "dev": true, - "requires": { - "postcss": "^7.0.6" - } - }, - "postcss-selector-parser": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.2.tgz", - "integrity": "sha512-36P2QR59jDTOAiIkqEprfJDsoNrvwFei3eCqKd1Y0tUsBimsq39BLp7RD+JWny3WgB1zGhJX8XVePwm9k4wdBg==", - "dev": true, - "requires": { - "cssesc": "^3.0.0", - "indexes-of": "^1.0.1", - "uniq": "^1.0.1" - } - }, - "postcss-syntax": { - "version": "0.36.2", - "resolved": "https://registry.npmjs.org/postcss-syntax/-/postcss-syntax-0.36.2.tgz", - "integrity": "sha512-nBRg/i7E3SOHWxF3PpF5WnJM/jQ1YpY9000OaVXlAQj6Zp/kIqJxEDWIZ67tAd7NLuk7zqN4yqe9nc0oNAOs1w==", - "dev": true - }, - "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 - }, - "preact": { - "version": "10.5.9", - "resolved": "https://registry.npmjs.org/preact/-/preact-10.5.9.tgz", - "integrity": "sha512-X4m+4VMVINl/JFQKALOCwa3p8vhMAhBvle0hJ/W44w/WWfNb2TA7RNicDV3K2dNVs57f61GviEnVLiwN+fxiIg==" - }, - "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 - }, - "prettier": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.2.1.tgz", - "integrity": "sha512-PqyhM2yCjg/oKkFPtTGUojv7gnZAoG80ttl45O6x2Ug/rMJw4wcc9k6aaf2hibP7BGVCCM33gZoGjyvt9mm16Q==", - "dev": true - }, - "prettier-eslint": { - "version": "12.0.0", - "resolved": "https://registry.npmjs.org/prettier-eslint/-/prettier-eslint-12.0.0.tgz", - "integrity": "sha512-N8SGGQwAosISXTNl1E57sBbtnqUGlyRWjcfIUxyD3HF4ynehA9GZ8IfJgiep/OfYvCof/JEpy9ZqSl250Wia7A==", - "dev": true, - "requires": { - "@typescript-eslint/parser": "^3.0.0", - "common-tags": "^1.4.0", - "dlv": "^1.1.0", - "eslint": "^7.9.0", - "indent-string": "^4.0.0", - "lodash.merge": "^4.6.0", - "loglevel-colored-level-prefix": "^1.0.0", - "prettier": "^2.0.0", - "pretty-format": "^23.0.1", - "require-relative": "^0.8.7", - "typescript": "^3.9.3", - "vue-eslint-parser": "~7.1.0" - }, - "dependencies": { - "acorn": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", - "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", - "dev": true - }, - "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 - }, - "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", - "dev": true - }, - "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" - } - }, - "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 - }, - "chalk": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", - "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "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" - } - }, - "debug": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", - "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", - "dev": true, - "requires": { - "ms": "2.1.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 - }, - "eslint": { - "version": "7.17.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.17.0.tgz", - "integrity": "sha512-zJk08MiBgwuGoxes5sSQhOtibZ75pz0J35XTRlZOk9xMffhpA9BTbQZxoXZzOl5zMbleShbGwtw+1kGferfFwQ==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.0.0", - "@eslint/eslintrc": "^0.2.2", - "ajv": "^6.10.0", - "chalk": "^4.0.0", - "cross-spawn": "^7.0.2", - "debug": "^4.0.1", - "doctrine": "^3.0.0", - "enquirer": "^2.3.5", - "eslint-scope": "^5.1.1", - "eslint-utils": "^2.1.0", - "eslint-visitor-keys": "^2.0.0", - "espree": "^7.3.1", - "esquery": "^1.2.0", - "esutils": "^2.0.2", - "file-entry-cache": "^6.0.0", - "functional-red-black-tree": "^1.0.1", - "glob-parent": "^5.0.0", - "globals": "^12.1.0", - "ignore": "^4.0.6", - "import-fresh": "^3.0.0", - "imurmurhash": "^0.1.4", - "is-glob": "^4.0.0", - "js-yaml": "^3.13.1", - "json-stable-stringify-without-jsonify": "^1.0.1", - "levn": "^0.4.1", - "lodash": "^4.17.19", - "minimatch": "^3.0.4", - "natural-compare": "^1.4.0", - "optionator": "^0.9.1", - "progress": "^2.0.0", - "regexpp": "^3.1.0", - "semver": "^7.2.1", - "strip-ansi": "^6.0.0", - "strip-json-comments": "^3.1.0", - "table": "^6.0.4", - "text-table": "^0.2.0", - "v8-compile-cache": "^2.0.3" - } - }, - "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==", - "dev": 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, - "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 - } - } - }, - "eslint-visitor-keys": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.0.0.tgz", - "integrity": "sha512-QudtT6av5WXels9WjIM7qz1XD1cWGvX4gGXvp/zBn9nXG02D0utdU3Em2m/QjTnrsk6bBjmCygl3rmj118msQQ==", - "dev": true - }, - "espree": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-7.3.1.tgz", - "integrity": "sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g==", - "dev": true, - "requires": { - "acorn": "^7.4.0", - "acorn-jsx": "^5.3.1", - "eslint-visitor-keys": "^1.3.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 - } - } - }, - "file-entry-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.0.tgz", - "integrity": "sha512-fqoO76jZ3ZnYrXLDRxBR1YvOvc0k844kcOg40bgsPrE25LAb/PDqTY+ho64Xh2c8ZXgIKldchCFHczG2UVRcWA==", - "dev": true, - "requires": { - "flat-cache": "^3.0.4" - } - }, - "flat-cache": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", - "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", - "dev": true, - "requires": { - "flatted": "^3.1.0", - "rimraf": "^3.0.2" - } - }, - "flatted": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.1.0.tgz", - "integrity": "sha512-tW+UkmtNg/jv9CSofAKvgVcO7c2URjhTdW1ZTkcAritblu8tajiYy7YisnIflEwtKssCtOxpnBRoCB7iap0/TA==", - "dev": true - }, - "glob-parent": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.1.tgz", - "integrity": "sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==", - "dev": true, - "requires": { - "is-glob": "^4.0.1" - } - }, - "globals": { - "version": "12.4.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-12.4.0.tgz", - "integrity": "sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg==", - "dev": true, - "requires": { - "type-fest": "^0.8.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 - }, - "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 - }, - "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 - }, - "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 - }, - "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, - "requires": { - "prelude-ls": "^1.2.1", - "type-check": "~0.4.0" - } - }, - "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 - }, - "optionator": { - "version": "0.9.1", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", - "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", - "dev": 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" - } - }, - "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 - }, - "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 - }, - "pretty-format": { - "version": "23.6.0", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-23.6.0.tgz", - "integrity": "sha512-zf9NV1NSlDLDjycnwm6hpFATCGl/K1lt0R/GdkAK2O5LN/rwJoB+Mh93gGJjut4YbmecbfgLWVGSTCr0Ewvvbw==", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0", - "ansi-styles": "^3.2.0" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true - }, - "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" - } - }, - "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" - } - } - } - }, - "regexpp": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.1.0.tgz", - "integrity": "sha512-ZOIzd8yVsQQA7j8GCSlPGXwg5PfmA1mrq0JP4nGhh54LaKN3xdai/vHUDu74pKwV8OxseMS65u2NImosQcSD0Q==", - "dev": 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" - } - }, - "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 - }, - "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, - "requires": { - "ansi-styles": "^4.0.0", - "astral-regex": "^2.0.0", - "is-fullwidth-code-point": "^3.0.0" - } - }, - "string-width": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", - "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.0" - } - }, - "strip-ansi": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", - "dev": true, - "requires": { - "ansi-regex": "^5.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 - }, - "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" - } - }, - "table": { - "version": "6.0.7", - "resolved": "https://registry.npmjs.org/table/-/table-6.0.7.tgz", - "integrity": "sha512-rxZevLGTUzWna/qBLObOe16kB2RTnnbhciwgPbMMlazz1yZGVEgnZK762xyVdVznhqxrfCeBMmMkgOOaPwjH7g==", - "dev": true, - "requires": { - "ajv": "^7.0.2", - "lodash": "^4.17.20", - "slice-ansi": "^4.0.0", - "string-width": "^4.2.0" - }, - "dependencies": { - "ajv": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-7.0.3.tgz", - "integrity": "sha512-R50QRlXSxqXcQP5SvKUrw8VZeypvo12i2IX0EeR5PiZ7bEKeHWgzgo264LDadUsCU42lTJVhFikTqJwNeH34gQ==", - "dev": 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" - } - } - } - }, - "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, - "requires": { - "prelude-ls": "^1.2.1" - } - }, - "vue-eslint-parser": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/vue-eslint-parser/-/vue-eslint-parser-7.1.1.tgz", - "integrity": "sha512-8FdXi0gieEwh1IprIBafpiJWcApwrU+l2FEj8c1HtHFdNXMd0+2jUSjBVmcQYohf/E72irwAXEXLga6TQcB3FA==", - "dev": true, - "requires": { - "debug": "^4.1.1", - "eslint-scope": "^5.0.0", - "eslint-visitor-keys": "^1.1.0", - "espree": "^6.2.1", - "esquery": "^1.0.1", - "lodash": "^4.17.15" - }, - "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 - }, - "espree": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-6.2.1.tgz", - "integrity": "sha512-ysCxRQY3WaXJz9tdbWOwuWr5Y/XrPTGX9Kiz3yoUXwW0VZ4w30HTkQLaGx/+ttFjF8i+ACbArnB4ce68a9m5hw==", - "dev": true, - "requires": { - "acorn": "^7.1.1", - "acorn-jsx": "^5.2.0", - "eslint-visitor-keys": "^1.1.0" - } - } - } - }, - "which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - } - } - }, - "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" - }, - "dependencies": { - "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" - } - } - } - }, - "pretty-format": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-26.6.2.tgz", - "integrity": "sha512-7AeGuCYNGmycyQbCqd/3PWH4eOoX/OiCa0uphp57NVTeAGdJGaAliecxwBDHYQCIvrW7aDBZCYeNTP/WX69mkg==", - "dev": true, - "requires": { - "@jest/types": "^26.6.2", - "ansi-regex": "^5.0.0", - "ansi-styles": "^4.0.0", - "react-is": "^17.0.1" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", - "dev": true - }, - "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" - } - } - } - }, - "process": { - "version": "0.11.10", - "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", - "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=", - "dev": 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==" - }, - "progress": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", - "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", - "dev": true - }, - "promise-inflight": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", - "integrity": "sha1-mEcocL8igTL8vdhoEputEsPAKeM=", - "dev": true - }, - "prompts": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.0.tgz", - "integrity": "sha512-awZAKrk3vN6CroQukBL+R9051a4R3zCZBlJm/HBfrSZ8iTpYix3VX1vU4mveiLpiwmOJT4wokTF9m6HUk4KqWQ==", - "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 - }, - "prr": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", - "integrity": "sha1-0/wRS6BplaRexok/SEzrHXj19HY=", - "dev": 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, - "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.11.9", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", - "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", - "dev": true - } - } - }, - "pump": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", - "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", - "dev": true, - "requires": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - }, - "pumpify": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/pumpify/-/pumpify-1.5.1.tgz", - "integrity": "sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ==", - "dev": true, - "requires": { - "duplexify": "^3.6.0", - "inherits": "^2.0.3", - "pump": "^2.0.0" - }, - "dependencies": { - "pump": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/pump/-/pump-2.0.1.tgz", - "integrity": "sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA==", - "dev": true, - "requires": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - } - } - }, - "punycode": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", - "dev": true - }, - "qs": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", - "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==", - "dev": true - }, - "querystring": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", - "integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=", - "dev": true - }, - "querystring-es3": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz", - "integrity": "sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM=", - "dev": true - }, - "queue-microtask": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.2.tgz", - "integrity": "sha512-dB15eXv3p2jDlbOiNLyMabYg1/sXvppd8DP2J3EOCQ0AkuSXCW2tP7mnVouVLJKgUMY6yP0kcQDVpLCN13h4Xg==", - "dev": 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 - }, - "randombytes": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", - "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", - "dev": 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, - "requires": { - "randombytes": "^2.0.5", - "safe-buffer": "^5.1.0" - } - }, - "react-is": { - "version": "17.0.1", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.1.tgz", - "integrity": "sha512-NAnt2iGDXohE5LI7uBnLnqvLQMtzhkiAOLXTmv+qnF9Ky7xAPcX8Up/xWIhxvLVGJvuLiNc4xQLtuqDRzb4fSA==", - "dev": true - }, - "read-pkg": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-2.0.0.tgz", - "integrity": "sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg=", - "dev": true, - "requires": { - "load-json-file": "^2.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^2.0.0" - } - }, - "read-pkg-up": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-2.0.0.tgz", - "integrity": "sha1-a3KoBImE4MQeeVEP1en6mbO1Sb4=", - "dev": true, - "requires": { - "find-up": "^2.0.0", - "read-pkg": "^2.0.0" - }, - "dependencies": { - "find-up": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", - "dev": 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, - "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, - "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, - "requires": { - "p-limit": "^1.1.0" - } - }, - "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 - }, - "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 - } - } - }, - "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==", - "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" - } - }, - "readdirp": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz", - "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", - "optional": true, - "requires": { - "graceful-fs": "^4.1.11", - "micromatch": "^3.1.10", - "readable-stream": "^2.0.2" - } - }, - "rechoir": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.7.0.tgz", - "integrity": "sha512-ADsDEH2bvbjltXEP+hTIAmeFekTFK0V2BTxMkok6qILyAJEXV0AFfoWcAq4yfll5VdIMd/RVXq0lR+wQi5ZU3Q==", - "dev": true, - "requires": { - "resolve": "^1.9.0" - } - }, - "redent": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz", - "integrity": "sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=", - "dev": true, - "requires": { - "indent-string": "^2.1.0", - "strip-indent": "^1.0.1" - } - }, - "regenerate": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", - "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==" - }, - "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==", - "requires": { - "regenerate": "^1.4.0" - } - }, - "regenerator-runtime": { - "version": "0.13.7", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.7.tgz", - "integrity": "sha512-a54FxoJDIr27pgf7IgeQGxmqUNYrcV338lf/6gH456HZ/PhX+5BcwHXG9ajESmwe6WRO0tAzRUrRmNONWgkrew==" - }, - "regenerator-transform": { - "version": "0.14.5", - "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.14.5.tgz", - "integrity": "sha512-eOf6vka5IO151Jfsw2NO9WpGX58W6wWmefK3I1zEGr0lOD0u8rwPaNqQL1aRxUaxLeKO3ArNh3VYg1KbaD+FFw==", - "requires": { - "@babel/runtime": "^7.8.4" - } - }, - "regex-not": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz", - "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", - "requires": { - "extend-shallow": "^3.0.2", - "safe-regex": "^1.1.0" - } - }, - "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 - }, - "regexpp": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-2.0.1.tgz", - "integrity": "sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw==", - "dev": true - }, - "regexpu-core": { - "version": "4.7.1", - "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-4.7.1.tgz", - "integrity": "sha512-ywH2VUraA44DZQuRKzARmw6S66mr48pQVva4LBeRhcOltJ6hExvWly5ZjFLYo67xbIxb6W1q4bAGtgfEl20zfQ==", - "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==" - }, - "regjsparser": { - "version": "0.6.7", - "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.6.7.tgz", - "integrity": "sha512-ib77G0uxsA2ovgiYbCVGx4Pv3PSttAx2vIwidqQzbL2U5S4Q+j00HdSAneSBuyVcMvEnTXMjiGgB+DlXozVhpQ==", - "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=" - } - } - }, - "remark": { - "version": "13.0.0", - "resolved": "https://registry.npmjs.org/remark/-/remark-13.0.0.tgz", - "integrity": "sha512-HDz1+IKGtOyWN+QgBiAT0kn+2s6ovOxHyPAFGKVE81VSzJ+mq7RwHFledEvB5F1p4iJvOah/LOKdFuzvRnNLCA==", - "dev": true, - "requires": { - "remark-parse": "^9.0.0", - "remark-stringify": "^9.0.0", - "unified": "^9.1.0" - } - }, - "remark-parse": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-9.0.0.tgz", - "integrity": "sha512-geKatMwSzEXKHuzBNU1z676sGcDcFoChMK38TgdHJNAYfFtsfHDQG7MoJAjs6sgYMqyLduCYWDIWZIxiPeafEw==", - "dev": true, - "requires": { - "mdast-util-from-markdown": "^0.8.0" - } - }, - "remark-stringify": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/remark-stringify/-/remark-stringify-9.0.1.tgz", - "integrity": "sha512-mWmNg3ZtESvZS8fv5PTvaPckdL4iNlCHTt8/e/8oN08nArHRHjNZMKzA/YW3+p7/lYqIw4nx1XsjCBo/AxNChg==", - "dev": true, - "requires": { - "mdast-util-to-markdown": "^0.6.0" - } - }, - "remove-trailing-separator": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", - "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=" - }, - "repeat-element": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.3.tgz", - "integrity": "sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g==" - }, - "repeat-string": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", - "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=" - }, - "repeating": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz", - "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=", - "dev": true, - "requires": { - "is-finite": "^1.0.0" - } - }, - "request": { - "version": "2.88.2", - "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", - "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==", - "dev": true, - "requires": { - "aws-sign2": "~0.7.0", - "aws4": "^1.8.0", - "caseless": "~0.12.0", - "combined-stream": "~1.0.6", - "extend": "~3.0.2", - "forever-agent": "~0.6.1", - "form-data": "~2.3.2", - "har-validator": "~5.1.3", - "http-signature": "~1.2.0", - "is-typedarray": "~1.0.0", - "isstream": "~0.1.2", - "json-stringify-safe": "~5.0.1", - "mime-types": "~2.1.19", - "oauth-sign": "~0.9.0", - "performance-now": "^2.1.0", - "qs": "~6.5.2", - "safe-buffer": "^5.1.2", - "tough-cookie": "~2.5.0", - "tunnel-agent": "^0.6.0", - "uuid": "^3.3.2" - }, - "dependencies": { - "tough-cookie": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", - "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", - "dev": true, - "requires": { - "psl": "^1.1.28", - "punycode": "^2.1.1" - } - }, - "uuid": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", - "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", - "dev": true - } - } - }, - "request-promise-core": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/request-promise-core/-/request-promise-core-1.1.4.tgz", - "integrity": "sha512-TTbAfBBRdWD7aNNOoVOBH4pN/KigV6LyapYNNlAPA8JwbovRti1E88m3sYAwsLi5ryhPKsE9APwnjFTgdUjTpw==", - "dev": true, - "requires": { - "lodash": "^4.17.19" - } - }, - "request-promise-native": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/request-promise-native/-/request-promise-native-1.0.9.tgz", - "integrity": "sha512-wcW+sIUiWnKgNY0dqCpOZkUbF/I+YPi+f09JZIDa39Ec+q82CpSYniDp+ISgTTbKmnpJWASeJBPZmoxH84wt3g==", - "dev": true, - "requires": { - "request-promise-core": "1.1.4", - "stealthy-require": "^1.1.1", - "tough-cookie": "^2.3.3" - }, - "dependencies": { - "tough-cookie": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", - "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", - "dev": true, - "requires": { - "psl": "^1.1.28", - "punycode": "^2.1.1" - } - } - } - }, - "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 - }, - "require-main-filename": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", - "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", - "dev": true - }, - "require-relative": { - "version": "0.8.7", - "resolved": "https://registry.npmjs.org/require-relative/-/require-relative-0.8.7.tgz", - "integrity": "sha1-eZlTn8ngR6N5KPoZb44VY9q9Nt4=", - "dev": true - }, - "requireindex": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/requireindex/-/requireindex-1.2.0.tgz", - "integrity": "sha512-L9jEkOi3ASd9PYit2cwRfyppc9NoABujTP8/5gFcbERmo5jUoAKovIC3fsF17pkTnGsrByysqX+Kxd2OTNI1ww==", - "dev": true - }, - "resolve": { - "version": "1.17.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.17.0.tgz", - "integrity": "sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w==", - "dev": true, - "requires": { - "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=" - }, - "resolve-url-loader": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/resolve-url-loader/-/resolve-url-loader-3.1.2.tgz", - "integrity": "sha512-QEb4A76c8Mi7I3xNKXlRKQSlLBwjUV/ULFMP+G7n3/7tJZ8MG5wsZ3ucxP1Jz8Vevn6fnJsxDx9cIls+utGzPQ==", - "dev": true, - "requires": { - "adjust-sourcemap-loader": "3.0.0", - "camelcase": "5.3.1", - "compose-function": "3.0.3", - "convert-source-map": "1.7.0", - "es6-iterator": "2.0.3", - "loader-utils": "1.2.3", - "postcss": "7.0.21", - "rework": "1.0.1", - "rework-visit": "1.0.0", - "source-map": "0.6.1" - }, - "dependencies": { - "emojis-list": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-2.1.0.tgz", - "integrity": "sha1-TapNnbAPmBmIDHn6RXrlsJof04k=", - "dev": true - }, - "json5": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", - "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", - "dev": true, - "requires": { - "minimist": "^1.2.0" - } - }, - "loader-utils": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.2.3.tgz", - "integrity": "sha512-fkpz8ejdnEMG3s37wGL07iSBDg99O9D5yflE9RGNH3hRdx9SOwYfnGYdZOUIZitN8E+E2vkq3MUMYMvPYl5ZZA==", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^2.0.0", - "json5": "^1.0.1" - } - }, - "postcss": { - "version": "7.0.21", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.21.tgz", - "integrity": "sha512-uIFtJElxJo29QC753JzhidoAhvp/e/Exezkdhfmt8AymWT6/5B7W1WmponYWkHk2eg6sONyTch0A3nkMPun3SQ==", - "dev": true, - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "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": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "restore-cursor": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz", - "integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=", - "dev": true, - "requires": { - "onetime": "^2.0.0", - "signal-exit": "^3.0.2" - } - }, - "ret": { - "version": "0.1.15", - "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", - "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==" - }, - "reusify": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", - "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", - "dev": true - }, - "rework": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/rework/-/rework-1.0.1.tgz", - "integrity": "sha1-MIBqhBNCtUUQqkEQhQzUhTQUSqc=", - "dev": true, - "requires": { - "convert-source-map": "^0.3.3", - "css": "^2.0.0" - }, - "dependencies": { - "convert-source-map": { - "version": "0.3.5", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-0.3.5.tgz", - "integrity": "sha1-8dgClQr33SYxof6+BZZVDIarMZA=", - "dev": true - } - } - }, - "rework-visit": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/rework-visit/-/rework-visit-1.0.0.tgz", - "integrity": "sha1-mUWygD8hni96ygCtuLyfZA+ELJo=", - "dev": true - }, - "rimraf": { - "version": "2.6.3", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", - "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", - "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, - "requires": { - "hash-base": "^3.0.0", - "inherits": "^2.0.1" - } - }, - "rsvp": { - "version": "4.8.5", - "resolved": "https://registry.npmjs.org/rsvp/-/rsvp-4.8.5.tgz", - "integrity": "sha512-nfMOlASu9OnRJo1mbEk2cz0D56a1MBNrJ7orjRZQG10XDyuvwksKbuXNp6qa+kbn839HwjwhBzhFmdsaEAfauA==", - "dev": true - }, - "run-async": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", - "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==", - "dev": true - }, - "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, - "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" - }, - "dependencies": { - "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" - } - } - } - }, - "run-queue": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/run-queue/-/run-queue-1.0.3.tgz", - "integrity": "sha1-6Eg5bwV9Ij8kOGkkYY4laUFh7Ec=", - "dev": true, - "requires": { - "aproba": "^1.1.1" - } - }, - "rxjs": { - "version": "6.6.2", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.2.tgz", - "integrity": "sha512-BHdBMVoWC2sL26w//BCu3YzKT4s2jip/WhwsGEDmeKYBhKDZeYezVUnHatYB7L85v5xs0BAQmg6BEYJEKxBabg==", - "dev": true, - "requires": { - "tslib": "^1.9.0" - }, - "dependencies": { - "tslib": { - "version": "1.13.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.13.0.tgz", - "integrity": "sha512-i/6DQjL8Xf3be4K/E6Wgpekn5Qasl1usyw++dAA35Ue5orEn65VIxOA+YvNNl9HV3qv70T7CNwjODHZrLwvd1Q==", - "dev": true - } - } - }, - "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==" - }, - "safe-regex": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", - "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=", - "requires": { - "ret": "~0.1.10" - } - }, - "safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", - "dev": true - }, - "sane": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/sane/-/sane-4.1.0.tgz", - "integrity": "sha512-hhbzAgTIX8O7SHfp2c8/kREfEn4qO/9q8C9beyY6+tvZ87EpoZ3i1RIEvp27YBswnNbY9mWd6paKVmKbAgLfZA==", - "dev": true, - "requires": { - "@cnakazawa/watch": "^1.0.3", - "anymatch": "^2.0.0", - "capture-exit": "^2.0.0", - "exec-sh": "^0.3.2", - "execa": "^1.0.0", - "fb-watchman": "^2.0.0", - "micromatch": "^3.1.4", - "minimist": "^1.1.1", - "walker": "~1.0.5" - } - }, - "sass-graph": { - "version": "2.2.5", - "resolved": "https://registry.npmjs.org/sass-graph/-/sass-graph-2.2.5.tgz", - "integrity": "sha512-VFWDAHOe6mRuT4mZRd4eKE+d8Uedrk6Xnh7Sh9b4NGufQLQjOrvf/MQoOdx+0s92L89FeyUUNfU597j/3uNpag==", - "dev": true, - "requires": { - "glob": "^7.0.0", - "lodash": "^4.0.0", - "scss-tokenizer": "^0.2.3", - "yargs": "^13.3.2" - }, - "dependencies": { - "ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", - "dev": true - }, - "cliui": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", - "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", - "dev": true, - "requires": { - "string-width": "^3.1.0", - "strip-ansi": "^5.2.0", - "wrap-ansi": "^5.1.0" - } - }, - "find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", - "dev": true, - "requires": { - "locate-path": "^3.0.0" - } - }, - "locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", - "dev": true, - "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - } - }, - "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-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", - "dev": true, - "requires": { - "p-limit": "^2.0.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 - }, - "string-width": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", - "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", - "dev": true, - "requires": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" - } - }, - "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "dev": true, - "requires": { - "ansi-regex": "^4.1.0" - } - }, - "wrap-ansi": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz", - "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.0", - "string-width": "^3.0.0", - "strip-ansi": "^5.0.0" - } - }, - "yargs": { - "version": "13.3.2", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz", - "integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==", - "dev": true, - "requires": { - "cliui": "^5.0.0", - "find-up": "^3.0.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^3.0.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^13.1.2" - } - }, - "yargs-parser": { - "version": "13.1.2", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz", - "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==", - "dev": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } - } - } - }, - "sass-loader": { - "version": "10.1.1", - "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-10.1.1.tgz", - "integrity": "sha512-W6gVDXAd5hR/WHsPicvZdjAWHBcEJ44UahgxcIE196fW2ong0ZHMPO1kZuI5q0VlvMQZh32gpv69PLWQm70qrw==", - "dev": true, - "requires": { - "klona": "^2.0.4", - "loader-utils": "^2.0.0", - "neo-async": "^2.6.2", - "schema-utils": "^3.0.0", - "semver": "^7.3.2" - }, - "dependencies": { - "ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "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" - } - }, - "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" - } - }, - "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==", - "dev": true, - "requires": { - "@types/json-schema": "^7.0.6", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.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" - } - }, - "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, - "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=" - }, - "scss-tokenizer": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/scss-tokenizer/-/scss-tokenizer-0.2.3.tgz", - "integrity": "sha1-jrBtualyMzOCTT9VMGQRSYR85dE=", - "dev": true, - "requires": { - "js-base64": "^2.1.8", - "source-map": "^0.4.2" - }, - "dependencies": { - "source-map": { - "version": "0.4.4", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz", - "integrity": "sha1-66T12pwNyZneaAMti092FzZSA2s=", - "dev": true, - "requires": { - "amdefine": ">=0.0.4" - } - } - } - }, - "select": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/select/-/select-1.1.2.tgz", - "integrity": "sha1-DnNQrN7ICxEIUoeG7B1EGNEbOW0=" - }, - "semver": { - "version": "7.3.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.2.tgz", - "integrity": "sha512-OrOb32TeeambH6UrhtShmF7CRDqhL6/5XpPNp2DuRH6+9QLw/orhp72j87v8Qa1ScDkvrrBNpZcDejAirJmfXQ==" - }, - "serialize-javascript": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-4.0.0.tgz", - "integrity": "sha512-GaNA54380uFefWghODBWEGisLZFj00nS5ACs6yHa9nLqlLpVLO8ChDGeKRjZnV4Nh4n0Qi7nhYZD/9fCPzEqkw==", - "dev": true, - "requires": { - "randombytes": "^2.1.0" - } - }, - "set-blocking": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", - "dev": true - }, - "set-value": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz", - "integrity": "sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==", - "requires": { - "extend-shallow": "^2.0.1", - "is-extendable": "^0.1.1", - "is-plain-object": "^2.0.3", - "split-string": "^3.0.1" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "setimmediate": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", - "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=", - "dev": 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, - "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, - "requires": { - "kind-of": "^6.0.2" - } - }, - "shebang-command": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", - "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", - "dev": true, - "requires": { - "shebang-regex": "^1.0.0" - } - }, - "shebang-regex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", - "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", - "dev": true - }, - "shellwords": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/shellwords/-/shellwords-0.1.1.tgz", - "integrity": "sha512-vFwSUfQvqybiICwZY5+DAWIPLKsWO31Q91JSKl3UYv+K5c2QRPzn0qzec6QPu1Qc9eHYItiP3NdJqNVqetYAww==", - "dev": true, - "optional": true - }, - "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 - }, - "slash": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz", - "integrity": "sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==" - }, - "slice-ansi": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-2.1.0.tgz", - "integrity": "sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.0", - "astral-regex": "^1.0.0", - "is-fullwidth-code-point": "^2.0.0" - } - }, - "snapdragon": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz", - "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", - "requires": { - "base": "^0.11.1", - "debug": "^2.2.0", - "define-property": "^0.2.5", - "extend-shallow": "^2.0.1", - "map-cache": "^0.2.2", - "source-map": "^0.5.6", - "source-map-resolve": "^0.5.0", - "use": "^3.1.0" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "snapdragon-node": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz", - "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", - "requires": { - "define-property": "^1.0.0", - "isobject": "^3.0.0", - "snapdragon-util": "^3.0.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "requires": { - "is-descriptor": "^1.0.0" - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - } - } - }, - "snapdragon-util": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz", - "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", - "requires": { - "kind-of": "^3.2.0" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "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-list-map": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.1.tgz", - "integrity": "sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw==", - "dev": true - }, - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=" - }, - "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==", - "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==", - "dev": true, - "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==", - "dev": true - } - } - }, - "source-map-url": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz", - "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=" - }, - "spdx-correct": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", - "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", - "dev": 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 - }, - "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, - "requires": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-license-ids": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.5.tgz", - "integrity": "sha512-J+FWzZoynJEXGphVIS+XEh3kFSjZX/1i9gFBaWQcB+/tmpe2qUsSBABpcxqxnAxFdiUFEgAX1bjYGQvIZmoz9Q==", - "dev": true - }, - "specificity": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/specificity/-/specificity-0.4.1.tgz", - "integrity": "sha512-1klA3Gi5PD1Wv9Q0wUoOQN1IWAuPu0D1U03ThXTr0cJ20+/iq2tHSDnK7Kk/0LXJ1ztUB2/1Os0wKmfyNgUQfg==", - "dev": true - }, - "split-string": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", - "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", - "requires": { - "extend-shallow": "^3.0.0" - } - }, - "sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", - "dev": true - }, - "sshpk": { - "version": "1.16.1", - "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz", - "integrity": "sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg==", - "dev": true, - "requires": { - "asn1": "~0.2.3", - "assert-plus": "^1.0.0", - "bcrypt-pbkdf": "^1.0.0", - "dashdash": "^1.12.0", - "ecc-jsbn": "~0.1.1", - "getpass": "^0.1.1", - "jsbn": "~0.1.0", - "safer-buffer": "^2.0.2", - "tweetnacl": "~0.14.0" - } - }, - "ssri": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-8.0.0.tgz", - "integrity": "sha512-aq/pz989nxVYwn16Tsbj1TqFpD5LLrQxHf5zaHuieFV+R0Bbr4y8qUsOA45hXT/N4/9UNXTarBjnjVmjSOVaAA==", - "dev": true, - "requires": { - "minipass": "^3.1.1" - } - }, - "stack-utils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.3.tgz", - "integrity": "sha512-gL//fkxfWUsIlFL2Tl42Cl6+HFALEaB1FU76I/Fy+oZjRreP7OPMXFlGbxM7NQsI0ZpUfw76sHnv0WNYuTb7Iw==", - "dev": true, - "requires": { - "escape-string-regexp": "^2.0.0" - }, - "dependencies": { - "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 - } - } - }, - "static-extend": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", - "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=", - "requires": { - "define-property": "^0.2.5", - "object-copy": "^0.1.0" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "requires": { - "is-descriptor": "^0.1.0" - } - } - } - }, - "stdout-stream": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/stdout-stream/-/stdout-stream-1.4.1.tgz", - "integrity": "sha512-j4emi03KXqJWcIeF8eIXkjMFN1Cmb8gUlDYGeBALLPo5qdyTfA9bOtl8m33lRoC+vFMkP3gl0WsDr6+gzxbbTA==", - "dev": true, - "requires": { - "readable-stream": "^2.0.1" - } - }, - "stealthy-require": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/stealthy-require/-/stealthy-require-1.1.1.tgz", - "integrity": "sha1-NbCYdbT/SfJqd35QmzCQoyJr8ks=", - "dev": true - }, - "stream-browserify": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-2.0.2.tgz", - "integrity": "sha512-nX6hmklHs/gr2FuxYDltq8fJA1GDlxKQCz8O/IM4atRqBH8OORmBNgfvW5gG10GT/qQ9u0CzIvr2X5Pkt6ntqg==", - "dev": true, - "requires": { - "inherits": "~2.0.1", - "readable-stream": "^2.0.2" - } - }, - "stream-each": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/stream-each/-/stream-each-1.2.3.tgz", - "integrity": "sha512-vlMC2f8I2u/bZGqkdfLQW/13Zihpej/7PmSiMQsbYddxuTsJp8vRe2x2FvVExZg7FaOds43ROAuFJwPR4MTZLw==", - "dev": true, - "requires": { - "end-of-stream": "^1.1.0", - "stream-shift": "^1.0.0" - } - }, - "stream-http": { - "version": "2.8.3", - "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-2.8.3.tgz", - "integrity": "sha512-+TSkfINHDo4J+ZobQLWiMouQYB+UVYFttRA94FpEzzJ7ZdqcL4uUUQ7WkdkI4DSozGmgBUE/a47L+38PenXhUw==", - "dev": true, - "requires": { - "builtin-status-codes": "^3.0.0", - "inherits": "^2.0.1", - "readable-stream": "^2.3.6", - "to-arraybuffer": "^1.0.0", - "xtend": "^4.0.0" - } - }, - "stream-shift": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.1.tgz", - "integrity": "sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ==", - "dev": true - }, - "string-length": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/string-length/-/string-length-4.0.1.tgz", - "integrity": "sha512-PKyXUd0LK0ePjSOnWn34V2uD6acUWev9uy0Ft05k0E8xRW+SKcA0F7eMr7h5xlzfn+4O3N+55rduYyet3Jk+jw==", - "requires": { - "char-regex": "^1.0.2", - "strip-ansi": "^6.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==" - }, - "strip-ansi": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", - "requires": { - "ansi-regex": "^5.0.0" - } - } - } - }, - "string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", - "dev": true, - "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } - } - }, - "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.1", - "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.1.tgz", - "integrity": "sha512-LRPxFUaTtpqYsTeNKaFOw3R4bxIzWOnbQ837QfBylo8jIxtcbK/A/sMV7Q+OAV/vWo+7s25pOE10KYSjaSO06g==", - "requires": { - "define-properties": "^1.1.3", - "es-abstract": "^1.17.5" - } - }, - "string.prototype.trimstart": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.1.tgz", - "integrity": "sha512-XxZn+QpvrBI1FOcg6dIpxUPgWCPuNXvMD72aaRaUQv1eD4e/Qy8i/hFTe0BUmD60p/QA6bh1avmuPTfNjqVWRw==", - "requires": { - "define-properties": "^1.1.3", - "es-abstract": "^1.17.5" - } - }, - "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==", - "requires": { - "safe-buffer": "~5.1.0" - } - }, - "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" - } - }, - "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-eof": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", - "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=", - "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": "1.0.1", - "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz", - "integrity": "sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=", - "dev": true, - "requires": { - "get-stdin": "^4.0.1" - } - }, - "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 - }, - "striptags": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/striptags/-/striptags-3.1.1.tgz", - "integrity": "sha1-yMPn/db7S7OjKjt1LltePjgJPr0=" - }, - "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 - }, - "stylelint": { - "version": "13.10.0", - "resolved": "https://registry.npmjs.org/stylelint/-/stylelint-13.10.0.tgz", - "integrity": "sha512-eDuLrL0wzPKbl5/TbNGZcbw0lTIGbDEr5W6lCODvb1gAg0ncbgCRt7oU0C2VFDvbrcY0A3MFZOwltwTRmc0XCw==", - "dev": true, - "requires": { - "@stylelint/postcss-css-in-js": "^0.37.2", - "@stylelint/postcss-markdown": "^0.36.2", - "autoprefixer": "^9.8.6", - "balanced-match": "^1.0.0", - "chalk": "^4.1.0", - "cosmiconfig": "^7.0.0", - "debug": "^4.3.1", - "execall": "^2.0.0", - "fast-glob": "^3.2.5", - "fastest-levenshtein": "^1.0.12", - "file-entry-cache": "^6.0.0", - "get-stdin": "^8.0.0", - "global-modules": "^2.0.0", - "globby": "^11.0.2", - "globjoin": "^0.1.4", - "html-tags": "^3.1.0", - "ignore": "^5.1.8", - "import-lazy": "^4.0.0", - "imurmurhash": "^0.1.4", - "known-css-properties": "^0.21.0", - "lodash": "^4.17.20", - "log-symbols": "^4.0.0", - "mathml-tag-names": "^2.1.3", - "meow": "^9.0.0", - "micromatch": "^4.0.2", - "normalize-selector": "^0.2.0", - "postcss": "^7.0.35", - "postcss-html": "^0.36.0", - "postcss-less": "^3.1.4", - "postcss-media-query-parser": "^0.2.3", - "postcss-resolve-nested-selector": "^0.1.1", - "postcss-safe-parser": "^4.0.2", - "postcss-sass": "^0.4.4", - "postcss-scss": "^2.1.1", - "postcss-selector-parser": "^6.0.4", - "postcss-syntax": "^0.36.2", - "postcss-value-parser": "^4.1.0", - "resolve-from": "^5.0.0", - "slash": "^3.0.0", - "specificity": "^0.4.1", - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "style-search": "^0.1.0", - "sugarss": "^2.0.0", - "svg-tags": "^1.0.0", - "table": "^6.0.7", - "v8-compile-cache": "^2.2.0", - "write-file-atomic": "^3.0.3" - }, - "dependencies": { - "ajv": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-7.1.0.tgz", - "integrity": "sha512-svS9uILze/cXbH0z2myCK2Brqprx/+JJYK5pHicT/GQiBfzzhUVAIT6MwqJg8y4xV/zoGsUeuPuwtoiKSGE15g==", - "dev": 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" - } - }, - "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", - "dev": true - }, - "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" - } - }, - "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 - }, - "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" - } - }, - "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, - "requires": { - "camelcase": "^5.3.1", - "map-obj": "^4.0.0", - "quick-lru": "^4.0.1" - } - }, - "chalk": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", - "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "debug": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", - "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", - "dev": true, - "requires": { - "ms": "2.1.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 - }, - "file-entry-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.0.tgz", - "integrity": "sha512-fqoO76jZ3ZnYrXLDRxBR1YvOvc0k844kcOg40bgsPrE25LAb/PDqTY+ho64Xh2c8ZXgIKldchCFHczG2UVRcWA==", - "dev": true, - "requires": { - "flat-cache": "^3.0.4" - } - }, - "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" - } - }, - "flat-cache": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", - "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", - "dev": 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 - }, - "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 - }, - "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 - }, - "hosted-git-info": { - "version": "3.0.8", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-3.0.8.tgz", - "integrity": "sha512-aXpmwoOhRBrw6X3j0h5RloK4x1OzsxMPyxqIHyNfSe2pypkVTZFpEiRoSipPEPlMrh0HW/XsjkJ5WgnCirpNUw==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "ignore": { - "version": "5.1.8", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.8.tgz", - "integrity": "sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw==", - "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 - }, - "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-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": 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 - }, - "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" - } - }, - "map-obj": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-4.1.0.tgz", - "integrity": "sha512-glc9y00wgtwcDmp7GaE/0b0OnxpNJsVf3ael/An6Fe2Q51LLwN1er6sdomLRzz5h0+yMpiYLhWYF5R7HeqVd4g==", - "dev": true - }, - "meow": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/meow/-/meow-9.0.0.tgz", - "integrity": "sha512-+obSblOQmRhcyBt62furQqRAQpNyWXo8BuQ5bN7dG8wmwQ+vwHKp/rCFD4CrTP8CsDQD1sjoZ94K417XEUk8IQ==", - "dev": 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" - } - }, - "micromatch": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", - "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", - "dev": true, - "requires": { - "braces": "^3.0.1", - "picomatch": "^2.0.5" - } - }, - "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 - }, - "normalize-package-data": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.0.tgz", - "integrity": "sha512-6lUjEI0d3v6kFrtgA/lOx4zHCWULXsFNIjHolnZCKCTLA6m/G625cdn3O7eNmT0iD3jfo6HZ9cdImGZwf21prw==", - "dev": true, - "requires": { - "hosted-git-info": "^3.0.6", - "resolve": "^1.17.0", - "semver": "^7.3.2", - "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, - "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" - } - }, - "postcss": { - "version": "7.0.35", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", - "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", - "dev": true, - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - }, - "dependencies": { - "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" - } - }, - "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": { - "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" - } - } - } - }, - "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" - } - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": 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, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-selector-parser": { - "version": "6.0.4", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.4.tgz", - "integrity": "sha512-gjMeXBempyInaBqpp8gODmwZ52WaYsVOsfr4L4lDQ7n3ncD6mEyySiDtgzCT+NYC0mmeOLvtsF8iaEf0YT6dBw==", - "dev": true, - "requires": { - "cssesc": "^3.0.0", - "indexes-of": "^1.0.1", - "uniq": "^1.0.1", - "util-deprecate": "^1.0.2" - } - }, - "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, - "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.8", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.8.tgz", - "integrity": "sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg==", - "dev": 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, - "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 - }, - "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 - } - } - }, - "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, - "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 - } - } - }, - "redent": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/redent/-/redent-3.0.0.tgz", - "integrity": "sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==", - "dev": true, - "requires": { - "indent-string": "^4.0.0", - "strip-indent": "^3.0.0" - } - }, - "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" - } - }, - "slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "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, - "requires": { - "ansi-styles": "^4.0.0", - "astral-regex": "^2.0.0", - "is-fullwidth-code-point": "^3.0.0" - } - }, - "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 - }, - "string-width": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", - "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.0" - } - }, - "strip-ansi": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.0" - } - }, - "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, - "requires": { - "min-indent": "^1.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" - } - }, - "table": { - "version": "6.0.7", - "resolved": "https://registry.npmjs.org/table/-/table-6.0.7.tgz", - "integrity": "sha512-rxZevLGTUzWna/qBLObOe16kB2RTnnbhciwgPbMMlazz1yZGVEgnZK762xyVdVznhqxrfCeBMmMkgOOaPwjH7g==", - "dev": true, - "requires": { - "ajv": "^7.0.2", - "lodash": "^4.17.20", - "slice-ansi": "^4.0.0", - "string-width": "^4.2.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" - } - }, - "trim-newlines": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-3.0.0.tgz", - "integrity": "sha512-C4+gOpvmxaSMKuEf9Qc134F1ZuOHVXKRbtEflf4NTtuuJDEIJ9p5PXsalL8SkeRw+qit1Mo+yuvMPAKwWg/1hA==", - "dev": true - }, - "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 - }, - "v8-compile-cache": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.2.0.tgz", - "integrity": "sha512-gTpR5XQNKFwOd4clxfnhaqvfqMpqEwr4tOtCyz4MtYZX2JYhfr1JvBFKdS+7K/9rfpZR3VLX+YWBbKoxCgS43Q==", - "dev": true - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "yargs-parser": { - "version": "20.2.4", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.4.tgz", - "integrity": "sha512-WOkpgNhPTlE73h4VFAFsOnomJVaovO8VqLDzy5saChRBFQFBoMYirowyW+Q9HB4HFF4Z7VZTiG3iSzJJA29yRA==", - "dev": true - } - } - }, - "stylelint-bare-webpack-plugin": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/stylelint-bare-webpack-plugin/-/stylelint-bare-webpack-plugin-2.1.0.tgz", - "integrity": "sha512-R0fIhBLJ5sKQ+J1VzLzlsrrB3+n8MHtcVGyCwtOEVLafdWLWwVEw9ck7RJ01GqeHpXPUrVaaUWN1VDkSHqgRpg==", - "dev": true, - "requires": { - "chalk": "^4.1.0", - "get-value": "^3.0.1", - "is-plain-object": "^5.0.0", - "lodash": "^4.17.20", - "module-available": "^1.0.6", - "webpack-merge": "^5.3.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.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", - "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "get-value": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/get-value/-/get-value-3.0.1.tgz", - "integrity": "sha512-mKZj9JLQrwMBtj5wxi6MH8Z5eSKaERpAwjg43dPtlGI1ZVEgH/qC7T8/6R2OBSUA+zzHBZgICsVJaEIV2tKTDA==", - "dev": true, - "requires": { - "isobject": "^3.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-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 - }, - "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" - } - } - } - }, - "stylelint-config-recommended": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/stylelint-config-recommended/-/stylelint-config-recommended-3.0.0.tgz", - "integrity": "sha512-F6yTRuc06xr1h5Qw/ykb2LuFynJ2IxkKfCMf+1xqPffkxh0S09Zc902XCffcsw/XMFq/OzQ1w54fLIDtmRNHnQ==", - "dev": true - }, - "stylelint-config-recommended-scss": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/stylelint-config-recommended-scss/-/stylelint-config-recommended-scss-4.2.0.tgz", - "integrity": "sha512-4bI5BYbabo/GCQ6LbRZx/ZlVkK65a1jivNNsD+ix/Lw0U3iAch+jQcvliGnnAX8SUPaZ0UqzNVNNAF3urswa7g==", - "dev": true, - "requires": { - "stylelint-config-recommended": "^3.0.0" - } - }, - "stylelint-scss": { - "version": "3.19.0", - "resolved": "https://registry.npmjs.org/stylelint-scss/-/stylelint-scss-3.19.0.tgz", - "integrity": "sha512-Ic5bsmpS4wVucOw44doC1Yi9f5qbeVL4wPFiEOaUElgsOuLEN6Ofn/krKI8BeNL2gAn53Zu+IcVV4E345r6rBw==", - "dev": true, - "requires": { - "lodash": "^4.17.15", - "postcss-media-query-parser": "^0.2.3", - "postcss-resolve-nested-selector": "^0.1.1", - "postcss-selector-parser": "^6.0.2", - "postcss-value-parser": "^4.1.0" - } - }, - "stylelint-webpack-plugin": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/stylelint-webpack-plugin/-/stylelint-webpack-plugin-2.1.1.tgz", - "integrity": "sha512-WHdaWCp4NANcTcltuRjZCjM7jVhdaSg7ag/sQLE22Bf84g5nQC4nBBK8FBdHAssJsho0fDRiwyrzGsIPO+b94A==", - "dev": true, - "requires": { - "arrify": "^2.0.1", - "micromatch": "^4.0.2", - "schema-utils": "^3.0.0" - }, - "dependencies": { - "ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "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" - } - }, - "arrify": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/arrify/-/arrify-2.0.1.tgz", - "integrity": "sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug==", - "dev": 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, - "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.2", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", - "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", - "dev": true, - "requires": { - "braces": "^3.0.1", - "picomatch": "^2.0.5" - } - }, - "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==", - "dev": true, - "requires": { - "@types/json-schema": "^7.0.6", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" - } - }, - "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" - } - } - } - }, - "sugarss": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/sugarss/-/sugarss-2.0.0.tgz", - "integrity": "sha512-WfxjozUk0UVA4jm+U1d736AUpzSrNsQcIbyOkoE364GrtWmIrFdk5lksEupgWMD4VaT/0kVx1dobpiDumSgmJQ==", - "dev": true, - "requires": { - "postcss": "^7.0.2" - } - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "requires": { - "has-flag": "^3.0.0" - } - }, - "supports-hyperlinks": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-2.1.0.tgz", - "integrity": "sha512-zoE5/e+dnEijk6ASB6/qrK+oYdm2do1hjoLWrqUC/8WEIW1gbxFcKuBof7sW8ArN6e+AYvsE8HBGiVRWL/F5CA==", - "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 - }, - "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.1.1", - "resolved": "https://registry.npmjs.org/svgicons2svgfont/-/svgicons2svgfont-9.1.1.tgz", - "integrity": "sha512-iOj7lqHP/oMrLg7S2Iv89LOJUfmIuePefXcs5ul4IsKwcYvL/T/Buahz+nQQJygyuvEMBBXqnCRmnvJggHeJzA==", - "dev": true, - "requires": { - "commander": "^2.12.2", - "geometry-interfaces": "^1.1.4", - "glob": "^7.1.2", - "neatequal": "^1.0.0", - "readable-stream": "^2.3.3", - "sax": "^1.2.4", - "string.fromcodepoint": "^0.2.1", - "string.prototype.codepointat": "^0.2.0", - "svg-pathdata": "^5.0.0", - "transformation-matrix-js": "^2.7.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 - } - } - }, - "svgpath": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/svgpath/-/svgpath-2.3.0.tgz", - "integrity": "sha512-N/4UDu3Y2ICik0daMmFW1tplw0XPs1nVIEVYkTiQfj9/JQZeEtAKaSYwheCwje1I4pQ5r22fGpoaNIvGgsyJyg==", - "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": "5.4.6", - "resolved": "https://registry.npmjs.org/table/-/table-5.4.6.tgz", - "integrity": "sha512-wmEc8m4fjnob4gt5riFRtTu/6+4rSe12TpAELNSqHMfF3IqnA+CH37USM6/YR3qRZv7e56kAEAtd6nKZaxe0Ug==", - "dev": true, - "requires": { - "ajv": "^6.10.2", - "lodash": "^4.17.14", - "slice-ansi": "^2.1.0", - "string-width": "^3.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", - "dev": true - }, - "string-width": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", - "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", - "dev": true, - "requires": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" - } - }, - "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "dev": true, - "requires": { - "ansi-regex": "^4.1.0" - } - } - } - }, - "tapable": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.3.tgz", - "integrity": "sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==", - "dev": true - }, - "tar": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.0.tgz", - "integrity": "sha512-DUCttfhsnLCjwoDoFcI+B2iJgYa93vBnDUATYEeRx6sntCTdN01VnqsIuTlALXla/LWooNg0yEGeB+Y8WdFxGA==", - "dev": true, - "requires": { - "chownr": "^2.0.0", - "fs-minipass": "^2.0.0", - "minipass": "^3.0.0", - "minizlib": "^2.1.1", - "mkdirp": "^1.0.3", - "yallist": "^4.0.0" - }, - "dependencies": { - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": 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" - }, - "dependencies": { - "ansi-escapes": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.1.tgz", - "integrity": "sha512-JWF7ocqNrp8u9oqpgV+wH5ftbt+cfvv+PTjOvKLT3AdYly/LmORARfEVT1iyjwN+4MqE5UmVKoAdIBqeoCHgLA==", - "dev": true, - "requires": { - "type-fest": "^0.11.0" - } - }, - "type-fest": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.11.0.tgz", - "integrity": "sha512-OdjXJxnCN1AvyLSzeKIgXTXxV+99ZuXl3Hpo9XpJAv9MBcHrrJOQ5kV7ypXOuQie+AmWG25hLbiKdwYTifzcfQ==", - "dev": true - } - } - }, - "terser": { - "version": "5.3.4", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.3.4.tgz", - "integrity": "sha512-dxuB8KQo8Gt6OVOeLg/rxfcxdNZI/V1G6ze1czFUzPeCFWZRtvZMgSzlZZ5OYBZ4HoG607F6pFPNLekJyV+yVw==", - "dev": 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==", - "dev": 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==", - "dev": true - } - } - }, - "terser-webpack-plugin": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-4.2.3.tgz", - "integrity": "sha512-jTgXh40RnvOrLQNgIkwEKnQ8rmHjHK4u+6UBEi+W+FPmvb+uo+chJXntKe7/3lW5mNysgSWD60KyesnhW8D6MQ==", - "dev": true, - "requires": { - "cacache": "^15.0.5", - "find-cache-dir": "^3.3.1", - "jest-worker": "^26.5.0", - "p-limit": "^3.0.2", - "schema-utils": "^3.0.0", - "serialize-javascript": "^5.0.1", - "source-map": "^0.6.1", - "terser": "^5.3.4", - "webpack-sources": "^1.4.3" - }, - "dependencies": { - "ajv": { - "version": "6.12.5", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.5.tgz", - "integrity": "sha512-lRF8RORchjpKG50/WFf8xmg7sgCLFiYNNnqdKflk63whMQcWR5ngGjiSXkL9bjxy6B2npOK2HSMN49jEBMSkag==", - "dev": true, - "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" - } - }, - "find-cache-dir": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.1.tgz", - "integrity": "sha512-t2GDMt3oGC/v+BMwzmllWDuJF/xcDtE5j/fCGbqDD7OLuJkj0cfh1YSA5VKPvwMeLFLNDBkwOKZ2X85jGLVftQ==", - "dev": true, - "requires": { - "commondir": "^1.0.1", - "make-dir": "^3.0.2", - "pkg-dir": "^4.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 - }, - "jest-worker": { - "version": "26.5.0", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-26.5.0.tgz", - "integrity": "sha512-kTw66Dn4ZX7WpjZ7T/SUDgRhapFRKWmisVAF0Rv4Fu8SLFD7eLbqpLvbxVqYhSgaWa7I+bW7pHnbyfNsH6stug==", - "dev": true, - "requires": { - "@types/node": "*", - "merge-stream": "^2.0.0", - "supports-color": "^7.0.0" - } - }, - "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" - } - }, - "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" - } - }, - "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==", - "dev": true, - "requires": { - "@types/json-schema": "^7.0.6", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" - } - }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": 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==", - "dev": true, - "requires": { - "randombytes": "^2.1.0" - } - }, - "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" - } - } - } - }, - "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 - }, - "throat": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/throat/-/throat-5.0.0.tgz", - "integrity": "sha512-fcwX4mndzpLQKBS1DVYhGAcYaYt7vsHNIvQV+WXMvnow5cgjPphq5CaayLaGsjRdSCKZFNGt7/GYAuXaNOiYCA==", - "dev": true - }, - "through": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", - "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", - "dev": true - }, - "through2": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", - "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", - "dev": true, - "requires": { - "readable-stream": "~2.3.6", - "xtend": "~4.0.1" - } - }, - "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, - "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==" - }, - "tmp": { - "version": "0.0.33", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", - "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", - "dev": true, - "requires": { - "os-tmpdir": "~1.0.2" - } - }, - "tmpl": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.4.tgz", - "integrity": "sha1-I2QN17QtAEM5ERQIIOXPRA5SHdE=", - "dev": true - }, - "to-arraybuffer": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz", - "integrity": "sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M=", - "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=" - }, - "to-object-path": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz", - "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=", - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "to-regex": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz", - "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==", - "requires": { - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "regex-not": "^1.0.2", - "safe-regex": "^1.1.0" - } - }, - "to-regex-range": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", - "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", - "requires": { - "is-number": "^3.0.0", - "repeat-string": "^1.6.1" - } - }, - "toastify-js": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/toastify-js/-/toastify-js-1.9.1.tgz", - "integrity": "sha512-B3LTJURySMix/xWqVHyj2XGVsIHesb4euGVuIaFfKxfmjM4F6HMgbW9V66DHUEt98jGlGpeTWSiSJ78UfrJVbA==" - }, - "tough-cookie": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-3.0.1.tgz", - "integrity": "sha512-yQyJ0u4pZsv9D4clxO69OEjLWYw+jbgspjTue4lTQZLfV0c5l1VmK2y1JK8E9ahdpltPOaAThPcp5nKPUgSnsg==", - "dev": true, - "requires": { - "ip-regex": "^2.1.0", - "psl": "^1.1.28", - "punycode": "^2.1.1" - } - }, - "tr46": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-2.0.2.tgz", - "integrity": "sha512-3n1qG+/5kg+jrbTzwAykB5yRYtQCTqOGKq5U5PE3b0a1/mzo6snDhjGS0zJVJunO0NrT3Dg1MLy5TjWP/UJppg==", - "dev": true, - "requires": { - "punycode": "^2.1.1" - } - }, - "transformation-matrix-js": { - "version": "2.7.6", - "resolved": "https://registry.npmjs.org/transformation-matrix-js/-/transformation-matrix-js-2.7.6.tgz", - "integrity": "sha512-1CxDIZmCQ3vA0GGnkdMQqxUXVm3xXAFmglPYRS1hr37LzSg22TC7QAWOT38OmdUvMEs/rqcnkFoAsqvzdiluDg==", - "dev": true - }, - "tributejs": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/tributejs/-/tributejs-5.1.3.tgz", - "integrity": "sha512-B5CXihaVzXw+1UHhNFyAwUTMDk1EfoLP5Tj1VhD9yybZ1I8DZJEv8tZ1l0RJo0t0tk9ZhR8eG5tEsaCvRigmdQ==" - }, - "trim-newlines": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz", - "integrity": "sha1-WIeWa7WCpFA6QetST301ARgVphM=", - "dev": true - }, - "trough": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/trough/-/trough-1.0.5.tgz", - "integrity": "sha512-rvuRbTarPXmMb79SmzEp8aqXNKcK+y0XaB298IXueQ8I2PsrATcPBCSPyK/dDNa2iWOhKlfNnOjdAOTBU/nkFA==", - "dev": true - }, - "true-case-path": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/true-case-path/-/true-case-path-1.0.3.tgz", - "integrity": "sha512-m6s2OdQe5wgpFMC+pAJ+q9djG82O2jcHPOI6RNg1yy9rCYR+WD6Nbpl32fDpfC56nirdRy+opFa/Vk7HYhqaew==", - "dev": true, - "requires": { - "glob": "^7.1.2" - } - }, - "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" - } - }, - "tsconfig-paths": { - "version": "3.9.0", - "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.9.0.tgz", - "integrity": "sha512-dRcuzokWhajtZWkQsDVKbWyY+jgcLC5sqJhg2PSgf4ZkH2aHPvaOY8YWGhmjb68b5qqTfasSsDO9k7RUiEmZAw==", - "dev": true, - "requires": { - "@types/json5": "^0.0.29", - "json5": "^1.0.1", - "minimist": "^1.2.0", - "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, - "requires": { - "minimist": "^1.2.0" - } - } - } - }, - "tslib": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.1.0.tgz", - "integrity": "sha512-hcVC3wYEziELGGmEEXue7D75zbwIIVUMWAVbHItGPx0ziyXxrOMQx4rQEVEV45Ut/1IotuEvwqPopzIOkDMf0A==" - }, - "tsutils": { - "version": "3.19.1", - "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.19.1.tgz", - "integrity": "sha512-GEdoBf5XI324lu7ycad7s6laADfnAqCw6wLGI+knxvw9vsIYBaJfYdmeCEG3FMMUiSm3OGgNb+m6utsWf5h9Vw==", - "dev": true, - "requires": { - "tslib": "^1.8.1" - }, - "dependencies": { - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - } - } - }, - "tty-browserify": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.0.tgz", - "integrity": "sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY=", - "dev": true - }, - "tunnel-agent": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", - "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", - "dev": true, - "requires": { - "safe-buffer": "^5.0.1" - } - }, - "tweetnacl": { - "version": "0.14.5", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", - "dev": true - }, - "type": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/type/-/type-1.2.0.tgz", - "integrity": "sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg==", - "dev": 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" - } - }, - "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 - }, - "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 - }, - "typedarray": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", - "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", - "dev": true - }, - "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" - } - }, - "typescript": { - "version": "3.9.7", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.9.7.tgz", - "integrity": "sha512-BLbiRkiBzAwsjut4x/dsibSTB6yWpwT5qWmC2OfuCg3GgVQCSgMs4vEctYPhsaGtd0AeuuHMkjZ2h2WG8MSzRw==", - "dev": true - }, - "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==" - }, - "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==", - "requires": { - "unicode-canonical-property-names-ecmascript": "^1.0.4", - "unicode-property-aliases-ecmascript": "^1.0.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==" - }, - "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==" - }, - "unified": { - "version": "9.2.0", - "resolved": "https://registry.npmjs.org/unified/-/unified-9.2.0.tgz", - "integrity": "sha512-vx2Z0vY+a3YoTj8+pttM3tiJHCwY5UFbYdiWrwBEbHmK8pvsPj2rtAX2BFfgXen8T39CJWblWRDT4L5WGXtDdg==", - "dev": true, - "requires": { - "bail": "^1.0.0", - "extend": "^3.0.0", - "is-buffer": "^2.0.0", - "is-plain-obj": "^2.0.0", - "trough": "^1.0.0", - "vfile": "^4.0.0" - }, - "dependencies": { - "is-buffer": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz", - "integrity": "sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==", - "dev": true - } - } - }, - "union-value": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz", - "integrity": "sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==", - "requires": { - "arr-union": "^3.1.0", - "get-value": "^2.0.6", - "is-extendable": "^0.1.1", - "set-value": "^2.0.1" - } - }, - "uniq": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/uniq/-/uniq-1.0.1.tgz", - "integrity": "sha1-sxxa6CVIRKOoKBVBzisEuGWnNP8=", - "dev": true - }, - "unique-filename": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz", - "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==", - "dev": true, - "requires": { - "unique-slug": "^2.0.0" - } - }, - "unique-slug": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.2.tgz", - "integrity": "sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w==", - "dev": true, - "requires": { - "imurmurhash": "^0.1.4" - } - }, - "unist-util-find-all-after": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/unist-util-find-all-after/-/unist-util-find-all-after-3.0.2.tgz", - "integrity": "sha512-xaTC/AGZ0rIM2gM28YVRAFPIZpzbpDtU3dRmp7EXlNVA8ziQc4hY3H7BHXM1J49nEmiqc3svnqMReW+PGqbZKQ==", - "dev": true, - "requires": { - "unist-util-is": "^4.0.0" - } - }, - "unist-util-is": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-4.0.4.tgz", - "integrity": "sha512-3dF39j/u423v4BBQrk1AQ2Ve1FxY5W3JKwXxVFzBODQ6WEvccguhgp802qQLKSnxPODE6WuRZtV+ohlUg4meBA==", - "dev": true - }, - "unist-util-stringify-position": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-2.0.3.tgz", - "integrity": "sha512-3faScn5I+hy9VleOq/qNbAd6pAx7iH5jYBMS9I1HgQVijz/4mv5Bvw5iw1sC/90CODiKo81G/ps8AJrISn687g==", - "dev": true, - "requires": { - "@types/unist": "^2.0.2" - } - }, - "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 - }, - "unset-value": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", - "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=", - "requires": { - "has-value": "^0.3.1", - "isobject": "^3.0.0" - }, - "dependencies": { - "has-value": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz", - "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=", - "requires": { - "get-value": "^2.0.3", - "has-values": "^0.1.4", - "isobject": "^2.0.0" - }, - "dependencies": { - "isobject": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", - "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", - "requires": { - "isarray": "1.0.0" - } - } - } - }, - "has-values": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz", - "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=" - } - } - }, - "upath": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/upath/-/upath-1.2.0.tgz", - "integrity": "sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg==", - "optional": true - }, - "uri-js": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.0.tgz", - "integrity": "sha512-B0yRTzYdUCCn9n+F4+Gh4yIDtMQcaJsmYBDsTSG8g/OejKBodLQ2IHfN3bM7jUsRXndopT7OIXWdYqc1fjmV6g==", - "dev": true, - "requires": { - "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=" - }, - "url": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", - "integrity": "sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE=", - "dev": true, - "requires": { - "punycode": "1.3.2", - "querystring": "0.2.0" - }, - "dependencies": { - "punycode": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", - "integrity": "sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=", - "dev": true - } - } - }, - "url-loader": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/url-loader/-/url-loader-4.1.1.tgz", - "integrity": "sha512-3BTV812+AVHHOJQO8O5MkWgZ5aosP7GnROJwvzLS9hWDj00lZ6Z0wNak423Lp9PBZN05N+Jk/N5Si8jRAlGyWA==", - "dev": true, - "requires": { - "loader-utils": "^2.0.0", - "mime-types": "^2.1.27", - "schema-utils": "^3.0.0" - }, - "dependencies": { - "ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "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" - } - }, - "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" - } - }, - "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==", - "dev": true, - "requires": { - "@types/json-schema": "^7.0.6", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" - } - } - } - }, - "use": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz", - "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==" - }, - "util": { - "version": "0.11.1", - "resolved": "https://registry.npmjs.org/util/-/util-0.11.1.tgz", - "integrity": "sha512-HShAsny+zS2TZfaXxD9tYj4HQGlBezXZMZuM/S5PKLLoZkShZiGk9o5CzukI1LVHZvjdvZ2Sj1aW/Ndn2NB/HQ==", - "dev": true, - "requires": { - "inherits": "2.0.3" - }, - "dependencies": { - "inherits": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", - "dev": true - } - } - }, - "util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" - }, - "uuid": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", - "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==" - }, - "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==" - }, - "v-tooltip": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/v-tooltip/-/v-tooltip-2.1.2.tgz", - "integrity": "sha512-6c4NotnvDvinmZnBiqW50Rn6Q3MMk+pUV9Nla+JHkgJulgXh5snrU3RYbIZVf9p2ZlFoaZL/3QhTNgcQIc2GFQ==", - "requires": { - "lodash": "^4.17.15", - "popper.js": "^1.16.0", - "vue-resize": "^1.0.0" - }, - "dependencies": { - "vue-resize": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/vue-resize/-/vue-resize-1.0.0.tgz", - "integrity": "sha512-SkIi19neeJClapYavfmHiewFZkkTfITVWskg/dIL8b1Eb+RlvnCb8fjGUwLjQJmsw2qsRiiAo4o7BAJVM4pcOA==" - } - } - }, - "v8-compile-cache": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.1.1.tgz", - "integrity": "sha512-8OQ9CL+VWyt3JStj7HX7/ciTL2V3Rl1Wf5OL+SNTm0yK1KvtReVulksyeRnCANHHuUxHlQig+JJDlUhBt1NQDQ==", - "dev": true - }, - "v8-to-istanbul": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-7.1.0.tgz", - "integrity": "sha512-uXUVqNUCLa0AH1vuVxzi+MI4RfxEOKt9pBgKwHbgH7st8Kv2P1m+jvWNnektzBh5QShF3ODgKmUFCf38LnVz1g==", - "dev": true, - "requires": { - "@types/istanbul-lib-coverage": "^2.0.1", - "convert-source-map": "^1.6.0", - "source-map": "^0.7.3" - }, - "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 - } - } - }, - "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, - "requires": { - "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=", - "dev": true, - "requires": { - "readable-stream": "^1.0.33" - }, - "dependencies": { - "isarray": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", - "dev": true - }, - "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" - } - }, - "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 - } - } - }, - "verror": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", - "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0", - "core-util-is": "1.0.2", - "extsprintf": "^1.2.0" - } - }, - "vfile": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/vfile/-/vfile-4.2.1.tgz", - "integrity": "sha512-O6AE4OskCG5S1emQ/4gl8zK586RqA3srz3nfK/Viy0UPToBc5Trp9BVFb1u0CjsKrAWwnpr4ifM/KBXPWwJbCA==", - "dev": true, - "requires": { - "@types/unist": "^2.0.0", - "is-buffer": "^2.0.0", - "unist-util-stringify-position": "^2.0.0", - "vfile-message": "^2.0.0" - }, - "dependencies": { - "is-buffer": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz", - "integrity": "sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==", - "dev": true - } - } - }, - "vfile-message": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-2.0.4.tgz", - "integrity": "sha512-DjssxRGkMvifUOJre00juHoP9DPWuzjxKuMDrhNbk2TdaYYBNMStsNhEOt3idrtI12VQYM/1+iM0KOzXi4pxwQ==", - "dev": true, - "requires": { - "@types/unist": "^2.0.0", - "unist-util-stringify-position": "^2.0.0" - } - }, - "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 - }, - "vue": { - "version": "2.6.12", - "resolved": "https://registry.npmjs.org/vue/-/vue-2.6.12.tgz", - "integrity": "sha512-uhmLFETqPPNyuLLbsKz6ioJ4q7AZHzD8ZVFNATNyICSZouqP2Sz0rotWQC8UNBF6VGSCs5abnKJoStA6JbCbfg==" - }, - "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.1", - "resolved": "https://registry.npmjs.org/vue-clipboard2/-/vue-clipboard2-0.3.1.tgz", - "integrity": "sha512-H5S/agEDj0kXjUb5GP2c0hCzIXWRBygaWLN3NEFsaI9I3uWin778SFEMt8QRXiPG+7anyjqWiw2lqcxWUSfkYg==", - "requires": { - "clipboard": "^2.0.0" - } - }, - "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": { - "clamp": "^1.0.1", - "lodash.throttle": "^4.0.0", - "material-colors": "^1.0.0", - "tinycolor2": "^1.1.2" - } - }, - "vue-eslint-parser": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/vue-eslint-parser/-/vue-eslint-parser-5.0.0.tgz", - "integrity": "sha512-JlHVZwBBTNVvzmifwjpZYn0oPWH2SgWv5dojlZBsrhablDu95VFD+hriB1rQGwbD+bms6g+rAFhQHk6+NyiS6g==", - "dev": true, - "requires": { - "debug": "^4.1.0", - "eslint-scope": "^4.0.0", - "eslint-visitor-keys": "^1.0.0", - "espree": "^4.1.0", - "esquery": "^1.0.1", - "lodash": "^4.17.11" - }, - "dependencies": { - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "espree": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/espree/-/espree-4.1.0.tgz", - "integrity": "sha512-I5BycZW6FCVIub93TeVY1s7vjhP9CY6cXCznIRfiig7nRviKZYdRnj/sHEWC6A7WE9RDWOFq9+7OsWSYz8qv2w==", - "dev": true, - "requires": { - "acorn": "^6.0.2", - "acorn-jsx": "^5.0.0", - "eslint-visitor-keys": "^1.0.0" - } - }, - "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 - } - } - }, - "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 - }, - "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.6", - "resolved": "https://registry.npmjs.org/vue-loader/-/vue-loader-15.9.6.tgz", - "integrity": "sha512-j0cqiLzwbeImIC6nVIby2o/ABAWhlppyL/m5oJ67R5MloP0hj/DtFgb0Zmq3J9CG7AJ+AXIvHVnJAPBvrLyuDg==", - "dev": true, - "requires": { - "@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" - } - }, - "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==" - }, - "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==" - }, - "vue-resize": { - "version": "0.4.5", - "resolved": "https://registry.npmjs.org/vue-resize/-/vue-resize-0.4.5.tgz", - "integrity": "sha512-bhP7MlgJQ8TIkZJXAfDf78uJO+mEI3CaLABLjv0WNzr4CcGRGPIAItyWYnP6LsPA4Oq0WE+suidNs6dgpO4RHg==" - }, - "vue-router": { - "version": "3.5.1", - "resolved": "https://registry.npmjs.org/vue-router/-/vue-router-3.5.1.tgz", - "integrity": "sha512-RRQNLT8Mzr8z7eL4p7BtKvRaTSGdCbTy2+Mm5HTJvLGYSSeG9gDzNasJPP/yOYKLy+/cLG/ftrqq5fvkFwBJEw==" - }, - "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": { - "custom-event-polyfill": "^1.0.7", - "element-matches": "^0.1.2" - } - }, - "vue-style-loader": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/vue-style-loader/-/vue-style-loader-4.1.2.tgz", - "integrity": "sha512-0ip8ge6Gzz/Bk0iHovU9XAUQaFt/G2B61bnWa2tCcqqdgfHs1lF9xXorFbE55Gmy92okFT+8bfmySuUOu13vxQ==", - "dev": true, - "requires": { - "hash-sum": "^1.0.2", - "loader-utils": "^1.0.2" - } - }, - "vue-template-compiler": { - "version": "2.6.12", - "resolved": "https://registry.npmjs.org/vue-template-compiler/-/vue-template-compiler-2.6.12.tgz", - "integrity": "sha512-OzzZ52zS41YUbkCBfdXShQTe69j1gQDZ9HIX8miuC9C3rBCk9wIRjLiZZLrmX9V+Ftq/YEyv1JaVr5Y/hNtByg==", - "dev": true, - "requires": { - "de-indent": "^1.0.2", - "he": "^1.1.0" - } - }, - "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" - } - }, - "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.8.2", - "resolved": "https://registry.npmjs.org/vue2-datepicker/-/vue2-datepicker-3.8.2.tgz", - "integrity": "sha512-GUoNLyzPl3Xi7ruSQFF59BzMXWuflxzP9yM3P4ARz9GfhzLLFgYVLAEkJi6DNQU7zozBMzz+VNIQDwPaDNMo6Q==", - "requires": { - "date-format-parse": "^0.2.6" - } - }, - "vuedraggable": { - "version": "2.24.3", - "resolved": "https://registry.npmjs.org/vuedraggable/-/vuedraggable-2.24.3.tgz", - "integrity": "sha512-6/HDXi92GzB+Hcs9fC6PAAozK1RLt1ewPTLjK0anTYguXLAeySDmcnqE8IC0xa7shvSzRjQXq3/+dsZ7ETGF3g==", - "requires": { - "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==" - }, - "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==" - }, - "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==", - "dev": true, - "requires": { - "xml-name-validator": "^3.0.0" - } - }, - "walker": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.7.tgz", - "integrity": "sha1-L3+bj9ENZ3JisYqITijRlhjgKPs=", - "dev": true, - "requires": { - "makeerror": "1.0.x" - } - }, - "watchpack": { - "version": "1.7.5", - "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-1.7.5.tgz", - "integrity": "sha512-9P3MWk6SrKjHsGkLT2KHXdQ/9SNkyoJbabxnKOoJepsvJjJG8uYTR3yTPxPQvNDI3w4Nz1xnE0TLHK4RIVe/MQ==", - "dev": true, - "requires": { - "chokidar": "^3.4.1", - "graceful-fs": "^4.1.2", - "neo-async": "^2.5.0", - "watchpack-chokidar2": "^2.0.1" - } - }, - "watchpack-chokidar2": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/watchpack-chokidar2/-/watchpack-chokidar2-2.0.1.tgz", - "integrity": "sha512-nCFfBIPKr5Sh61s4LPpy1Wtfi0HE8isJ3d2Yb5/Ppw2P2B/3eVSEBjKfN0fmHJSK14+31KwMKmcrzs2GM4P0Ww==", - "dev": true, - "optional": true, - "requires": { - "chokidar": "^2.1.8" - }, - "dependencies": { - "chokidar": { - "version": "2.1.8", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.8.tgz", - "integrity": "sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg==", - "dev": true, - "optional": true, - "requires": { - "anymatch": "^2.0.0", - "async-each": "^1.0.1", - "braces": "^2.3.2", - "fsevents": "^1.2.7", - "glob-parent": "^3.1.0", - "inherits": "^2.0.3", - "is-binary-path": "^1.0.0", - "is-glob": "^4.0.0", - "normalize-path": "^3.0.0", - "path-is-absolute": "^1.0.0", - "readdirp": "^2.2.1", - "upath": "^1.1.1" - } - }, - "fsevents": { - "version": "1.2.13", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.13.tgz", - "integrity": "sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==", - "dev": true, - "optional": true, - "requires": { - "bindings": "^1.5.0", - "nan": "^2.12.1" - } - } - } - }, - "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 - }, - "webpack": { - "version": "4.46.0", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.46.0.tgz", - "integrity": "sha512-6jJuJjg8znb/xRItk7bkT0+Q7AHCYjjFnvKIWQPkNIOyRqoCGvkOs0ipeQzrqz4l5FtN5ZI/ukEHroeX/o1/5Q==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.9.0", - "@webassemblyjs/helper-module-context": "1.9.0", - "@webassemblyjs/wasm-edit": "1.9.0", - "@webassemblyjs/wasm-parser": "1.9.0", - "acorn": "^6.4.1", - "ajv": "^6.10.2", - "ajv-keywords": "^3.4.1", - "chrome-trace-event": "^1.0.2", - "enhanced-resolve": "^4.5.0", - "eslint-scope": "^4.0.3", - "json-parse-better-errors": "^1.0.2", - "loader-runner": "^2.4.0", - "loader-utils": "^1.2.3", - "memory-fs": "^0.4.1", - "micromatch": "^3.1.10", - "mkdirp": "^0.5.3", - "neo-async": "^2.6.1", - "node-libs-browser": "^2.2.1", - "schema-utils": "^1.0.0", - "tapable": "^1.1.3", - "terser-webpack-plugin": "^1.4.3", - "watchpack": "^1.7.4", - "webpack-sources": "^1.4.1" - }, - "dependencies": { - "cacache": { - "version": "12.0.4", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-12.0.4.tgz", - "integrity": "sha512-a0tMB40oefvuInr4Cwb3GerbL9xTj1D5yg0T5xrjGCGyfvbxseIXX7BAO/u/hIXdafzOI5JC3wDwHyf24buOAQ==", - "dev": true, - "requires": { - "bluebird": "^3.5.5", - "chownr": "^1.1.1", - "figgy-pudding": "^3.5.1", - "glob": "^7.1.4", - "graceful-fs": "^4.1.15", - "infer-owner": "^1.0.3", - "lru-cache": "^5.1.1", - "mississippi": "^3.0.0", - "mkdirp": "^0.5.1", - "move-concurrently": "^1.0.1", - "promise-inflight": "^1.0.1", - "rimraf": "^2.6.3", - "ssri": "^6.0.1", - "unique-filename": "^1.1.1", - "y18n": "^4.0.0" - } - }, - "chownr": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", - "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==", - "dev": true - }, - "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 - }, - "enhanced-resolve": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-4.5.0.tgz", - "integrity": "sha512-Nv9m36S/vxpsI+Hc4/ZGRs0n9mXqSWGGq49zxb/cJfPAQMbUtttJAlNPS4AQzaBdw/pKskw5bMbekT/Y7W/Wlg==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "memory-fs": "^0.5.0", - "tapable": "^1.0.0" - }, - "dependencies": { - "memory-fs": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.5.0.tgz", - "integrity": "sha512-jA0rdU5KoQMC0e6ppoNRtpp6vjFq6+NY7r8hywnC7V+1Xj/MtHwGIbB1QaK/dunyjWteJzmkpd7ooeWg10T7GA==", - "dev": true, - "requires": { - "errno": "^0.1.3", - "readable-stream": "^2.0.1" - } - } - } - }, - "is-wsl": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", - "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=", - "dev": true - }, - "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, - "requires": { - "yallist": "^3.0.2" - } - }, - "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" - } - }, - "schema-utils": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", - "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", - "dev": true, - "requires": { - "ajv": "^6.1.0", - "ajv-errors": "^1.0.0", - "ajv-keywords": "^3.1.0" - } - }, - "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 - }, - "ssri": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-6.0.1.tgz", - "integrity": "sha512-3Wge10hNcT1Kur4PDFwEieXSCMCJs/7WvSACcrMYrNp+b8kDL1/0wJch5Ni2WrtwEa2IO8OsVfeKIciKCDx/QA==", - "dev": true, - "requires": { - "figgy-pudding": "^3.5.1" - } - }, - "terser": { - "version": "4.8.0", - "resolved": "https://registry.npmjs.org/terser/-/terser-4.8.0.tgz", - "integrity": "sha512-EAPipTNeWsb/3wLPeup1tVPaXfIaU68xMnVdPafIL1TV05OhASArYyIfFvnvJCNrR2NIOvDVNNTFRa+Re2MWyw==", - "dev": true, - "requires": { - "commander": "^2.20.0", - "source-map": "~0.6.1", - "source-map-support": "~0.5.12" - } - }, - "terser-webpack-plugin": { - "version": "1.4.5", - "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-1.4.5.tgz", - "integrity": "sha512-04Rfe496lN8EYruwi6oPQkG0vo8C+HT49X687FZnpPF0qMAIHONI6HEXYPKDOE8e5HjXTyKfqRd/agHtH0kOtw==", - "dev": true, - "requires": { - "cacache": "^12.0.2", - "find-cache-dir": "^2.1.0", - "is-wsl": "^1.1.0", - "schema-utils": "^1.0.0", - "serialize-javascript": "^4.0.0", - "source-map": "^0.6.1", - "terser": "^4.1.2", - "webpack-sources": "^1.4.0", - "worker-farm": "^1.7.0" - } - }, - "yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", - "dev": true - } - } - }, - "webpack-cli": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-4.5.0.tgz", - "integrity": "sha512-wXg/ef6Ibstl2f50mnkcHblRPN/P9J4Nlod5Hg9HGFgSeF8rsqDGHJeVe4aR26q9l62TUJi6vmvC2Qz96YJw1Q==", - "dev": true, - "requires": { - "@discoveryjs/json-ext": "^0.5.0", - "@webpack-cli/configtest": "^1.0.1", - "@webpack-cli/info": "^1.2.2", - "@webpack-cli/serve": "^1.3.0", - "colorette": "^1.2.1", - "commander": "^7.0.0", - "enquirer": "^2.3.6", - "execa": "^5.0.0", - "fastest-levenshtein": "^1.0.12", - "import-local": "^3.0.2", - "interpret": "^2.2.0", - "rechoir": "^0.7.0", - "v8-compile-cache": "^2.2.0", - "webpack-merge": "^5.7.3" - }, - "dependencies": { - "commander": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-7.0.0.tgz", - "integrity": "sha512-ovx/7NkTrnPuIV8sqk/GjUIIM1+iUQeqA3ye2VNpq9sVoiZsooObWlQy+OPWGI17GDaEoybuAGJm6U8yC077BA==", - "dev": true - }, - "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" - } - }, - "execa": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-5.0.0.tgz", - "integrity": "sha512-ov6w/2LCiuyO4RLYGdpFGjkcs0wMTgGE8PrkTHikeUy5iJekXyPIKUjifk5CsE0pt7sMCrMZ3YNqoCj6idQOnQ==", - "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" - } - }, - "get-stream": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.0.tgz", - "integrity": "sha512-A1B3Bh1UmL0bidM/YX2NsCOTnGJePL9rO/M+Mw3m9f2gUpfokS0hi5Eah0WSUEWZdZhIZtMjkIYS7mDfOqNHbg==", - "dev": true - }, - "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 - }, - "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 - }, - "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 - }, - "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" - } - }, - "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" - } - }, - "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 - }, - "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 - }, - "v8-compile-cache": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.2.0.tgz", - "integrity": "sha512-gTpR5XQNKFwOd4clxfnhaqvfqMpqEwr4tOtCyz4MtYZX2JYhfr1JvBFKdS+7K/9rfpZR3VLX+YWBbKoxCgS43Q==", - "dev": true - }, - "which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - } - } - }, - "webpack-merge": { - "version": "5.7.3", - "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-5.7.3.tgz", - "integrity": "sha512-6/JUQv0ELQ1igjGDzHkXbVDRxkfA57Zw7PfiupdLFJYrgFqY5ZP8xxbpp2lU3EPwYx89ht5Z/aDkD40hFCm5AA==", - "dev": true, - "requires": { - "clone-deep": "^4.0.1", - "wildcard": "^2.0.0" - } - }, - "webpack-sources": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.4.3.tgz", - "integrity": "sha512-lgTS3Xhv1lCOKo7SA5TjKXMjpSM4sBjNV5+q2bqesbSPs5FjGmU6jjtBSkX9b4qW87vDIsCIlUPOEhbZrMdjeQ==", - "dev": true, - "requires": { - "source-list-map": "^2.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 - } - } - }, - "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, - "requires": { - "iconv-lite": "0.4.24" - } - }, - "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 - }, - "whatwg-url": { - "version": "8.4.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-8.4.0.tgz", - "integrity": "sha512-vwTUFf6V4zhcPkWp/4CQPr1TW9Ml6SF4lVyaIMBdJw5i6qUUJ1QWM4Z6YYVkfka0OUIzVo/0aNtGVGk256IKWw==", - "dev": true, - "requires": { - "lodash.sortby": "^4.7.0", - "tr46": "^2.0.2", - "webidl-conversions": "^6.1.0" - } - }, - "which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - }, - "which-module": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", - "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", - "dev": true - }, - "wide-align": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz", - "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==", - "dev": true, - "requires": { - "string-width": "^1.0.2 || 2" - } - }, - "wildcard": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/wildcard/-/wildcard-2.0.0.tgz", - "integrity": "sha512-JcKqAHLPxcdb9KM49dufGXn2x3ssnfjbcaQdLlfZsL9rH9wgDQjUtDxbo8NE0F6SFvydeu1VhZe7hZuHsB2/pw==", - "dev": 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 - }, - "worker-farm": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/worker-farm/-/worker-farm-1.7.0.tgz", - "integrity": "sha512-rvw3QTZc8lAxyVrqcSGVm5yP/IJ2UcB3U0graE3LCFoZ0Yn2x4EoVSqJKdB/T5M+FLcRPjz4TDacRf3OCfNUzw==", - "dev": true, - "requires": { - "errno": "~0.1.7" - } - }, - "wrap-ansi": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", - "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", - "dev": true, - "requires": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", - "dev": true - }, - "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" - } - }, - "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 - }, - "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 - }, - "string-width": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", - "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.0" - } - }, - "strip-ansi": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.0" - } - } - } - }, - "wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" - }, - "write": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/write/-/write-1.0.3.tgz", - "integrity": "sha512-/lg70HAjtkUgWPVZhZcm+T4hkL8Zbtp1nFNOn3lRrxnlv50SRBv7cR7RqR+GMsd3hUXy9hWBo4CHTbFTcOYwig==", - "dev": true, - "requires": { - "mkdirp": "^0.5.1" - }, - "dependencies": { - "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" - } - } - } - }, - "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, - "requires": { - "imurmurhash": "^0.1.4", - "is-typedarray": "^1.0.0", - "signal-exit": "^3.0.2", - "typedarray-to-buffer": "^3.1.5" - } - }, - "ws": { - "version": "7.4.2", - "resolved": "https://registry.npmjs.org/ws/-/ws-7.4.2.tgz", - "integrity": "sha512-T4tewALS3+qsrpGI/8dqNMLIVdq/g/85U98HPMa6F0m6xTbvhXU6RCQLqPH3+SlomNV/LdY6RXEbBpMH6EOJnA==", - "dev": 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 - }, - "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": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", - "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", - "dev": true - }, - "y18n": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.0.tgz", - "integrity": "sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==", - "dev": true - }, - "yallist": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", - "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", - "dev": true - }, - "yaml": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.0.tgz", - "integrity": "sha512-yr2icI4glYaNG+KWONODapy2/jDdMSDnrONSjblABjD9B4Z5LgiircSt8m8sRZFNi08kG9Sm0uSHtEmP3zaEGg==", - "dev": true - }, - "yargs": { - "version": "15.4.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz", - "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==", - "dev": true, - "requires": { - "cliui": "^6.0.0", - "decamelize": "^1.2.0", - "find-up": "^4.1.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^4.2.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^18.1.2" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", - "dev": true - }, - "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 - }, - "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 - }, - "string-width": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", - "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.0" - } - }, - "strip-ansi": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.0" - } - } - } - }, - "yargs-parser": { - "version": "18.1.3", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", - "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", - "dev": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } - }, - "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==" - }, - "zwitch": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/zwitch/-/zwitch-1.0.5.tgz", - "integrity": "sha512-V50KMwwzqJV0NpZIZFwfOD5/lyny3WlSzRiXgA0G7VUnRlqttta1L6UQIHzd6EuBY/cHGfwTIck7w1yH6Q5zUw==", - "dev": true - } - } + "name": "calendar", + "version": "4.6.0-alpha.1", + "lockfileVersion": 2, + "requires": true, + "packages": { + "": { + "name": "calendar", + "version": "4.6.0-alpha.1", + "license": "agpl", + "dependencies": { + "@fullcalendar/core": "6.1.8", + "@fullcalendar/daygrid": "6.1.8", + "@fullcalendar/interaction": "6.1.8", + "@fullcalendar/list": "6.1.8", + "@fullcalendar/multimonth": "6.1.8", + "@fullcalendar/resource": "6.1.8", + "@fullcalendar/resource-timeline": "6.1.8", + "@fullcalendar/timegrid": "6.1.8", + "@fullcalendar/vue": "6.1.8", + "@nextcloud/auth": "^2.1.0", + "@nextcloud/axios": "^2.4.0", + "@nextcloud/calendar-availability-vue": "^1.0.0", + "@nextcloud/calendar-js": "^6.0.1", + "@nextcloud/cdav-library": "^1.1.0", + "@nextcloud/dialogs": "^4.2.0", + "@nextcloud/event-bus": "^3.1.0", + "@nextcloud/initial-state": "^2.1.0", + "@nextcloud/l10n": "^2.2.0", + "@nextcloud/logger": "^2.5.0", + "@nextcloud/moment": "^1.2.1", + "@nextcloud/router": "^2.1.2", + "@nextcloud/vue": "^7.12.4", + "@nextcloud/vue-dashboard": "^2.0.1", + "autosize": "^6.0.1", + "color-convert": "^2.0.1", + "color-string": "^1.9.1", + "core-js": "^3.32.2", + "css-color-names": "^1.0.1", + "debounce": "^1.2.1", + "jstz": "^2.1.1", + "linkifyjs": "^4.1.1", + "lodash": "^4.17.21", + "md5": "^2.3.0", + "p-limit": "^4.0.0", + "v-tooltip": "^2.1.3", + "vue": "^2.7.14", + "vue-click-outside": "^1.1.0", + "vue-material-design-icons": "^5.2.0", + "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.3.0" + }, + "devDependencies": { + "@babel/core": "^7.22.1", + "@babel/preset-env": "^7.22.4", + "@nextcloud/babel-config": "^1.0.0", + "@nextcloud/browserslist-config": "^2.3.0", + "@nextcloud/eslint-config": "^8.2.1", + "@nextcloud/stylelint-config": "^2.3.0", + "@nextcloud/webpack-vue-config": "^5.5.1", + "@vue/test-utils": "^1.3.5", + "@vue/vue2-jest": "^29.2.4", + "babel-jest": "^29.5.0", + "babel-loader-exclude-node-modules-except": "^1.2.1", + "ical.js": "^1.5.0", + "jest": "^29.5.0", + "jest-environment-jsdom": "^29.5.0", + "jest-serializer-vue": "^3.1.0", + "resolve-url-loader": "^5.0.0", + "vue-template-compiler": "^2.7.14" + }, + "engines": { + "node": "^16.0.0", + "npm": "^7.0.0 || ^8.0.0" + }, + "optionalDependencies": { + "fsevents": "^2.3.3" + } + }, + "node_modules/@ampproject/remapping": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz", + "integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==", + "dev": true, + "dependencies": { + "@jridgewell/gen-mapping": "^0.1.0", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/code-frame": { + "version": "7.21.4", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.21.4.tgz", + "integrity": "sha512-LYvhNKfwWSPpocw8GI7gpK2nq3HSDuEPC/uSYaALSJu9xjsalaaYFOq0Pwt5KmVqwEbZlDu81aLXwBOmD/Fv9g==", + "dev": true, + "dependencies": { + "@babel/highlight": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/compat-data": { + "version": "7.22.3", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.22.3.tgz", + "integrity": "sha512-aNtko9OPOwVESUFp3MZfD8Uzxl7JzSeJpd7npIoxCasU37PFbAQRpKglkaKwlHOyeJdrREpo8TW8ldrkYWwvIQ==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/core": { + "version": "7.22.1", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.22.1.tgz", + "integrity": "sha512-Hkqu7J4ynysSXxmAahpN1jjRwVJ+NdpraFLIWflgjpVob3KNyK3/tIUc7Q7szed8WMp0JNa7Qtd1E9Oo22F9gA==", + "dev": true, + "dependencies": { + "@ampproject/remapping": "^2.2.0", + "@babel/code-frame": "^7.21.4", + "@babel/generator": "^7.22.0", + "@babel/helper-compilation-targets": "^7.22.1", + "@babel/helper-module-transforms": "^7.22.1", + "@babel/helpers": "^7.22.0", + "@babel/parser": "^7.22.0", + "@babel/template": "^7.21.9", + "@babel/traverse": "^7.22.1", + "@babel/types": "^7.22.0", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.2", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@babel/eslint-parser": { + "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": { + "@nicolo-ribaudo/eslint-scope-5-internals": "5.1.1-v1", + "eslint-visitor-keys": "^2.1.0", + "semver": "^6.3.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || >=14.0.0" + }, + "peerDependencies": { + "@babel/core": ">=7.11.0", + "eslint": "^7.5.0 || ^8.0.0" + } + }, + "node_modules/@babel/generator": { + "version": "7.22.3", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.22.3.tgz", + "integrity": "sha512-C17MW4wlk//ES/CJDL51kPNwl+qiBQyN7b9SKyVp11BLGFeSPoVaHrv+MNt8jwQFhQWowW88z1eeBx3pFz9v8A==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.3", + "@jridgewell/gen-mapping": "^0.3.2", + "@jridgewell/trace-mapping": "^0.3.17", + "jsesc": "^2.5.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/generator/node_modules/@jridgewell/gen-mapping": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", + "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", + "dev": true, + "dependencies": { + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/helper-annotate-as-pure": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.18.6.tgz", + "integrity": "sha512-duORpUiYrEpzKIop6iNbjnwKLAKnJ47csTyRACyEmWj0QdUrm5aqNJGHSSEQSUAvNW0ojX0dOmK9dZduvkfeXA==", + "dev": true, + "dependencies": { + "@babel/types": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-builder-binary-assignment-operator-visitor": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.18.9.tgz", + "integrity": "sha512-yFQ0YCHoIqarl8BCRwBL8ulYUaZpz3bNsA7oFepAzee+8/+ImtADXNOmO5vJvsPff3qi+hvpkY/NYBTrBQgdNw==", + "dev": true, + "dependencies": { + "@babel/helper-explode-assignable-expression": "^7.18.6", + "@babel/types": "^7.18.9" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets": { + "version": "7.22.1", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.1.tgz", + "integrity": "sha512-Rqx13UM3yVB5q0D/KwQ8+SPfX/+Rnsy1Lw1k/UwOC4KC6qrzIQoY3lYnBu5EHKBlEHHcj0M0W8ltPSkD8rqfsQ==", + "dev": true, + "dependencies": { + "@babel/compat-data": "^7.22.0", + "@babel/helper-validator-option": "^7.21.0", + "browserslist": "^4.21.3", + "lru-cache": "^5.1.1", + "semver": "^6.3.0" + }, + "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.22.1", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.22.1.tgz", + "integrity": "sha512-SowrZ9BWzYFgzUMwUmowbPSGu6CXL5MSuuCkG3bejahSpSymioPmuLdhPxNOc9MjuNGjy7M/HaXvJ8G82Lywlw==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-environment-visitor": "^7.22.1", + "@babel/helper-function-name": "^7.21.0", + "@babel/helper-member-expression-to-functions": "^7.22.0", + "@babel/helper-optimise-call-expression": "^7.18.6", + "@babel/helper-replace-supers": "^7.22.1", + "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0", + "@babel/helper-split-export-declaration": "^7.18.6", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-create-regexp-features-plugin": { + "version": "7.22.1", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.22.1.tgz", + "integrity": "sha512-WWjdnfR3LPIe+0EY8td7WmjhytxXtjKAEpnAxun/hkNiyOaPlvGK+NZaBFIdi9ndYV3Gav7BpFvtUwnaJlwi1w==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "regexpu-core": "^5.3.1", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-define-polyfill-provider": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.4.0.tgz", + "integrity": "sha512-RnanLx5ETe6aybRi1cO/edaRH+bNYWaryCEmjDDYyNr4wnSzyOp8T0dWipmqVHKEY3AbVKUom50AKSlj1zmKbg==", + "dev": true, + "dependencies": { + "@babel/helper-compilation-targets": "^7.17.7", + "@babel/helper-plugin-utils": "^7.16.7", + "debug": "^4.1.1", + "lodash.debounce": "^4.0.8", + "resolve": "^1.14.2", + "semver": "^6.1.2" + }, + "peerDependencies": { + "@babel/core": "^7.4.0-0" + } + }, + "node_modules/@babel/helper-environment-visitor": { + "version": "7.22.1", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.1.tgz", + "integrity": "sha512-Z2tgopurB/kTbidvzeBrc2To3PUP/9i5MUe+fU6QJCQDyPwSH2oRapkLw3KGECDYSjhQZCNxEvNvZlLw8JjGwA==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-explode-assignable-expression": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.18.6.tgz", + "integrity": "sha512-eyAYAsQmB80jNfg4baAtLeWAQHfHFiR483rzFK+BhETlGZaQC9bsfrugfXDCbRHLQbIA7U5NxhhOxN7p/dWIcg==", + "dev": true, + "dependencies": { + "@babel/types": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-function-name": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.21.0.tgz", + "integrity": "sha512-HfK1aMRanKHpxemaY2gqBmL04iAPOPRj7DxtNbiDOrJK+gdwkiNRVpCpUJYbUT+aZyemKN8brqTOxzCaG6ExRg==", + "dev": true, + "dependencies": { + "@babel/template": "^7.20.7", + "@babel/types": "^7.21.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-hoist-variables": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz", + "integrity": "sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==", + "dev": true, + "dependencies": { + "@babel/types": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-member-expression-to-functions": { + "version": "7.22.3", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.22.3.tgz", + "integrity": "sha512-Gl7sK04b/2WOb6OPVeNy9eFKeD3L6++CzL3ykPOWqTn08xgYYK0wz4TUh2feIImDXxcVW3/9WQ1NMKY66/jfZA==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.3" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.21.4", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.21.4.tgz", + "integrity": "sha512-orajc5T2PsRYUN3ZryCEFeMDYwyw09c/pZeaQEZPH0MpKzSvn3e0uXsDBu3k03VI+9DBiRo+l22BfKTpKwa/Wg==", + "dev": true, + "dependencies": { + "@babel/types": "^7.21.4" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-transforms": { + "version": "7.22.1", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.22.1.tgz", + "integrity": "sha512-dxAe9E7ySDGbQdCVOY/4+UcD8M9ZFqZcZhSPsPacvCG4M+9lwtDDQfI2EoaSvmf7W/8yCBkGU0m7Pvt1ru3UZw==", + "dev": true, + "dependencies": { + "@babel/helper-environment-visitor": "^7.22.1", + "@babel/helper-module-imports": "^7.21.4", + "@babel/helper-simple-access": "^7.21.5", + "@babel/helper-split-export-declaration": "^7.18.6", + "@babel/helper-validator-identifier": "^7.19.1", + "@babel/template": "^7.21.9", + "@babel/traverse": "^7.22.1", + "@babel/types": "^7.22.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-optimise-call-expression": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.18.6.tgz", + "integrity": "sha512-HP59oD9/fEHQkdcbgFCnbmgH5vIQTJbxh2yf+CdM89/glUNnuzr87Q8GIjGEnOktTROemO0Pe0iPAYbqZuOUiA==", + "dev": true, + "dependencies": { + "@babel/types": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-plugin-utils": { + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.21.5.tgz", + "integrity": "sha512-0WDaIlXKOX/3KfBK/dwP1oQGiPh6rjMkT7HIRv7i5RR2VUMwrx5ZL0dwBkKx7+SW1zwNdgjHd34IMk5ZjTeHVg==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-remap-async-to-generator": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.18.9.tgz", + "integrity": "sha512-dI7q50YKd8BAv3VEfgg7PS7yD3Rtbi2J1XMXaalXO0W0164hYLnh8zpjRS0mte9MfVp/tltvr/cfdXPvJr1opA==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-wrap-function": "^7.18.9", + "@babel/types": "^7.18.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-replace-supers": { + "version": "7.22.1", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.22.1.tgz", + "integrity": "sha512-ut4qrkE4AuSfrwHSps51ekR1ZY/ygrP1tp0WFm8oVq6nzc/hvfV/22JylndIbsf2U2M9LOMwiSddr6y+78j+OQ==", + "dev": true, + "dependencies": { + "@babel/helper-environment-visitor": "^7.22.1", + "@babel/helper-member-expression-to-functions": "^7.22.0", + "@babel/helper-optimise-call-expression": "^7.18.6", + "@babel/template": "^7.21.9", + "@babel/traverse": "^7.22.1", + "@babel/types": "^7.22.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-simple-access": { + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.21.5.tgz", + "integrity": "sha512-ENPDAMC1wAjR0uaCUwliBdiSl1KBJAVnMTzXqi64c2MG8MPR6ii4qf7bSXDqSFbr4W6W028/rf5ivoHop5/mkg==", + "dev": true, + "dependencies": { + "@babel/types": "^7.21.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-skip-transparent-expression-wrappers": { + "version": "7.20.0", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.20.0.tgz", + "integrity": "sha512-5y1JYeNKfvnT8sZcK9DVRtpTbGiomYIHviSP3OQWmDPU3DeH4a1ZlT/N2lyQ5P8egjcRaT/Y9aNqUxK0WsnIIg==", + "dev": true, + "dependencies": { + "@babel/types": "^7.20.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-split-export-declaration": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz", + "integrity": "sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==", + "dev": true, + "dependencies": { + "@babel/types": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.21.5.tgz", + "integrity": "sha512-5pTUx3hAJaZIdW99sJ6ZUUgWq/Y+Hja7TowEnLNMm1VivRgZQL3vpBY3qUACVsvw+yQU6+YgfBVmcbLaZtrA1w==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.19.1", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz", + "integrity": "sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-option": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.21.0.tgz", + "integrity": "sha512-rmL/B8/f0mKS2baE9ZpyTcTavvEuWhTTW8amjzXNvYG4AwBsqTLikfXsEofsJEfKHf+HQVQbFOHy6o+4cnC/fQ==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-wrap-function": { + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.20.5.tgz", + "integrity": "sha512-bYMxIWK5mh+TgXGVqAtnu5Yn1un+v8DDZtqyzKRLUzrh70Eal2O3aZ7aPYiMADO4uKlkzOiRiZ6GX5q3qxvW9Q==", + "dev": true, + "dependencies": { + "@babel/helper-function-name": "^7.19.0", + "@babel/template": "^7.18.10", + "@babel/traverse": "^7.20.5", + "@babel/types": "^7.20.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers": { + "version": "7.22.3", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.22.3.tgz", + "integrity": "sha512-jBJ7jWblbgr7r6wYZHMdIqKc73ycaTcCaWRq4/2LpuPHcx7xMlZvpGQkOYc9HeSjn6rcx15CPlgVcBtZ4WZJ2w==", + "dev": true, + "dependencies": { + "@babel/template": "^7.21.9", + "@babel/traverse": "^7.22.1", + "@babel/types": "^7.22.3" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/highlight": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz", + "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==", + "dev": true, + "dependencies": { + "@babel/helper-validator-identifier": "^7.18.6", + "chalk": "^2.0.0", + "js-tokens": "^4.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/parser": { + "version": "7.22.4", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.22.4.tgz", + "integrity": "sha512-VLLsx06XkEYqBtE5YGPwfSGwfrjnyPP5oiGty3S8pQLFDFLaS8VwWSIxkTXpcvr5zeYLE6+MBNl2npl/YnfofA==", + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { + "version": "7.18.6", + "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.18.6.tgz", + "integrity": "sha512-Dgxsyg54Fx1d4Nge8UnvTrED63vrwOdPmyvPzlNN/boaliRP54pm3pGzZD1SJUwrBA+Cs/xdG8kXX6Mn/RfISQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { + "version": "7.22.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.22.3.tgz", + "integrity": "sha512-6r4yRwEnorYByILoDRnEqxtojYKuiIv9FojW2E8GUKo9eWBwbKcd9IiZOZpdyXc64RmyGGyPu3/uAcrz/dq2kQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.21.5", + "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0", + "@babel/plugin-transform-optional-chaining": "^7.22.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.13.0" + } + }, + "node_modules/@babel/plugin-proposal-class-properties": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.18.6.tgz", + "integrity": "sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-private-property-in-object": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0.tgz", + "integrity": "sha512-ha4zfehbJjc5MmXBlHec1igel5TJXXLDDRbuJ4+XT2TJcyD9/V1919BA8gMvsdHcNMBy4WBUBiRb3nw/EQUtBw==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-create-class-features-plugin": "^7.21.0", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-unicode-property-regex": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.18.6.tgz", + "integrity": "sha512-2BShG/d5yoZyXZfVePH91urL5wTG6ASZU9M4o03lKK8u8UW1y08OMttBSOADTcJrnPMpvDXRG3G8fyLh4ovs8w==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=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==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@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==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "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==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.12.13" + }, + "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==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "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, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@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==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.3" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-assertions": { + "version": "7.20.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.20.0.tgz", + "integrity": "sha512-IUh1vakzNoWalR8ch/areW7qFopR2AEw03JlG7BbrDqmQ4X3q9uuipQwSGrUn7oGiemKjtSLDhNtQHzMHr1JdQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.19.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-attributes": { + "version": "7.22.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.22.3.tgz", + "integrity": "sha512-i35jZJv6aO7hxEbIWQ41adVfOzjm9dcYDNeWlBMd8p0ZQRtNUCBrmGwZt+H5lb+oOC9a3svp956KP0oWGA1YsA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.21.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "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" + }, + "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==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-jsx": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.18.6.tgz", + "integrity": "sha512-6mmljtAedFGTWu2p/8WIORGwy+61PLgOMPOdazc7YoJ9ZCWUyFy3A6CpPkRKLKD1ToAesxX8KGEViAiLo9N+7Q==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6" + }, + "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==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.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==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.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==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "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==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.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==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.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==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.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==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@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==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-typescript": { + "version": "7.20.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.20.0.tgz", + "integrity": "sha512-rd9TkG+u1CExzS4SM1BlMEhMXwFLKVjOAFFCDx9PbX5ycJWDoWMcwdJH9RhkPu1dOgn5TrxLot/Gx6lWFuAUNQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.19.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "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-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" + } + }, + "node_modules/@babel/plugin-transform-arrow-functions": { + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.21.5.tgz", + "integrity": "sha512-wb1mhwGOCaXHDTcsRYMKF9e5bbMgqwxtqa2Y1ifH96dXJPwbuLX9qHy3clhrxVqgMz7nyNXs8VkxdH8UBcjKqA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.21.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-async-generator-functions": { + "version": "7.22.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.22.3.tgz", + "integrity": "sha512-36A4Aq48t66btydbZd5Fk0/xJqbpg/v4QWI4AH4cYHBXy9Mu42UOupZpebKFiCFNT9S9rJFcsld0gsv0ayLjtA==", + "dev": true, + "dependencies": { + "@babel/helper-environment-visitor": "^7.22.1", + "@babel/helper-plugin-utils": "^7.21.5", + "@babel/helper-remap-async-to-generator": "^7.18.9", + "@babel/plugin-syntax-async-generators": "^7.8.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-async-to-generator": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.20.7.tgz", + "integrity": "sha512-Uo5gwHPT9vgnSXQxqGtpdufUiWp96gk7yiP4Mp5bm1QMkEmLXBO7PAGYbKoJ6DhAwiNkcHFBol/x5zZZkL/t0Q==", + "dev": true, + "dependencies": { + "@babel/helper-module-imports": "^7.18.6", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-remap-async-to-generator": "^7.18.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-block-scoped-functions": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.18.6.tgz", + "integrity": "sha512-ExUcOqpPWnliRcPqves5HJcJOvHvIIWfuS4sroBUenPuMdmW+SMHDakmtS7qOo13sVppmUijqeTv7qqGsvURpQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-block-scoping": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.21.0.tgz", + "integrity": "sha512-Mdrbunoh9SxwFZapeHVrwFmri16+oYotcZysSzhNIVDwIAb1UV+kvnxULSYq9J3/q5MDG+4X6w8QVgD1zhBXNQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.20.2" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-class-properties": { + "version": "7.22.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.22.3.tgz", + "integrity": "sha512-mASLsd6rhOrLZ5F3WbCxkzl67mmOnqik0zrg5W6D/X0QMW7HtvnoL1dRARLKIbMP3vXwkwziuLesPqWVGIl6Bw==", + "dev": true, + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.22.1", + "@babel/helper-plugin-utils": "^7.21.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-class-static-block": { + "version": "7.22.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.22.3.tgz", + "integrity": "sha512-5BirgNWNOx7cwbTJCOmKFJ1pZjwk5MUfMIwiBBvsirCJMZeQgs5pk6i1OlkVg+1Vef5LfBahFOrdCnAWvkVKMw==", + "dev": true, + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.22.1", + "@babel/helper-plugin-utils": "^7.21.5", + "@babel/plugin-syntax-class-static-block": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.12.0" + } + }, + "node_modules/@babel/plugin-transform-classes": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.21.0.tgz", + "integrity": "sha512-RZhbYTCEUAe6ntPehC4hlslPWosNHDox+vAs4On/mCLRLfoDVHf6hVEd7kuxr1RnHwJmxFfUM3cZiZRmPxJPXQ==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-compilation-targets": "^7.20.7", + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-function-name": "^7.21.0", + "@babel/helper-optimise-call-expression": "^7.18.6", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-replace-supers": "^7.20.7", + "@babel/helper-split-export-declaration": "^7.18.6", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-computed-properties": { + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.21.5.tgz", + "integrity": "sha512-TR653Ki3pAwxBxUe8srfF3e4Pe3FTA46uaNHYyQwIoM4oWKSoOZiDNyHJ0oIoDIUPSRQbQG7jzgVBX3FPVne1Q==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.21.5", + "@babel/template": "^7.20.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-destructuring": { + "version": "7.21.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.21.3.tgz", + "integrity": "sha512-bp6hwMFzuiE4HqYEyoGJ/V2LeIWn+hLVKc4pnj++E5XQptwhtcGmSayM029d/j2X1bPKGTlsyPwAubuU22KhMA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.20.2" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-dotall-regex": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.18.6.tgz", + "integrity": "sha512-6S3jpun1eEbAxq7TdjLotAsl4WpQI9DxfkycRcKrjhQYzU87qpXdknpBg/e+TdcMehqGnLFi7tnFUBR02Vq6wg==", + "dev": true, + "dependencies": { + "@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" + } + }, + "node_modules/@babel/plugin-transform-duplicate-keys": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.18.9.tgz", + "integrity": "sha512-d2bmXCtZXYc59/0SanQKbiWINadaJXqtvIQIzd4+hNwkWBgyCd5F/2t1kXoUdvPMrxzPvhK6EMQRROxsue+mfw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-dynamic-import": { + "version": "7.22.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.22.1.tgz", + "integrity": "sha512-rlhWtONnVBPdmt+jeewS0qSnMz/3yLFrqAP8hHC6EDcrYRSyuz9f9yQhHvVn2Ad6+yO9fHXac5piudeYrInxwQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.21.5", + "@babel/plugin-syntax-dynamic-import": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-exponentiation-operator": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.18.6.tgz", + "integrity": "sha512-wzEtc0+2c88FVR34aQmiz56dxEkxr2g8DQb/KfaFa1JYXOFVsbhvAonFN6PwVWj++fKmku8NP80plJ5Et4wqHw==", + "dev": true, + "dependencies": { + "@babel/helper-builder-binary-assignment-operator-visitor": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-export-namespace-from": { + "version": "7.22.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.22.3.tgz", + "integrity": "sha512-5Ti1cHLTDnt3vX61P9KZ5IG09bFXp4cDVFJIAeCZuxu9OXXJJZp5iP0n/rzM2+iAutJY+KWEyyHcRaHlpQ/P5g==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.21.5", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-for-of": { + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.21.5.tgz", + "integrity": "sha512-nYWpjKW/7j/I/mZkGVgHJXh4bA1sfdFnJoOXwJuj4m3Q2EraO/8ZyrkCau9P5tbHQk01RMSt6KYLCsW7730SXQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.21.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-function-name": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.18.9.tgz", + "integrity": "sha512-WvIBoRPaJQ5yVHzcnJFor7oS5Ls0PYixlTYE63lCj2RtdQEl15M68FXQlxnG6wdraJIXRdR7KI+hQ7q/9QjrCQ==", + "dev": true, + "dependencies": { + "@babel/helper-compilation-targets": "^7.18.9", + "@babel/helper-function-name": "^7.18.9", + "@babel/helper-plugin-utils": "^7.18.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-json-strings": { + "version": "7.22.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.22.3.tgz", + "integrity": "sha512-IuvOMdeOOY2X4hRNAT6kwbePtK21BUyrAEgLKviL8pL6AEEVUVcqtRdN/HJXBLGIbt9T3ETmXRnFedRRmQNTYw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.21.5", + "@babel/plugin-syntax-json-strings": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-literals": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.18.9.tgz", + "integrity": "sha512-IFQDSRoTPnrAIrI5zoZv73IFeZu2dhu6irxQjY9rNjTT53VmKg9fenjvoiOWOkJ6mm4jKVPtdMzBY98Fp4Z4cg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-logical-assignment-operators": { + "version": "7.22.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.22.3.tgz", + "integrity": "sha512-CbayIfOw4av2v/HYZEsH+Klks3NC2/MFIR3QR8gnpGNNPEaq2fdlVCRYG/paKs7/5hvBLQ+H70pGWOHtlNEWNA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.21.5", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-member-expression-literals": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.18.6.tgz", + "integrity": "sha512-qSF1ihLGO3q+/g48k85tUjD033C29TNTVB2paCwZPVmOsjn9pClvYYrM2VeJpBY2bcNkuny0YUyTNRyRxJ54KA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-amd": { + "version": "7.20.11", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.20.11.tgz", + "integrity": "sha512-NuzCt5IIYOW0O30UvqktzHYR2ud5bOWbY0yaxWZ6G+aFzOMJvrs5YHNikrbdaT15+KNO31nPOy5Fim3ku6Zb5g==", + "dev": true, + "dependencies": { + "@babel/helper-module-transforms": "^7.20.11", + "@babel/helper-plugin-utils": "^7.20.2" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-commonjs": { + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.21.5.tgz", + "integrity": "sha512-OVryBEgKUbtqMoB7eG2rs6UFexJi6Zj6FDXx+esBLPTCxCNxAY9o+8Di7IsUGJ+AVhp5ncK0fxWUBd0/1gPhrQ==", + "dev": true, + "dependencies": { + "@babel/helper-module-transforms": "^7.21.5", + "@babel/helper-plugin-utils": "^7.21.5", + "@babel/helper-simple-access": "^7.21.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-systemjs": { + "version": "7.22.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.22.3.tgz", + "integrity": "sha512-V21W3bKLxO3ZjcBJZ8biSvo5gQ85uIXW2vJfh7JSWf/4SLUSr1tOoHX3ruN4+Oqa2m+BKfsxTR1I+PsvkIWvNw==", + "dev": true, + "dependencies": { + "@babel/helper-hoist-variables": "^7.18.6", + "@babel/helper-module-transforms": "^7.22.1", + "@babel/helper-plugin-utils": "^7.21.5", + "@babel/helper-validator-identifier": "^7.19.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-umd": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.18.6.tgz", + "integrity": "sha512-dcegErExVeXcRqNtkRU/z8WlBLnvD4MRnHgNs3MytRO1Mn1sHRyhbcpYbVMGclAqOjdW+9cfkdZno9dFdfKLfQ==", + "dev": true, + "dependencies": { + "@babel/helper-module-transforms": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-named-capturing-groups-regex": { + "version": "7.22.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.22.3.tgz", + "integrity": "sha512-c6HrD/LpUdNNJsISQZpds3TXvfYIAbo+efE9aWmY/PmSRD0agrJ9cPMt4BmArwUQ7ZymEWTFjTyp+yReLJZh0Q==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.22.1", + "@babel/helper-plugin-utils": "^7.21.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-transform-new-target": { + "version": "7.22.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.22.3.tgz", + "integrity": "sha512-5RuJdSo89wKdkRTqtM9RVVJzHum9c2s0te9rB7vZC1zKKxcioWIy+xcu4OoIAjyFZhb/bp5KkunuLin1q7Ct+w==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.21.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-nullish-coalescing-operator": { + "version": "7.22.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.22.3.tgz", + "integrity": "sha512-CpaoNp16nX7ROtLONNuCyenYdY/l7ZsR6aoVa7rW7nMWisoNoQNIH5Iay/4LDyRjKMuElMqXiBoOQCDLTMGZiw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.21.5", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-numeric-separator": { + "version": "7.22.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.22.3.tgz", + "integrity": "sha512-+AF88fPDJrnseMh5vD9+SH6wq4ZMvpiTMHh58uLs+giMEyASFVhcT3NkoyO+NebFCNnpHJEq5AXO2txV4AGPDQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.21.5", + "@babel/plugin-syntax-numeric-separator": "^7.10.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-object-rest-spread": { + "version": "7.22.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.22.3.tgz", + "integrity": "sha512-38bzTsqMMCI46/TQnJwPPpy33EjLCc1Gsm2hRTF6zTMWnKsN61vdrpuzIEGQyKEhDSYDKyZHrrd5FMj4gcUHhw==", + "dev": true, + "dependencies": { + "@babel/compat-data": "^7.22.3", + "@babel/helper-compilation-targets": "^7.22.1", + "@babel/helper-plugin-utils": "^7.21.5", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-transform-parameters": "^7.22.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-object-super": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.18.6.tgz", + "integrity": "sha512-uvGz6zk+pZoS1aTZrOvrbj6Pp/kK2mp45t2B+bTDre2UgsZZ8EZLSJtUg7m/no0zOJUWgFONpB7Zv9W2tSaFlA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/helper-replace-supers": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-optional-catch-binding": { + "version": "7.22.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.22.3.tgz", + "integrity": "sha512-bnDFWXFzWY0BsOyqaoSXvMQ2F35zutQipugog/rqotL2S4ciFOKlRYUu9djt4iq09oh2/34hqfRR2k1dIvuu4g==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.21.5", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-optional-chaining": { + "version": "7.22.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.22.3.tgz", + "integrity": "sha512-63v3/UFFxhPKT8j8u1jTTGVyITxl7/7AfOqK8C5gz1rHURPUGe3y5mvIf68eYKGoBNahtJnTxBKug4BQOnzeJg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.21.5", + "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0", + "@babel/plugin-syntax-optional-chaining": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-parameters": { + "version": "7.22.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.22.3.tgz", + "integrity": "sha512-x7QHQJHPuD9VmfpzboyGJ5aHEr9r7DsAsdxdhJiTB3J3j8dyl+NFZ+rX5Q2RWFDCs61c06qBfS4ys2QYn8UkMw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.21.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-private-methods": { + "version": "7.22.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.22.3.tgz", + "integrity": "sha512-fC7jtjBPFqhqpPAE+O4LKwnLq7gGkD3ZmC2E3i4qWH34mH3gOg2Xrq5YMHUq6DM30xhqM1DNftiRaSqVjEG+ug==", + "dev": true, + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.22.1", + "@babel/helper-plugin-utils": "^7.21.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-private-property-in-object": { + "version": "7.22.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.22.3.tgz", + "integrity": "sha512-C7MMl4qWLpgVCbXfj3UW8rR1xeCnisQ0cU7YJHV//8oNBS0aCIVg1vFnZXxOckHhEpQyqNNkWmvSEWnMLlc+Vw==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-create-class-features-plugin": "^7.22.1", + "@babel/helper-plugin-utils": "^7.21.5", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-property-literals": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.18.6.tgz", + "integrity": "sha512-cYcs6qlgafTud3PAzrrRNbQtfpQ8+y/+M5tKmksS9+M1ckbH6kzY8MrexEM9mcA6JDsukE19iIRvAyYl463sMg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-regenerator": { + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.21.5.tgz", + "integrity": "sha512-ZoYBKDb6LyMi5yCsByQ5jmXsHAQDDYeexT1Szvlmui+lADvfSecr5Dxd/PkrTC3pAD182Fcju1VQkB4oCp9M+w==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.21.5", + "regenerator-transform": "^0.15.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-reserved-words": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.18.6.tgz", + "integrity": "sha512-oX/4MyMoypzHjFrT1CdivfKZ+XvIPMFXwwxHp/r0Ddy2Vuomt4HDFGmft1TAY2yiTKiNSsh3kjBAzcM8kSdsjA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-shorthand-properties": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.18.6.tgz", + "integrity": "sha512-eCLXXJqv8okzg86ywZJbRn19YJHU4XUa55oz2wbHhaQVn/MM+XhukiT7SYqp/7o00dg52Rj51Ny+Ecw4oyoygw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-spread": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.20.7.tgz", + "integrity": "sha512-ewBbHQ+1U/VnH1fxltbJqDeWBU1oNLG8Dj11uIv3xVf7nrQu0bPGe5Rf716r7K5Qz+SqtAOVswoVunoiBtGhxw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-sticky-regex": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.18.6.tgz", + "integrity": "sha512-kfiDrDQ+PBsQDO85yj1icueWMfGfJFKN1KCkndygtu/C9+XUfydLC8Iv5UYJqRwy4zk8EcplRxEOeLyjq1gm6Q==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-template-literals": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.18.9.tgz", + "integrity": "sha512-S8cOWfT82gTezpYOiVaGHrCbhlHgKhQt8XH5ES46P2XWmX92yisoZywf5km75wv5sYcXDUCLMmMxOLCtthDgMA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-typeof-symbol": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.18.9.tgz", + "integrity": "sha512-SRfwTtF11G2aemAZWivL7PD+C9z52v9EvMqH9BuYbabyPuKUvSWks3oCg6041pT925L4zVFqaVBeECwsmlguEw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-escapes": { + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.21.5.tgz", + "integrity": "sha512-LYm/gTOwZqsYohlvFUe/8Tujz75LqqVC2w+2qPHLR+WyWHGCZPN1KBpJCJn+4Bk4gOkQy/IXKIge6az5MqwlOg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.21.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-property-regex": { + "version": "7.22.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.22.3.tgz", + "integrity": "sha512-5ScJ+OmdX+O6HRuMGW4kv7RL9vIKdtdAj9wuWUKy1wbHY3jaM/UlyIiC1G7J6UJiiyMukjjK0QwL3P0vBd0yYg==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.22.1", + "@babel/helper-plugin-utils": "^7.21.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-regex": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.18.6.tgz", + "integrity": "sha512-gE7A6Lt7YLnNOL3Pb9BNeZvi+d8l7tcRrG4+pwJjK9hD2xX4mEvjlQW60G9EEmfXVYRPv9VRQcyegIVHCql/AA==", + "dev": true, + "dependencies": { + "@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" + } + }, + "node_modules/@babel/plugin-transform-unicode-sets-regex": { + "version": "7.22.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.22.3.tgz", + "integrity": "sha512-hNufLdkF8vqywRp+P55j4FHXqAX2LRUccoZHH7AFn1pq5ZOO2ISKW9w13bFZVjBoTqeve2HOgoJCcaziJVhGNw==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.22.1", + "@babel/helper-plugin-utils": "^7.21.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.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.", + "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.23.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. Some versions have web compatibility issues. 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.22.4", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.22.4.tgz", + "integrity": "sha512-c3lHOjbwBv0TkhYCr+XCR6wKcSZ1QbQTVdSkZUaVpLv8CVWotBMArWUi5UAJrcrQaEnleVkkvaV8F/pmc/STZQ==", + "dev": true, + "dependencies": { + "@babel/compat-data": "^7.22.3", + "@babel/helper-compilation-targets": "^7.22.1", + "@babel/helper-plugin-utils": "^7.21.5", + "@babel/helper-validator-option": "^7.21.0", + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.18.6", + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.22.3", + "@babel/plugin-proposal-private-property-in-object": "^7.21.0", + "@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-import-assertions": "^7.20.0", + "@babel/plugin-syntax-import-attributes": "^7.22.3", + "@babel/plugin-syntax-import-meta": "^7.10.4", + "@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-syntax-unicode-sets-regex": "^7.18.6", + "@babel/plugin-transform-arrow-functions": "^7.21.5", + "@babel/plugin-transform-async-generator-functions": "^7.22.3", + "@babel/plugin-transform-async-to-generator": "^7.20.7", + "@babel/plugin-transform-block-scoped-functions": "^7.18.6", + "@babel/plugin-transform-block-scoping": "^7.21.0", + "@babel/plugin-transform-class-properties": "^7.22.3", + "@babel/plugin-transform-class-static-block": "^7.22.3", + "@babel/plugin-transform-classes": "^7.21.0", + "@babel/plugin-transform-computed-properties": "^7.21.5", + "@babel/plugin-transform-destructuring": "^7.21.3", + "@babel/plugin-transform-dotall-regex": "^7.18.6", + "@babel/plugin-transform-duplicate-keys": "^7.18.9", + "@babel/plugin-transform-dynamic-import": "^7.22.1", + "@babel/plugin-transform-exponentiation-operator": "^7.18.6", + "@babel/plugin-transform-export-namespace-from": "^7.22.3", + "@babel/plugin-transform-for-of": "^7.21.5", + "@babel/plugin-transform-function-name": "^7.18.9", + "@babel/plugin-transform-json-strings": "^7.22.3", + "@babel/plugin-transform-literals": "^7.18.9", + "@babel/plugin-transform-logical-assignment-operators": "^7.22.3", + "@babel/plugin-transform-member-expression-literals": "^7.18.6", + "@babel/plugin-transform-modules-amd": "^7.20.11", + "@babel/plugin-transform-modules-commonjs": "^7.21.5", + "@babel/plugin-transform-modules-systemjs": "^7.22.3", + "@babel/plugin-transform-modules-umd": "^7.18.6", + "@babel/plugin-transform-named-capturing-groups-regex": "^7.22.3", + "@babel/plugin-transform-new-target": "^7.22.3", + "@babel/plugin-transform-nullish-coalescing-operator": "^7.22.3", + "@babel/plugin-transform-numeric-separator": "^7.22.3", + "@babel/plugin-transform-object-rest-spread": "^7.22.3", + "@babel/plugin-transform-object-super": "^7.18.6", + "@babel/plugin-transform-optional-catch-binding": "^7.22.3", + "@babel/plugin-transform-optional-chaining": "^7.22.3", + "@babel/plugin-transform-parameters": "^7.22.3", + "@babel/plugin-transform-private-methods": "^7.22.3", + "@babel/plugin-transform-private-property-in-object": "^7.22.3", + "@babel/plugin-transform-property-literals": "^7.18.6", + "@babel/plugin-transform-regenerator": "^7.21.5", + "@babel/plugin-transform-reserved-words": "^7.18.6", + "@babel/plugin-transform-shorthand-properties": "^7.18.6", + "@babel/plugin-transform-spread": "^7.20.7", + "@babel/plugin-transform-sticky-regex": "^7.18.6", + "@babel/plugin-transform-template-literals": "^7.18.9", + "@babel/plugin-transform-typeof-symbol": "^7.18.9", + "@babel/plugin-transform-unicode-escapes": "^7.21.5", + "@babel/plugin-transform-unicode-property-regex": "^7.22.3", + "@babel/plugin-transform-unicode-regex": "^7.18.6", + "@babel/plugin-transform-unicode-sets-regex": "^7.22.3", + "@babel/preset-modules": "^0.1.5", + "@babel/types": "^7.22.4", + "babel-plugin-polyfill-corejs2": "^0.4.3", + "babel-plugin-polyfill-corejs3": "^0.8.1", + "babel-plugin-polyfill-regenerator": "^0.5.0", + "core-js-compat": "^3.30.2", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/preset-modules": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.5.tgz", + "integrity": "sha512-A57th6YRG7oR3cq/yt/Y84MvGgE0eJG2F1JLhKuyG+jFxEgrd/HAMJatiFtmOiZurz+0DkrvbheCLaV5f2JfjA==", + "dev": true, + "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" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/regjsgen": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/@babel/regjsgen/-/regjsgen-0.8.0.tgz", + "integrity": "sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==", + "dev": true + }, + "node_modules/@babel/runtime": { + "version": "7.19.4", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.19.4.tgz", + "integrity": "sha512-EXpLCrk55f+cYqmHsSR+yD/0gAIMxxA9QK9lnQWzhMCvt+YmoBN7Zx94s++Kv0+unHk39vxNO8t+CMA2WSS3wA==", + "dependencies": { + "regenerator-runtime": "^0.13.4" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/template": { + "version": "7.21.9", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.21.9.tgz", + "integrity": "sha512-MK0X5k8NKOuWRamiEfc3KEJiHMTkGZNUjzMipqCGDDc6ijRl/B7RGSKVGncu4Ro/HdyzzY6cmoXuKI2Gffk7vQ==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.21.4", + "@babel/parser": "^7.21.9", + "@babel/types": "^7.21.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse": { + "version": "7.22.4", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.22.4.tgz", + "integrity": "sha512-Tn1pDsjIcI+JcLKq1AVlZEr4226gpuAQTsLMorsYg9tuS/kG7nuwwJ4AB8jfQuEgb/COBwR/DqJxmoiYFu5/rQ==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.21.4", + "@babel/generator": "^7.22.3", + "@babel/helper-environment-visitor": "^7.22.1", + "@babel/helper-function-name": "^7.21.0", + "@babel/helper-hoist-variables": "^7.18.6", + "@babel/helper-split-export-declaration": "^7.18.6", + "@babel/parser": "^7.22.4", + "@babel/types": "^7.22.4", + "debug": "^4.1.0", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/types": { + "version": "7.22.4", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.22.4.tgz", + "integrity": "sha512-Tx9x3UBHTTsMSW85WB2kphxYQVvrZ/t1FxD88IpSgIjiUJlCm9z+xWIDwyo1vffTwSqteqyznB8ZE9vYYk16zA==", + "dev": true, + "dependencies": { + "@babel/helper-string-parser": "^7.21.5", + "@babel/helper-validator-identifier": "^7.19.1", + "to-fast-properties": "^2.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@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 + }, + "node_modules/@buttercup/fetch": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@buttercup/fetch/-/fetch-0.1.1.tgz", + "integrity": "sha512-RwBiPEmPaZv3oLOPY0fcmAGYdd3A4FDoYDc7JN+qxGTXumrYAYEC1RpyCM2pHSr6RYpuaAeg4A1fJy+PiigPIA==", + "optionalDependencies": { + "node-fetch": "^3.3.0" + } + }, + "node_modules/@csstools/selector-specificity": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@csstools/selector-specificity/-/selector-specificity-2.0.2.tgz", + "integrity": "sha512-IkpVW/ehM1hWKln4fCA3NzJU8KwD+kIOvPZA4cqxoJHtE21CCzjyp+Kxbu0i5I4tBNOlXPL9mjwnWlL0VEG4Fg==", + "dev": true, + "peer": true, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2", + "postcss-selector-parser": "^6.0.10" + } + }, + "node_modules/@discoveryjs/json-ext": { + "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": { + "node": ">=10.0.0" + } + }, + "node_modules/@es-joy/jsdoccomment": { + "version": "0.36.0", + "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.36.0.tgz", + "integrity": "sha512-u0XZyvUF6Urb2cSivSXA8qXIpT/CxkHcdtZKoWusAzgzmsTWpg0F2FpWXsolHmMUyVY3dLWaoy+0ccJ5uf2QjA==", + "dev": true, + "peer": true, + "dependencies": { + "comment-parser": "1.3.1", + "esquery": "^1.4.0", + "jsdoc-type-pratt-parser": "~3.1.0" + }, + "engines": { + "node": "^14 || ^16 || ^17 || ^18 || ^19" + } + }, + "node_modules/@eslint/eslintrc": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.3.3.tgz", + "integrity": "sha512-uj3pT6Mg+3t39fvLrj8iuCIJ38zKO9FpGtJ4BBJebJhEwjoT+KLVNCcHT5QC9NGRIEi7fZ0ZR8YRb884auB4Lg==", + "dev": true, + "peer": true, + "dependencies": { + "ajv": "^6.12.4", + "debug": "^4.3.2", + "espree": "^9.4.0", + "globals": "^13.15.0", + "ignore": "^5.2.0", + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "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": { + "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/@eslint/eslintrc/node_modules/globals": { + "version": "13.17.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.17.0.tgz", + "integrity": "sha512-1C+6nQRb1GwGMKm2dH/E7enFAMxGTmGI7/dEdhy/DNelv85w9B72t3uc5frtMNXIbzrarJJ/lTCjcaZwbLJmyw==", + "dev": true, + "peer": true, + "dependencies": { + "type-fest": "^0.20.2" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@eslint/eslintrc/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, + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/@eslint/eslintrc/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/sindresorhus" + } + }, + "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": { + "@floating-ui/core": "^0.3.0" + } + }, + "node_modules/@floating-ui/utils": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@floating-ui/utils/-/utils-0.1.1.tgz", + "integrity": "sha512-m0G6wlnhm/AX0H12IOWtK8gASEMffnX08RtKkCgTdHb9JpHKGloI7icFfLg9ZmQeavcvR0PKmzxClyuFPSjKWw==" + }, + "node_modules/@fullcalendar/core": { + "version": "6.1.8", + "resolved": "https://registry.npmjs.org/@fullcalendar/core/-/core-6.1.8.tgz", + "integrity": "sha512-i8JBIvZCWGO9dsMEDcx9bnsQZ9PtGSJdOXGgWbhLaGq2iq41OBdp9g9gM4b/Otv2oK8bL5Gl6CsMmb/HkDtA6Q==", + "dependencies": { + "preact": "~10.12.1" + } + }, + "node_modules/@fullcalendar/daygrid": { + "version": "6.1.8", + "resolved": "https://registry.npmjs.org/@fullcalendar/daygrid/-/daygrid-6.1.8.tgz", + "integrity": "sha512-kCZxQFKb9Vqa3CZRX0v7rMSJ2mlTt4gDpyLfiNJKxUAq7W51uKurPaFZWicaXy1ESHVBxKNlbx5uNjBpyu50JQ==", + "peerDependencies": { + "@fullcalendar/core": "~6.1.8" + } + }, + "node_modules/@fullcalendar/interaction": { + "version": "6.1.8", + "resolved": "https://registry.npmjs.org/@fullcalendar/interaction/-/interaction-6.1.8.tgz", + "integrity": "sha512-r6W4E9ohaA87M2uPSlmpE2WT7Fzu7LN0u2pE6D/tThruCEaAPbN8Pw5+sqclsuyTIL09mg0eSJm/ggJekTabSA==", + "peerDependencies": { + "@fullcalendar/core": "~6.1.8" + } + }, + "node_modules/@fullcalendar/list": { + "version": "6.1.8", + "resolved": "https://registry.npmjs.org/@fullcalendar/list/-/list-6.1.8.tgz", + "integrity": "sha512-10N0T/vCtId1cE3JGLpnbAivWVnaWCCkVO7wmbsyr5Y+I939kr/zq4BUNwBoP/xSFVVxx59FETh3iyA+MkV8Fw==", + "peerDependencies": { + "@fullcalendar/core": "~6.1.8" + } + }, + "node_modules/@fullcalendar/multimonth": { + "version": "6.1.8", + "resolved": "https://registry.npmjs.org/@fullcalendar/multimonth/-/multimonth-6.1.8.tgz", + "integrity": "sha512-3F0NlncQTfeE9x5ICxh/M9DaSdY6XjgM1NazY8k+d6ukd1jthHI7vs6j7tXJI9eGUKs3DNNEyzN/LoP06SIyKw==", + "dependencies": { + "@fullcalendar/daygrid": "~6.1.8" + }, + "peerDependencies": { + "@fullcalendar/core": "~6.1.8" + } + }, + "node_modules/@fullcalendar/premium-common": { + "version": "6.1.8", + "resolved": "https://registry.npmjs.org/@fullcalendar/premium-common/-/premium-common-6.1.8.tgz", + "integrity": "sha512-r4o73uGl2xQlckcv4yoH+lv1OzkqampdMvPQUnBSTA4MYJHmzt4KEskCxwhD2Ayy+2UQNO47JRSReE84y2WJIA==", + "peerDependencies": { + "@fullcalendar/core": "~6.1.8" + } + }, + "node_modules/@fullcalendar/resource": { + "version": "6.1.8", + "resolved": "https://registry.npmjs.org/@fullcalendar/resource/-/resource-6.1.8.tgz", + "integrity": "sha512-xwRqPdPyJu0PRo7JwRd0OcHBYdcD7AstMczyUKe4JJ+nEpn2qrmidwX+Pk+Ceg/3c/EvcX07wtxkyBBl3LLRVg==", + "dependencies": { + "@fullcalendar/premium-common": "~6.1.8" + }, + "peerDependencies": { + "@fullcalendar/core": "~6.1.8" + } + }, + "node_modules/@fullcalendar/resource-timeline": { + "version": "6.1.8", + "resolved": "https://registry.npmjs.org/@fullcalendar/resource-timeline/-/resource-timeline-6.1.8.tgz", + "integrity": "sha512-Xqf47okpsIK+dIVsP938OTjflTICfn0Ll7w97EHnK8kuSM5vwX+rhHbSn3x2hjBubmO0h/oUkZzteoQnNBqZPA==", + "dependencies": { + "@fullcalendar/premium-common": "~6.1.8", + "@fullcalendar/scrollgrid": "~6.1.8", + "@fullcalendar/timeline": "~6.1.8" + }, + "peerDependencies": { + "@fullcalendar/core": "~6.1.8", + "@fullcalendar/resource": "~6.1.8" + } + }, + "node_modules/@fullcalendar/scrollgrid": { + "version": "6.1.8", + "resolved": "https://registry.npmjs.org/@fullcalendar/scrollgrid/-/scrollgrid-6.1.8.tgz", + "integrity": "sha512-Btp5ipZ+BsDF5xOBbCN2TWU7pd9cCCLQaB1Hhgi997YKzsQ7PmwsJu+zI33UgJQkhmpxnJdg7gb73AuhTTa7kg==", + "dependencies": { + "@fullcalendar/premium-common": "~6.1.8" + }, + "peerDependencies": { + "@fullcalendar/core": "~6.1.8" + } + }, + "node_modules/@fullcalendar/timegrid": { + "version": "6.1.8", + "resolved": "https://registry.npmjs.org/@fullcalendar/timegrid/-/timegrid-6.1.8.tgz", + "integrity": "sha512-3+3KHHCoNcaLs/gQt004hAqICbY5+WAffrZ0ePv+80HFB1OVh8BQ5XXLHSOUbTvXdgtUTcfBHuw9fhO31kt5gA==", + "dependencies": { + "@fullcalendar/daygrid": "~6.1.8" + }, + "peerDependencies": { + "@fullcalendar/core": "~6.1.8" + } + }, + "node_modules/@fullcalendar/timeline": { + "version": "6.1.8", + "resolved": "https://registry.npmjs.org/@fullcalendar/timeline/-/timeline-6.1.8.tgz", + "integrity": "sha512-RyqmK+Jq4cOHzetiXGemOkGM3ipsWl62FR+iaOGqgFZgjijchVYYWbx9kRPDDbhD1j3b7MMgHbP8bVehgy2L/g==", + "dependencies": { + "@fullcalendar/premium-common": "~6.1.8", + "@fullcalendar/scrollgrid": "~6.1.8" + }, + "peerDependencies": { + "@fullcalendar/core": "~6.1.8" + } + }, + "node_modules/@fullcalendar/vue": { + "version": "6.1.8", + "resolved": "https://registry.npmjs.org/@fullcalendar/vue/-/vue-6.1.8.tgz", + "integrity": "sha512-rCfmpwsNkMQhhNiSGt2ZVW0yNmFyXC6O5dto+Rsj3MsJDVXAjI9pR2KRtg1vBh/6hgp8vHcMFcSCJZxIqfui+A==", + "peerDependencies": { + "@fullcalendar/core": "~6.1.8", + "vue": "^2.6.12" + } + }, + "node_modules/@humanwhocodes/config-array": { + "version": "0.11.7", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.7.tgz", + "integrity": "sha512-kBbPWzN8oVMLb0hOUYXhmxggL/1cJE6ydvjDIGi9EnAGUyA7cLVKQg+d/Dsm+KZwx2czGHrCmMVLiyg8s5JPKw==", + "dev": true, + "peer": true, + "dependencies": { + "@humanwhocodes/object-schema": "^1.2.1", + "debug": "^4.1.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==", + "dev": true, + "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==", + "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" + } + }, + "node_modules/@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, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/console": { + "version": "29.5.0", + "resolved": "https://registry.npmjs.org/@jest/console/-/console-29.5.0.tgz", + "integrity": "sha512-NEpkObxPwyw/XxZVLPmAGKE89IQRp4puc6IQRPru6JKd1M3fW9v1xM1AnzIJE65hbCkzQAdnL8P47e9hzhiYLQ==", + "dev": true, + "dependencies": { + "@jest/types": "^29.5.0", + "@types/node": "*", + "chalk": "^4.0.0", + "jest-message-util": "^29.5.0", + "jest-util": "^29.5.0", + "slash": "^3.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/console/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/console/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/@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" + } + }, + "node_modules/@jest/console/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/core": { + "version": "29.5.0", + "resolved": "https://registry.npmjs.org/@jest/core/-/core-29.5.0.tgz", + "integrity": "sha512-28UzQc7ulUrOQw1IsN/kv1QES3q2kkbl/wGslyhAclqZ/8cMdB5M68BffkIdSJgKBUt50d3hbwJ92XESlE7LiQ==", + "dev": true, + "dependencies": { + "@jest/console": "^29.5.0", + "@jest/reporters": "^29.5.0", + "@jest/test-result": "^29.5.0", + "@jest/transform": "^29.5.0", + "@jest/types": "^29.5.0", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "exit": "^0.1.2", + "graceful-fs": "^4.2.9", + "jest-changed-files": "^29.5.0", + "jest-config": "^29.5.0", + "jest-haste-map": "^29.5.0", + "jest-message-util": "^29.5.0", + "jest-regex-util": "^29.4.3", + "jest-resolve": "^29.5.0", + "jest-resolve-dependencies": "^29.5.0", + "jest-runner": "^29.5.0", + "jest-runtime": "^29.5.0", + "jest-snapshot": "^29.5.0", + "jest-util": "^29.5.0", + "jest-validate": "^29.5.0", + "jest-watcher": "^29.5.0", + "micromatch": "^4.0.4", + "pretty-format": "^29.5.0", + "slash": "^3.0.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/@jest/core/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/core/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/@jest/core/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/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": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/environment": { + "version": "29.5.0", + "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-29.5.0.tgz", + "integrity": "sha512-5FXw2+wD29YU1d4I2htpRX7jYnAyTRjP2CsXQdo9SAM8g3ifxWPSV0HnClSn71xwctr0U3oZIIH+dtbfmnbXVQ==", + "dev": true, + "dependencies": { + "@jest/fake-timers": "^29.5.0", + "@jest/types": "^29.5.0", + "@types/node": "*", + "jest-mock": "^29.5.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/expect": { + "version": "29.5.0", + "resolved": "https://registry.npmjs.org/@jest/expect/-/expect-29.5.0.tgz", + "integrity": "sha512-PueDR2HGihN3ciUNGr4uelropW7rqUfTiOn+8u0leg/42UhblPxHkfoh0Ruu3I9Y1962P3u2DY4+h7GVTSVU6g==", + "dev": true, + "dependencies": { + "expect": "^29.5.0", + "jest-snapshot": "^29.5.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/expect-utils": { + "version": "29.5.0", + "resolved": "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-29.5.0.tgz", + "integrity": "sha512-fmKzsidoXQT2KwnrwE0SQq3uj8Z763vzR8LnLBwC2qYWEFpjX8daRsk6rHUM1QvNlEW/UJXNXm59ztmJJWs2Mg==", + "dev": true, + "dependencies": { + "jest-get-type": "^29.4.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/fake-timers": { + "version": "29.5.0", + "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-29.5.0.tgz", + "integrity": "sha512-9ARvuAAQcBwDAqOnglWq2zwNIRUDtk/SCkp/ToGEhFv5r86K21l+VEs0qNTaXtyiY0lEePl3kylijSYJQqdbDg==", + "dev": true, + "dependencies": { + "@jest/types": "^29.5.0", + "@sinonjs/fake-timers": "^10.0.2", + "@types/node": "*", + "jest-message-util": "^29.5.0", + "jest-mock": "^29.5.0", + "jest-util": "^29.5.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/globals": { + "version": "29.5.0", + "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-29.5.0.tgz", + "integrity": "sha512-S02y0qMWGihdzNbUiqSAiKSpSozSuHX5UYc7QbnHP+D9Lyw8DgGGCinrN9uSuHPeKgSSzvPom2q1nAtBvUsvPQ==", + "dev": true, + "dependencies": { + "@jest/environment": "^29.5.0", + "@jest/expect": "^29.5.0", + "@jest/types": "^29.5.0", + "jest-mock": "^29.5.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/reporters": { + "version": "29.5.0", + "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-29.5.0.tgz", + "integrity": "sha512-D05STXqj/M8bP9hQNSICtPqz97u7ffGzZu+9XLucXhkOFBqKcXe04JLZOgIekOxdb73MAoBUFnqvf7MCpKk5OA==", + "dev": true, + "dependencies": { + "@bcoe/v8-coverage": "^0.2.3", + "@jest/console": "^29.5.0", + "@jest/test-result": "^29.5.0", + "@jest/transform": "^29.5.0", + "@jest/types": "^29.5.0", + "@jridgewell/trace-mapping": "^0.3.15", + "@types/node": "*", + "chalk": "^4.0.0", + "collect-v8-coverage": "^1.0.0", + "exit": "^0.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-report": "^3.0.0", + "istanbul-lib-source-maps": "^4.0.0", + "istanbul-reports": "^3.1.3", + "jest-message-util": "^29.5.0", + "jest-util": "^29.5.0", + "jest-worker": "^29.5.0", + "slash": "^3.0.0", + "string-length": "^4.0.1", + "strip-ansi": "^6.0.0", + "v8-to-istanbul": "^9.0.1" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/@jest/reporters/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/reporters/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/@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/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/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": { + "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/schemas": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.4.3.tgz", + "integrity": "sha512-VLYKXQmtmuEz6IxJsrZwzG9NvtkQsWNnWMsKxqWNu3+CnfzJQhp0WDDKWLVV9hLKr0l3SLLFRqcYHjhtyuDVxg==", + "dev": true, + "dependencies": { + "@sinclair/typebox": "^0.25.16" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/source-map": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-29.4.3.tgz", + "integrity": "sha512-qyt/mb6rLyd9j1jUts4EQncvS6Yy3PM9HghnNv86QBlV+zdL2inCdK1tuVlL+J+lpiw2BI67qXOrX3UurBqQ1w==", + "dev": true, + "dependencies": { + "@jridgewell/trace-mapping": "^0.3.15", + "callsites": "^3.0.0", + "graceful-fs": "^4.2.9" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/test-result": { + "version": "29.5.0", + "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-29.5.0.tgz", + "integrity": "sha512-fGl4rfitnbfLsrfx1uUpDEESS7zM8JdgZgOCQuxQvL1Sn/I6ijeAVQWGfXI9zb1i9Mzo495cIpVZhA0yr60PkQ==", + "dev": true, + "dependencies": { + "@jest/console": "^29.5.0", + "@jest/types": "^29.5.0", + "@types/istanbul-lib-coverage": "^2.0.0", + "collect-v8-coverage": "^1.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/test-sequencer": { + "version": "29.5.0", + "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-29.5.0.tgz", + "integrity": "sha512-yPafQEcKjkSfDXyvtgiV4pevSeyuA6MQr6ZIdVkWJly9vkqjnFfcfhRQqpD5whjoU8EORki752xQmjaqoFjzMQ==", + "dev": true, + "dependencies": { + "@jest/test-result": "^29.5.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^29.5.0", + "slash": "^3.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/transform": { + "version": "29.5.0", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-29.5.0.tgz", + "integrity": "sha512-8vbeZWqLJOvHaDfeMuoHITGKSz5qWc9u04lnWrQE3VyuSw604PzQM824ZeX9XSjUCeDiE3GuxZe5UKa8J61NQw==", + "dev": true, + "dependencies": { + "@babel/core": "^7.11.6", + "@jest/types": "^29.5.0", + "@jridgewell/trace-mapping": "^0.3.15", + "babel-plugin-istanbul": "^6.1.1", + "chalk": "^4.0.0", + "convert-source-map": "^2.0.0", + "fast-json-stable-stringify": "^2.1.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^29.5.0", + "jest-regex-util": "^29.4.3", + "jest-util": "^29.5.0", + "micromatch": "^4.0.4", + "pirates": "^4.0.4", + "slash": "^3.0.0", + "write-file-atomic": "^4.0.2" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/transform/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/transform/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/@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", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "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", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/types": { + "version": "29.5.0", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.5.0.tgz", + "integrity": "sha512-qbu7kN6czmVRc3xWFQcAN03RAUamgppVUdXrvl1Wr3jlNF93o9mJbGcDWrwGB6ht44u7efB1qCFgVQmca24Uog==", + "dev": true, + "dependencies": { + "@jest/schemas": "^29.4.3", + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^17.0.8", + "chalk": "^4.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/types/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/types/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/@jest/types/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/types/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/@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": { + "@jridgewell/set-array": "^1.0.0", + "@jridgewell/sourcemap-codec": "^1.4.10" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "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==", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/set-array": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", + "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/source-map": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.2.tgz", + "integrity": "sha512-m7O9o2uR8k2ObDysZYzdfhb08VuEml5oWGiosa1VdaPZ/A6QyPkAJuwN0Q1lhULOf6B7MtQmHENS743hWtCrgw==", + "peer": true, + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.0", + "@jridgewell/trace-mapping": "^0.3.9" + } + }, + "node_modules/@jridgewell/source-map/node_modules/@jridgewell/gen-mapping": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", + "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", + "peer": true, + "dependencies": { + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "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==" + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.18", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.18.tgz", + "integrity": "sha512-w+niJYzMHdd7USdiH2U6869nqhD2nbfZXND5Yp93qIbEmnDNk7PD48o+YchRVpzMU7M6jVCbenTR7PA1FLQ9pA==", + "dependencies": { + "@jridgewell/resolve-uri": "3.1.0", + "@jridgewell/sourcemap-codec": "1.4.14" + } + }, + "node_modules/@leichtgewicht/ip-codec": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@leichtgewicht/ip-codec/-/ip-codec-2.0.4.tgz", + "integrity": "sha512-Hcv+nVC0kZnQ3tD9GVu5xSMR4VVYOteQIr/hwFPVEvPdlXqgGEuRjiheChHgdM+JyqdgNcmzZOX/tnl0JOiI7A==", + "dev": true, + "peer": true + }, + "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/svg": { + "version": "7.2.96", + "resolved": "https://registry.npmjs.org/@mdi/svg/-/svg-7.2.96.tgz", + "integrity": "sha512-rxzuSL2RSt/pWWnFnUFQi5GJArm2tHMhx20Gee3Ydn+xT2bqbR4syfgdPrq2b+j+n5LjC7C8Fb1QDM6LKeF0cA==" + }, + "node_modules/@nextcloud/auth": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@nextcloud/auth/-/auth-2.1.0.tgz", + "integrity": "sha512-wf5xQrWQu6fkl3MGegVdyR5mh/EdSQKJByH3m2Url2K2xbML9Y4Y7LAff9jjJAcMt2MkzzJEM463ZBbgTqs0lg==", + "dependencies": { + "@nextcloud/event-bus": "^3.1.0" + }, + "engines": { + "node": "^16.0.0", + "npm": "^7.0.0 || ^8.0.0" + } + }, + "node_modules/@nextcloud/axios": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/@nextcloud/axios/-/axios-2.4.0.tgz", + "integrity": "sha512-ARGzT9p45L0sjRIV3JZWGPtMbwgxd4eEMcMJNn58NA7UQIsMkTwHb5pXQjL+5elXY9zp/JMz7n/7SHTp0bkuXQ==", + "dependencies": { + "@nextcloud/auth": "^2.1.0", + "@nextcloud/router": "^2.1.2", + "axios": "^1.4.0" + }, + "engines": { + "node": "^20.0.0", + "npm": "^9.0.0" + } + }, + "node_modules/@nextcloud/axios/node_modules/axios": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.4.0.tgz", + "integrity": "sha512-S4XCWMEmzvo64T9GfvQDOXgYRDJ/wsSZc7Jvdgx5u1sd0JwsuPLqb3SYmusag+edF6ziyMensPVqLTSc1PiSEA==", + "dependencies": { + "follow-redirects": "^1.15.0", + "form-data": "^4.0.0", + "proxy-from-env": "^1.1.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==", + "dev": true, + "peerDependencies": { + "@babel/core": "^7.13.10", + "@babel/plugin-proposal-class-properties": "^7.13.0", + "@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" + } + }, + "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==", + "dependencies": { + "core-js": "3.6.1" + } + }, + "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==", + "deprecated": "core-js@<3.23.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. Some versions have web compatibility issues. Please, upgrade your dependencies to the actual version of core-js.", + "hasInstallScript": true, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" + } + }, + "node_modules/@nextcloud/browserslist-config": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@nextcloud/browserslist-config/-/browserslist-config-2.3.0.tgz", + "integrity": "sha512-1Tpkof2e9Q0UicHWahQnXXrubJoqyiaqsH9G52v3cjGeVeH3BCfa1FOa41eBwBSFe2/Jxj/wCH2YVLgIXpWbBg==", + "dev": true, + "engines": { + "node": "^16.0.0", + "npm": "^7.0.0 || ^8.0.0" + } + }, + "node_modules/@nextcloud/calendar-availability-vue": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@nextcloud/calendar-availability-vue/-/calendar-availability-vue-1.0.0.tgz", + "integrity": "sha512-vB1mJC/mGSo+a/7K2zw4xwR9R/GPM4qlfkGVSl1nEQtPP7Mk3el5T+3DYKWr1843JW6c/6ujTXqVLu2SIMbW5w==", + "dependencies": { + "@nextcloud/logger": "^2.4.0", + "ical.js": "^1.4.0", + "icalzone": "^0.0.1", + "uuid": "^9.0.0", + "vue-material-design-icons": "^5.1.2" + }, + "engines": { + "node": "^16.0.0", + "npm": "^7.0.0 || ^8.0.0" + }, + "peerDependencies": { + "@nextcloud/l10n": "^1.4 || ^2.0", + "@nextcloud/vue": "^6.0 || ^7.0", + "vue": "^2.7" + } + }, + "node_modules/@nextcloud/calendar-js": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/@nextcloud/calendar-js/-/calendar-js-6.0.1.tgz", + "integrity": "sha512-iv6iPw20vp0CinVVrH4ptcuWPdAAx1AawMrYLqFg4vSEr0eVbwz6SW4P8GbxjzzRFJ0xqFXsmFeudiVAhvBaxA==", + "engines": { + "node": ">=16.0.0", + "npm": ">=8.0.0" + }, + "peerDependencies": { + "ical.js": "^1.5.0", + "uuid": "^9.0.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==", + "dependencies": { + "@nextcloud/initial-state": "^1.1.2", + "core-js": "^3.6.4" + } + }, + "node_modules/@nextcloud/capabilities/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==", + "dependencies": { + "core-js": "^3.6.4" + } + }, + "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" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@nextcloud/dialogs": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/@nextcloud/dialogs/-/dialogs-4.2.0.tgz", + "integrity": "sha512-RILlVc/KpTONa1g7KKx3IY2ugc5ZOToOhn3vQYGzLUvjQpiNgM7vFY2jcR6vfE+4W+OSJNZDCcvabA7MHmavVw==", + "dependencies": { + "@mdi/svg": "^7.2.96", + "@nextcloud/files": "^3.0.0-beta.14", + "@nextcloud/l10n": "^2.2.0", + "@nextcloud/router": "^2.1.2", + "@nextcloud/typings": "^1.7.0", + "@nextcloud/vue": "^7.12.4", + "@types/toastify-js": "^1.12.1", + "@vueuse/core": "^10.4.1", + "toastify-js": "^1.12.0", + "vue-frag": "^1.4.3", + "vue-material-design-icons": "^5.2.0", + "webdav": "^5.2.3" + }, + "engines": { + "node": "^20.0.0", + "npm": "^9.0.0" + }, + "peerDependencies": { + "vue": "^2.7.14" + } + }, + "node_modules/@nextcloud/dialogs/node_modules/@vueuse/core": { + "version": "10.4.1", + "resolved": "https://registry.npmjs.org/@vueuse/core/-/core-10.4.1.tgz", + "integrity": "sha512-DkHIfMIoSIBjMgRRvdIvxsyboRZQmImofLyOHADqiVbQVilP8VVHDhBX2ZqoItOgu7dWa8oXiNnScOdPLhdEXg==", + "dependencies": { + "@types/web-bluetooth": "^0.0.17", + "@vueuse/metadata": "10.4.1", + "@vueuse/shared": "10.4.1", + "vue-demi": ">=0.14.5" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@nextcloud/dialogs/node_modules/@vueuse/core/node_modules/vue-demi": { + "version": "0.14.6", + "resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.14.6.tgz", + "integrity": "sha512-8QA7wrYSHKaYgUxDA5ZC24w+eHm3sYCbp0EzcDwKqN3p6HqtTCGR/GVsPyZW92unff4UlcSh++lmqDWN3ZIq4w==", + "hasInstallScript": true, + "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/@nextcloud/dialogs/node_modules/@vueuse/metadata": { + "version": "10.4.1", + "resolved": "https://registry.npmjs.org/@vueuse/metadata/-/metadata-10.4.1.tgz", + "integrity": "sha512-2Sc8X+iVzeuMGHr6O2j4gv/zxvQGGOYETYXEc41h0iZXIRnRbJZGmY/QP8dvzqUelf8vg0p/yEA5VpCEu+WpZg==", + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@nextcloud/dialogs/node_modules/@vueuse/shared": { + "version": "10.4.1", + "resolved": "https://registry.npmjs.org/@vueuse/shared/-/shared-10.4.1.tgz", + "integrity": "sha512-vz5hbAM4qA0lDKmcr2y3pPdU+2EVw/yzfRsBdu+6+USGa4PxqSQRYIUC9/NcT06y+ZgaTsyURw2I9qOFaaXHAg==", + "dependencies": { + "vue-demi": ">=0.14.5" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@nextcloud/dialogs/node_modules/@vueuse/shared/node_modules/vue-demi": { + "version": "0.14.6", + "resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.14.6.tgz", + "integrity": "sha512-8QA7wrYSHKaYgUxDA5ZC24w+eHm3sYCbp0EzcDwKqN3p6HqtTCGR/GVsPyZW92unff4UlcSh++lmqDWN3ZIq4w==", + "hasInstallScript": true, + "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/@nextcloud/eslint-config": { + "version": "8.2.1", + "resolved": "https://registry.npmjs.org/@nextcloud/eslint-config/-/eslint-config-8.2.1.tgz", + "integrity": "sha512-YZ4JC9ufXFyyf8l/jD612Nu2GNz1VSVLkHvMNXqjWnW+XGqkAKXBsjCfw+KNFvFkHVktUH4OSI+pdEvHQa5mCw==", + "dev": true, + "engines": { + "node": "^16.0.0", + "npm": "^7.0.0 || ^8.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.13.10", + "@babel/eslint-parser": "^7.16.5", + "@nextcloud/eslint-plugin": "^2.0.0", + "@vue/eslint-config-typescript": "^11.0.2", + "eslint": "^8.27.0", + "eslint-config-standard": "^17.0.0", + "eslint-import-resolver-exports": "^1.0.0-beta.4", + "eslint-plugin-import": "^2.26.0", + "eslint-plugin-jsdoc": "^39.6.2", + "eslint-plugin-n": "^15.5.1", + "eslint-plugin-promise": "^6.1.1", + "eslint-plugin-vue": "^9.7.0", + "typescript": "^4.9.4", + "webpack": "^5.4.0" + } + }, + "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" + }, + "engines": { + "node": ">=0.10.0" + }, + "peerDependencies": { + "eslint": ">=6.0.0" + } + }, + "node_modules/@nextcloud/event-bus": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@nextcloud/event-bus/-/event-bus-3.1.0.tgz", + "integrity": "sha512-purXQsXbhbmpcDsbDuR0i7vwUgOsqnIUa7QAD3lV/UZUkUT94SmxBM5LgQ8iV8TQBWWleEwQHy5kYfHeTGF9wg==", + "dependencies": { + "semver": "^7.5.1" + }, + "engines": { + "node": "^16.0.0", + "npm": "^7.0.0 || ^8.0.0" + } + }, + "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==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@nextcloud/event-bus/node_modules/semver": { + "version": "7.5.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.1.tgz", + "integrity": "sha512-Wvss5ivl8TMRZXXESstBA4uR5iXgEN/VC5/sOcuXdVLzcdkz4HWetIoRfG5gb5X+ij/G9rw9YoGn3QoQ8OCSpw==", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "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/files": { + "version": "3.0.0-beta.14", + "resolved": "https://registry.npmjs.org/@nextcloud/files/-/files-3.0.0-beta.14.tgz", + "integrity": "sha512-wyq+BcOE2KFjhPtpUOIkLRHLxOPVu/ZlbioII4qoD2NtjUHCx9U8RDBo28kFr45Nj3eDsQ1TFEUipocRMJ6J7g==", + "dependencies": { + "@nextcloud/auth": "^2.1.0", + "@nextcloud/l10n": "^2.2.0", + "@nextcloud/logger": "^2.5.0", + "@nextcloud/router": "^2.1.2", + "webdav": "^5.2.3" + }, + "engines": { + "node": "^20.0.0", + "npm": "^9.0.0" + } + }, + "node_modules/@nextcloud/initial-state": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@nextcloud/initial-state/-/initial-state-2.1.0.tgz", + "integrity": "sha512-b92X/GvUPGQJpUQwauyG3D3dHsWowViVLnTtFPSMUc0rXtvYR5CvhkqJRfPC7O7W4VC7+V3q+FWeA+mQWMxN2Q==", + "engines": { + "node": "^20.0.0", + "npm": "^9.0.0" + } + }, + "node_modules/@nextcloud/l10n": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@nextcloud/l10n/-/l10n-2.2.0.tgz", + "integrity": "sha512-UAM2NJcl/NR46MANSF7Gr7q8/Up672zRyGrxLpN3k4URNmWQM9upkbRME+1K3T29wPrUyOIbQu710ZjvZafqFA==", + "dependencies": { + "@nextcloud/router": "^2.1.2", + "@nextcloud/typings": "^1.7.0", + "dompurify": "^3.0.3", + "escape-html": "^1.0.3", + "node-gettext": "^3.0.0" + }, + "engines": { + "node": "^20.0.0", + "npm": "^9.0.0" + } + }, + "node_modules/@nextcloud/logger": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@nextcloud/logger/-/logger-2.5.0.tgz", + "integrity": "sha512-vJx5YxPyS9/tg3YoqA8CBN7YTZFHfuhMKJIIWFV28phxXqKhGwKVKh+/Ir8ZIPweIM5n8VNT6JOJq1JjGiMg2w==", + "dependencies": { + "@nextcloud/auth": "^2.0.0", + "core-js": "^3.6.4" + }, + "engines": { + "node": "^16.0.0", + "npm": "^7.0.0 || ^8.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/moment/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/router": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/@nextcloud/router/-/router-2.1.2.tgz", + "integrity": "sha512-Jj5fgjeHT1vVIgOyUGOeHfwk2KgaO77QGfqZAT6GWXvpAsN0mkqwljkg4FkHrQRouYqCE4VnJ5o8/w0DAN89tA==", + "dependencies": { + "@nextcloud/typings": "^1.0.0", + "core-js": "^3.6.4" + }, + "engines": { + "node": "^16.0.0", + "npm": "^7.0.0 || ^8.0.0" + } + }, + "node_modules/@nextcloud/stylelint-config": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@nextcloud/stylelint-config/-/stylelint-config-2.3.0.tgz", + "integrity": "sha512-5mtWqqwrXFXekGT0I8PtVYxJAUQXYwMF28e2MBFbsbyCv+XVzFn9rOYAn6xUG1PrsIeEnom0xlQdrrjpJc71oA==", + "dev": true, + "engines": { + "node": "^16.0.0", + "npm": "^7.0.0 || ^8.0.0" + }, + "peerDependencies": { + "stylelint": "^14.2.0", + "stylelint-config-recommended-scss": "^7.0.0", + "stylelint-config-recommended-vue": "^1.1.0" + } + }, + "node_modules/@nextcloud/typings": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/@nextcloud/typings/-/typings-1.7.0.tgz", + "integrity": "sha512-fK1i09FYTfSUBdXswyiCr8ng5MwdWjEWOF7hRvNvq5i+XFUSmGjSsRmpQZFM2AONroHqGGQBkvQqpONUshFBJQ==", + "dependencies": { + "@types/jquery": "3.5.16", + "vue": "^2.7.14", + "vue-router": "<4" + }, + "engines": { + "node": "^16.0.0", + "npm": "^7.0.0 || ^8.0.0" + } + }, + "node_modules/@nextcloud/vue": { + "version": "7.12.4", + "resolved": "https://registry.npmjs.org/@nextcloud/vue/-/vue-7.12.4.tgz", + "integrity": "sha512-ZW3DtIhD+aoaj9S4EB+X/kXCfIKgKXXMKKbECHkxl/CqtIvASmtxCNpt9DAlIETYKHwfuT3GWduxSnFCuLe1bQ==", + "dependencies": { + "@floating-ui/dom": "^1.1.0", + "@nextcloud/auth": "^2.0.0", + "@nextcloud/axios": "^2.0.0", + "@nextcloud/browser-storage": "^0.2.0", + "@nextcloud/calendar-js": "^6.0.0", + "@nextcloud/capabilities": "^1.0.4", + "@nextcloud/dialogs": "^4.0.0", + "@nextcloud/event-bus": "^3.0.0", + "@nextcloud/initial-state": "^2.0.0", + "@nextcloud/l10n": "^2.0.1", + "@nextcloud/logger": "^2.2.1", + "@nextcloud/router": "^2.0.0", + "@nextcloud/vue-select": "^3.21.2", + "@skjnldsv/sanitize-svg": "^1.0.2", + "@vueuse/components": "^10.0.2", + "clone": "^2.1.2", + "debounce": "1.2.1", + "emoji-mart-vue-fast": "^12.0.1", + "escape-html": "^1.0.3", + "floating-vue": "^1.0.0-beta.19", + "focus-trap": "^7.4.3", + "hammerjs": "^2.0.8", + "linkify-string": "^4.0.0", + "md5": "^2.3.0", + "node-polyfill-webpack-plugin": "^2.0.1", + "rehype-react": "^7.1.2", + "remark-breaks": "^3.0.2", + "remark-external-links": "^9.0.1", + "remark-parse": "^10.0.1", + "remark-rehype": "^10.1.0", + "splitpanes": "^2.4.1", + "string-length": "^5.0.1", + "striptags": "^3.2.0", + "tributejs": "^5.1.3", + "unified": "^10.1.2", + "unist-builder": "^3.0.1", + "unist-util-visit": "^4.1.2", + "vue": "^2.7.14", + "vue-color": "^2.8.1", + "vue-frag": "^1.4.3", + "vue-material-design-icons": "^5.1.2", + "vue-multiselect": "^2.1.6", + "vue2-datepicker": "^3.11.0" + }, + "engines": { + "node": "^16.0.0", + "npm": "^7.0.0 || ^8.0.0" + } + }, + "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==", + "dependencies": { + "@nextcloud/vue": "^3.1.1", + "core-js": "^3.6.4", + "vue": "^2.6.11" + }, + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "@nextcloud/vue": "^3.1.1", + "vue": "^2.6.11" + } + }, + "node_modules/@nextcloud/vue-dashboard/node_modules/@babel/runtime": { + "version": "7.3.4", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.3.4.tgz", + "integrity": "sha512-IvfvnMdSaLBateu0jfsYIpZTxAc2cKEXEMiezGGN75QcBcecDUKd3PgLAncT0oOgxKy8dd8hrJKj9MfzgfZd6g==", + "dependencies": { + "regenerator-runtime": "^0.12.0" + } + }, + "node_modules/@nextcloud/vue-dashboard/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/@nextcloud/vue-dashboard/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==", + "dependencies": { + "@nextcloud/event-bus": "^1.1.3", + "@nextcloud/typings": "^0.2.2", + "core-js": "^3.6.4" + } + }, + "node_modules/@nextcloud/vue-dashboard/node_modules/@nextcloud/axios": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/@nextcloud/axios/-/axios-1.11.0.tgz", + "integrity": "sha512-NyaiSC2GX2CPaH/MUGGMTTTza/TW9ZqWNGWq6LJ+pLER8nqZ9BQkwJ5kXUYGo+i3cka68PO+9WhcDv4fSABpuQ==", + "dependencies": { + "@nextcloud/auth": "^1.3.0", + "axios": "^0.27.1", + "core-js": "^3.6.4" + }, + "engines": { + "node": "^16.0.0", + "npm": "^7.0.0 || ^8.0.0" + } + }, + "node_modules/@nextcloud/vue-dashboard/node_modules/@nextcloud/dialogs": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/@nextcloud/dialogs/-/dialogs-3.2.0.tgz", + "integrity": "sha512-notaHF8LXPJINBbILCbRe+dgXnJPe7NQTIrN1vwfaGUSG9GUfEf+v367yyg2brCgV6ulE/HmNhYjTQwW5AqSJA==", + "dependencies": { + "@nextcloud/l10n": "^1.3.0", + "@nextcloud/typings": "^1.0.0", + "core-js": "^3.6.4", + "toastify-js": "^1.12.0" + }, + "engines": { + "node": "^16.0.0", + "npm": "^7.0.0 || ^8.0.0" + } + }, + "node_modules/@nextcloud/vue-dashboard/node_modules/@nextcloud/dialogs/node_modules/@nextcloud/typings": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/@nextcloud/typings/-/typings-1.6.0.tgz", + "integrity": "sha512-5uIsteFy9Z9/ZaNGE8w8SDgJp+FK8/LeRLgfnakC2pU8eNKTPlQfkiYR163oEI5Xu5YzwdIzf6/roIXdNinhrw==", + "dependencies": { + "@types/jquery": "2.0.60" + }, + "engines": { + "node": "^16.0.0", + "npm": "^7.0.0 || ^8.0.0" + } + }, + "node_modules/@nextcloud/vue-dashboard/node_modules/@nextcloud/dialogs/node_modules/@types/jquery": { + "version": "2.0.60", + "resolved": "https://registry.npmjs.org/@types/jquery/-/jquery-2.0.60.tgz", + "integrity": "sha512-izi6OBEVrAwaHiqWITjOPBbVtcKZKAXTocJqPZsAKA2lvmbpFEyPSAxgcqmisbiMYj9EvrooUEPLHQeQqVMWAg==" + }, + "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==", + "dependencies": { + "@types/semver": "^7.3.5", + "core-js": "^3.11.2", + "semver": "^7.3.5" + } + }, + "node_modules/@nextcloud/vue-dashboard/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/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/typings": { + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/@nextcloud/typings/-/typings-0.2.4.tgz", + "integrity": "sha512-49M8XUDQH27VIQE+13KrqSOYcyOsDUk6Yfw17jbBVtXFoDJ3YBSYYq8YaKeAM3Lz2JVbEpqQW9suAT+EyYSb6g==", + "dependencies": { + "@types/jquery": "2.0.54" + } + }, + "node_modules/@nextcloud/vue-dashboard/node_modules/@nextcloud/vue": { + "version": "3.10.2", + "resolved": "https://registry.npmjs.org/@nextcloud/vue/-/vue-3.10.2.tgz", + "integrity": "sha512-/8r2fE8V7nw9erjm06x3nCALC+6o9q2CzNSL0eDRfsKXCVySFoZ4bYX+zziQUStienisKDRXRhxh7RUAwkS2+w==", + "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" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/@nextcloud/vue-dashboard/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==" + }, + "node_modules/@nextcloud/vue-dashboard/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==", + "engines": { + "node": ">=10" + } + }, + "node_modules/@nextcloud/vue-dashboard/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==", + "dependencies": { + "@babel/polyfill": "7.2.5", + "@babel/runtime": "7.3.4", + "vue-virtual-scroller": "^1.0.0-rc.2" + }, + "peerDependencies": { + "vue": "^2.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/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==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "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" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/@nextcloud/vue-dashboard/node_modules/semver": { + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@nextcloud/vue-dashboard/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==", + "dependencies": { + "char-regex": "^1.0.2", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "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==", + "dependencies": { + "loader-utils": "^2.0.0", + "schema-utils": "^3.0.0" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^4.0.0 || ^5.0.0" + } + }, + "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-select": { + "version": "3.23.0", + "resolved": "https://registry.npmjs.org/@nextcloud/vue-select/-/vue-select-3.23.0.tgz", + "integrity": "sha512-TerpWxDtbdwda32xtrLcqN8CjcQwVwCrEdHIHIAPQ2y3Ktl/dcjQxGn0onRZqk9+4ZxPGMYdX7LIWRKCHUlrmQ==", + "peerDependencies": { + "vue": "2.x" + } + }, + "node_modules/@nextcloud/vue/node_modules/@floating-ui/core": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-1.4.1.tgz", + "integrity": "sha512-jk3WqquEJRlcyu7997NtR5PibI+y5bi+LS3hPmguVClypenMsCY3CBa3LAQnozRCtCrYWSEtAdiskpamuJRFOQ==", + "dependencies": { + "@floating-ui/utils": "^0.1.1" + } + }, + "node_modules/@nextcloud/vue/node_modules/@floating-ui/dom": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.5.1.tgz", + "integrity": "sha512-KwvVcPSXg6mQygvA1TjbN/gh///36kKtllIF8SUm0qpFj8+rvYrpvlYdL1JoA71SHpDqgSSdGOSoQ0Mp3uY5aw==", + "dependencies": { + "@floating-ui/core": "^1.4.1", + "@floating-ui/utils": "^0.1.1" + } + }, + "node_modules/@nextcloud/vue/node_modules/@nextcloud/browser-storage": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/@nextcloud/browser-storage/-/browser-storage-0.2.0.tgz", + "integrity": "sha512-qRetNoCMHzfJyuQ7uvlwUXNwXlm5eSy4h8hI0Oa9HKbej57WGBYxRqsHElFzipSPh7mBUdFnz5clGpzIQx8+HQ==", + "dependencies": { + "core-js": "3.25.5" + }, + "engines": { + "node": "^16.0.0", + "npm": "^7.0.0 || ^8.0.0" + } + }, + "node_modules/@nextcloud/vue/node_modules/core-js": { + "version": "3.25.5", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.25.5.tgz", + "integrity": "sha512-nbm6eZSjm+ZuBQxCUPQKQCoUEfFOXjUZ8dTTyikyKaWrTYmAVbykQfwsKE5dBK88u3QCkCrzsx/PPlKfhsvgpw==", + "hasInstallScript": true, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" + } + }, + "node_modules/@nextcloud/webpack-vue-config": { + "version": "5.5.1", + "resolved": "https://registry.npmjs.org/@nextcloud/webpack-vue-config/-/webpack-vue-config-5.5.1.tgz", + "integrity": "sha512-2Q3kPnsvkKeENG3rruTjAE1oz/9w0u5QMKO8oh9arL2TIO2aswkDKBtkmu6q7Po3tE+3B2f+ggHq1PNkhtwu6w==", + "dev": true, + "engines": { + "node": "^16.0.0", + "npm": "^7.0.0 || ^8.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.19.6", + "babel-loader": "^9.0.0", + "css-loader": "^6.7.1", + "node-polyfill-webpack-plugin": "2.0.1", + "sass": "^1.55.0", + "sass-loader": "^13.1.0", + "style-loader": "^3.3.1", + "vue": "^2.7.13", + "vue-loader": "^15.10.0", + "vue-template-compiler": "^2.7.13", + "webpack": "^5.74.0", + "webpack-cli": "^5.0.1", + "webpack-dev-server": "^4.11.1" + } + }, + "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": { + "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, + "dependencies": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@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, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.walk": { + "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": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@sinclair/typebox": { + "version": "0.25.23", + "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.25.23.tgz", + "integrity": "sha512-VEB8ygeP42CFLWyAJhN5OklpxUliqdNEUcXb4xZ/CINqtYGTjL5ukluKdKzQ0iWdUxyQ7B0539PAUhHKrCNWSQ==", + "dev": true + }, + "node_modules/@sinonjs/commons": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-2.0.0.tgz", + "integrity": "sha512-uLa0j859mMrg2slwQYdO/AkrOfmH+X6LTVmNTS9CqexuE2IvVORIkSpJLqePAbEnKJ77aMmCwr1NUZ57120Xcg==", + "dev": true, + "dependencies": { + "type-detect": "4.0.8" + } + }, + "node_modules/@sinonjs/fake-timers": { + "version": "10.0.2", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-10.0.2.tgz", + "integrity": "sha512-SwUDyjWnah1AaNl7kxsa7cfLhlTYoiyhDAIgyh+El30YvXs/o7OLXpYH88Zdhyx9JExKrmHDJ+10bwIcY80Jmw==", + "dev": true, + "dependencies": { + "@sinonjs/commons": "^2.0.0" + } + }, + "node_modules/@skjnldsv/sanitize-svg": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@skjnldsv/sanitize-svg/-/sanitize-svg-1.0.2.tgz", + "integrity": "sha512-blfdQZ9jr4K9IOhifF0FVhKf9LCFH0L8wWR/vEgdA53q8DGNEbjUGMNo4VU1QugglaoQdFy65O2abODRFflsSg==", + "dependencies": { + "is-svg": "^4.3.2" + }, + "engines": { + "node": "^14.0.0", + "npm": "^7.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": "*" + } + }, + "node_modules/@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, + "dependencies": { + "@babel/types": "^7.0.0" + } + }, + "node_modules/@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, + "dependencies": { + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__traverse": { + "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==", + "dev": true, + "peer": true, + "dependencies": { + "@types/connect": "*", + "@types/node": "*" + } + }, + "node_modules/@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, + "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==", + "dev": true, + "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==", + "dev": true, + "peer": true, + "dependencies": { + "@types/express-serve-static-core": "*", + "@types/node": "*" + } + }, + "node_modules/@types/debug": { + "version": "4.1.7", + "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.7.tgz", + "integrity": "sha512-9AonUzyTjXXhEOa0DnqpzZi6VHlqKMswga9EXjpXnnqxwLtdvPPtlO8evrI5D9S6asFRCQ6v+wpiUKbw+vKqyg==", + "dependencies": { + "@types/ms": "*" + } + }, + "node_modules/@types/eslint": { + "version": "8.4.6", + "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.4.6.tgz", + "integrity": "sha512-/fqTbjxyFUaYNO7VcW5g+4npmqVACz1bB7RTHYuLj+PRjw9hrCwrUXVQFpChUS0JsyEFvMZ7U/PfmvWgxJhI9g==", + "peer": true, + "dependencies": { + "@types/estree": "*", + "@types/json-schema": "*" + } + }, + "node_modules/@types/eslint-scope": { + "version": "3.7.4", + "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.4.tgz", + "integrity": "sha512-9K4zoImiZc3HlIp6AVUDE4CWYx22a+lhSZMYNpbjW04+YF0KWj4pJXnEMjdnFTiQibFFmElcsasJXDbdI/EPhA==", + "peer": true, + "dependencies": { + "@types/eslint": "*", + "@types/estree": "*" + } + }, + "node_modules/@types/estree": { + "version": "0.0.51", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.51.tgz", + "integrity": "sha512-CuPgU6f3eT/XgKKPqKd/gLZV1Xmvf1a2R5POBOGQa6uv82xpls89HU5zKeVoyR8XzHd1RGNOlQlvUe3CFkjWNQ==", + "peer": true + }, + "node_modules/@types/express": { + "version": "4.17.14", + "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.14.tgz", + "integrity": "sha512-TEbt+vaPFQ+xpxFLFssxUDXj5cWCxZJjIcB7Yg0k0GMHGtgtQgpvx/MUQUeAkNbA9AAGrwkAsoeItdTgS7FMyg==", + "dev": true, + "peer": true, + "dependencies": { + "@types/body-parser": "*", + "@types/express-serve-static-core": "^4.17.18", + "@types/qs": "*", + "@types/serve-static": "*" + } + }, + "node_modules/@types/express-serve-static-core": { + "version": "4.17.31", + "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.31.tgz", + "integrity": "sha512-DxMhY+NAsTwMMFHBTtJFNp5qiHKJ7TeqOo23zVEM9alT1Ml27Q3xcTH0xwxn7Q0BbMcVEJOs/7aQtUWupUQN3Q==", + "dev": true, + "peer": true, + "dependencies": { + "@types/node": "*", + "@types/qs": "*", + "@types/range-parser": "*" + } + }, + "node_modules/@types/graceful-fs": { + "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-proxy": { + "version": "1.17.9", + "resolved": "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.9.tgz", + "integrity": "sha512-QsbSjA/fSk7xB+UXlCT3wHBy5ai9wOcNDWwZAtud+jXhwOM3l+EYZh8Lng4+/6n8uar0J7xILzqftJdJ/Wdfkw==", + "dev": true, + "peer": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/istanbul-lib-coverage": { + "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": { + "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, + "dependencies": { + "@types/istanbul-lib-coverage": "*" + } + }, + "node_modules/@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, + "dependencies": { + "@types/istanbul-lib-report": "*" + } + }, + "node_modules/@types/jquery": { + "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.11", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz", + "integrity": "sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==" + }, + "node_modules/@types/json5": { + "version": "0.0.29", + "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", + "integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==", + "dev": true, + "peer": true + }, + "node_modules/@types/mdast": { + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.10.tgz", + "integrity": "sha512-W864tg/Osz1+9f4lrGTZpCSO5/z4608eUp19tbozkq2HJK6i3z1kT0H9tlADXuYIb1YYOBByU4Jsqkk75q48qA==", + "dependencies": { + "@types/unist": "*" + } + }, + "node_modules/@types/mime": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@types/mime/-/mime-3.0.1.tgz", + "integrity": "sha512-Y4XFY5VJAuw0FgAqPNd6NNoV44jbq9Bz2L7Rh/J6jLTiHBSBJa9fxqQIvkIld4GsoDOcCbvzOUAbLPsSKKg+uA==", + "dev": true, + "peer": true + }, + "node_modules/@types/minimist": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.2.tgz", + "integrity": "sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ==", + "dev": true, + "peer": true + }, + "node_modules/@types/ms": { + "version": "0.7.31", + "resolved": "https://registry.npmjs.org/@types/ms/-/ms-0.7.31.tgz", + "integrity": "sha512-iiUgKzV9AuaEkZqkOLDIvlQiL6ltuZd9tGcW3gwpnX8JbuiuhFlEGmmFXEXkN50Cvq7Os88IY2v0dkDqXYWVgA==" + }, + "node_modules/@types/node": { + "version": "18.8.4", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.8.4.tgz", + "integrity": "sha512-WdlVphvfR/GJCLEMbNA8lJ0lhFNBj4SW3O+O5/cEGw9oYrv0al9zTwuQsq+myDUXgNx2jgBynoVgZ2MMJ6pbow==" + }, + "node_modules/@types/normalize-package-data": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.1.tgz", + "integrity": "sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw==", + "dev": true, + "peer": true + }, + "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==", + "dev": true, + "peer": true + }, + "node_modules/@types/prettier": { + "version": "2.7.2", + "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-2.7.2.tgz", + "integrity": "sha512-KufADq8uQqo1pYKVIYzfKbJfBAc0sOeXqGbFaSpv8MRmC/zXgowNZmFcbngndGk922QDmOASEXUZCaY48gs4cg==", + "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==", + "dev": true, + "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==", + "dev": true, + "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.0", + "resolved": "https://registry.npmjs.org/@types/retry/-/retry-0.12.0.tgz", + "integrity": "sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==", + "dev": true, + "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.12", + "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.3.12.tgz", + "integrity": "sha512-WwA1MW0++RfXmCr12xeYOOC5baSC9mSb0ZqCquFzKhcoF4TvHu5MKOuXsncgZcpVFhB1pXd5hZmM0ryAoCp12A==" + }, + "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==", + "dev": true, + "peer": true, + "dependencies": { + "@types/express": "*" + } + }, + "node_modules/@types/serve-static": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.0.tgz", + "integrity": "sha512-z5xyF6uh8CbjAu9760KDKsH2FcDxZ2tFCsA4HIMWE6IkiYMXfVoa+4f9KX+FN0ZLsaMw1WNG2ETLA6N+/YA+cg==", + "dev": true, + "peer": true, + "dependencies": { + "@types/mime": "*", + "@types/node": "*" + } + }, + "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==", + "dev": true, + "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==", + "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": "sha512-xevGOReSYGM7g/kUBZzPqCrR/KYAo+F0yiPc85WFTJa0MSLtyFTVTU6cJu/aV4mid7IffDIWqo69THF2o4JiEQ==", + "dev": true + }, + "node_modules/@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 + }, + "node_modules/@types/toastify-js": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@types/toastify-js/-/toastify-js-1.12.1.tgz", + "integrity": "sha512-9CTM+LKFmS0+Ii+RH55XPKcmNxCjLticj8kxeCxa7PnSVCZPQurb9XtKQtoMl/fv7WaqUpRezDcFuY8n92CtUg==" + }, + "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/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.17", + "resolved": "https://registry.npmjs.org/@types/web-bluetooth/-/web-bluetooth-0.0.17.tgz", + "integrity": "sha512-4p9vcSmxAayx72yn70joFoL44c9MO/0+iVEBIQXe3v2h2SiAsEIo/G5v6ObFWvNKRFjbrVadNf9LqEEZeQPzdA==" + }, + "node_modules/@types/ws": { + "version": "8.5.3", + "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.3.tgz", + "integrity": "sha512-6YOoWjruKj1uLf3INHH7D3qTXwFfEsg1kf3c0uDdSBJwfa/llkwIjrAGV7j7mVgGNbzTQ3HiHKKDXl6bJPD97w==", + "dev": true, + "peer": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/yargs": { + "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": "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/@typescript-eslint/eslint-plugin": { + "version": "5.48.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.48.1.tgz", + "integrity": "sha512-9nY5K1Rp2ppmpb9s9S2aBiF3xo5uExCehMDmYmmFqqyxgenbHJ3qbarcLt4ITgaD6r/2ypdlcFRdcuVPnks+fQ==", + "dev": true, + "peer": true, + "dependencies": { + "@typescript-eslint/scope-manager": "5.48.1", + "@typescript-eslint/type-utils": "5.48.1", + "@typescript-eslint/utils": "5.48.1", + "debug": "^4.3.4", + "ignore": "^5.2.0", + "natural-compare-lite": "^1.4.0", + "regexpp": "^3.2.0", + "semver": "^7.3.7", + "tsutils": "^3.21.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "@typescript-eslint/parser": "^5.0.0", + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/eslint-plugin/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/@typescript-eslint/eslint-plugin/node_modules/semver": { + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "dev": true, + "peer": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@typescript-eslint/eslint-plugin/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/@typescript-eslint/parser": { + "version": "5.48.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.48.1.tgz", + "integrity": "sha512-4yg+FJR/V1M9Xoq56SF9Iygqm+r5LMXvheo6DQ7/yUWynQ4YfCRnsKuRgqH4EQ5Ya76rVwlEpw4Xu+TgWQUcdA==", + "dev": true, + "peer": true, + "dependencies": { + "@typescript-eslint/scope-manager": "5.48.1", + "@typescript-eslint/types": "5.48.1", + "@typescript-eslint/typescript-estree": "5.48.1", + "debug": "^4.3.4" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/scope-manager": { + "version": "5.48.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.48.1.tgz", + "integrity": "sha512-S035ueRrbxRMKvSTv9vJKIWgr86BD8s3RqoRZmsSh/s8HhIs90g6UlK8ZabUSjUZQkhVxt7nmZ63VJ9dcZhtDQ==", + "dev": true, + "peer": true, + "dependencies": { + "@typescript-eslint/types": "5.48.1", + "@typescript-eslint/visitor-keys": "5.48.1" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/type-utils": { + "version": "5.48.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.48.1.tgz", + "integrity": "sha512-Hyr8HU8Alcuva1ppmqSYtM/Gp0q4JOp1F+/JH5D1IZm/bUBrV0edoewQZiEc1r6I8L4JL21broddxK8HAcZiqQ==", + "dev": true, + "peer": true, + "dependencies": { + "@typescript-eslint/typescript-estree": "5.48.1", + "@typescript-eslint/utils": "5.48.1", + "debug": "^4.3.4", + "tsutils": "^3.21.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "*" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/types": { + "version": "5.48.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.48.1.tgz", + "integrity": "sha512-xHyDLU6MSuEEdIlzrrAerCGS3T7AA/L8Hggd0RCYBi0w3JMvGYxlLlXHeg50JI9Tfg5MrtsfuNxbS/3zF1/ATg==", + "dev": true, + "peer": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/typescript-estree": { + "version": "5.48.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.48.1.tgz", + "integrity": "sha512-Hut+Osk5FYr+sgFh8J/FHjqX6HFcDzTlWLrFqGoK5kVUN3VBHF/QzZmAsIXCQ8T/W9nQNBTqalxi1P3LSqWnRA==", + "dev": true, + "peer": true, + "dependencies": { + "@typescript-eslint/types": "5.48.1", + "@typescript-eslint/visitor-keys": "5.48.1", + "debug": "^4.3.4", + "globby": "^11.1.0", + "is-glob": "^4.0.3", + "semver": "^7.3.7", + "tsutils": "^3.21.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/typescript-estree/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/@typescript-eslint/typescript-estree/node_modules/semver": { + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "dev": true, + "peer": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@typescript-eslint/typescript-estree/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/@typescript-eslint/utils": { + "version": "5.48.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.48.1.tgz", + "integrity": "sha512-SmQuSrCGUOdmGMwivW14Z0Lj8dxG1mOFZ7soeJ0TQZEJcs3n5Ndgkg0A4bcMFzBELqLJ6GTHnEU+iIoaD6hFGA==", + "dev": true, + "peer": true, + "dependencies": { + "@types/json-schema": "^7.0.9", + "@types/semver": "^7.3.12", + "@typescript-eslint/scope-manager": "5.48.1", + "@typescript-eslint/types": "5.48.1", + "@typescript-eslint/typescript-estree": "5.48.1", + "eslint-scope": "^5.1.1", + "eslint-utils": "^3.0.0", + "semver": "^7.3.7" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/@typescript-eslint/utils/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/@typescript-eslint/utils/node_modules/semver": { + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "dev": true, + "peer": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@typescript-eslint/utils/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/@typescript-eslint/visitor-keys": { + "version": "5.48.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.48.1.tgz", + "integrity": "sha512-Ns0XBwmfuX7ZknznfXozgnydyR8F6ev/KEGePP4i74uL3ArsKbEhJ7raeKr1JSa997DBDwol/4a0Y+At82c9dA==", + "dev": true, + "peer": true, + "dependencies": { + "@typescript-eslint/types": "5.48.1", + "eslint-visitor-keys": "^3.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/visitor-keys/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/compiler-sfc": { + "version": "2.7.14", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-2.7.14.tgz", + "integrity": "sha512-aNmNHyLPsw+sVvlQFQ2/8sjNuLtK54TC6cuKnVzAY93ks4ZBrvwQSnkkIh7bsbNhum5hJBS00wSDipQ937f5DA==", + "dependencies": { + "@babel/parser": "^7.18.4", + "postcss": "^8.4.14", + "source-map": "^0.6.1" + } + }, + "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, + "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/@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, + "dependencies": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/@vue/eslint-config-typescript": { + "version": "11.0.2", + "resolved": "https://registry.npmjs.org/@vue/eslint-config-typescript/-/eslint-config-typescript-11.0.2.tgz", + "integrity": "sha512-EiKud1NqlWmSapBFkeSrE994qpKx7/27uCGnhdqzllYDpQZroyX/O6bwjEpeuyKamvLbsGdO6PMR2faIf+zFnw==", + "dev": true, + "peer": true, + "dependencies": { + "@typescript-eslint/eslint-plugin": "^5.0.0", + "@typescript-eslint/parser": "^5.0.0", + "vue-eslint-parser": "^9.0.0" + }, + "engines": { + "node": "^14.17.0 || >=16.0.0" + }, + "peerDependencies": { + "eslint": "^6.2.0 || ^7.0.0 || ^8.0.0", + "eslint-plugin-vue": "^9.0.0", + "typescript": "*" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@vue/test-utils": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/@vue/test-utils/-/test-utils-1.3.5.tgz", + "integrity": "sha512-ezdlDNoxi5m/eP5Chg34AjnmNplrik4fyzB2DB9Yqa32OpywV8IvHqK9eCf+nIVsHFBejjV00agPFYRH2/D3Hg==", + "dev": true, + "dependencies": { + "dom-event-types": "^1.0.0", + "lodash": "^4.17.15", + "pretty": "^2.0.0" + }, + "peerDependencies": { + "vue": "2.x", + "vue-template-compiler": "^2.x" + } + }, + "node_modules/@vue/vue2-jest": { + "version": "29.2.4", + "resolved": "https://registry.npmjs.org/@vue/vue2-jest/-/vue2-jest-29.2.4.tgz", + "integrity": "sha512-oU/Ai4sufLlrhsj8GqRqfhMr6Ud4rehmwYP358/SjKcvUqOCoKa2lOBndDzG4uZVMNnQqQbKWIg7wqL3aRYPBA==", + "dev": true, + "dependencies": { + "@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": ">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/@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, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@vueuse/components": { + "version": "10.1.2", + "resolved": "https://registry.npmjs.org/@vueuse/components/-/components-10.1.2.tgz", + "integrity": "sha512-HlYFYCg3twMhnQgPS4/muz8XIYKViFVKnpL0Xtw5+9ib2gtWvu1Qu7hj6kDMDtOIw1CnNRsUbMLiNI+LXkxSSQ==", + "dependencies": { + "@vueuse/core": "10.1.2", + "@vueuse/shared": "10.1.2", + "vue-demi": ">=0.14.0" + } + }, + "node_modules/@vueuse/components/node_modules/vue-demi": { + "version": "0.14.0", + "resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.14.0.tgz", + "integrity": "sha512-gt58r2ogsNQeVoQ3EhoUAvUsH9xviydl0dWJj7dabBC/2L4uBId7ujtCwDRD0JhkGsV1i0CtfLAeyYKBht9oWg==", + "hasInstallScript": true, + "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/@vueuse/core": { + "version": "10.1.2", + "resolved": "https://registry.npmjs.org/@vueuse/core/-/core-10.1.2.tgz", + "integrity": "sha512-roNn8WuerI56A5uiTyF/TEYX0Y+VKlhZAF94unUfdhbDUI+NfwQMn4FUnUscIRUhv3344qvAghopU4bzLPNFlA==", + "dependencies": { + "@types/web-bluetooth": "^0.0.17", + "@vueuse/metadata": "10.1.2", + "@vueuse/shared": "10.1.2", + "vue-demi": ">=0.14.0" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@vueuse/core/node_modules/vue-demi": { + "version": "0.14.0", + "resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.14.0.tgz", + "integrity": "sha512-gt58r2ogsNQeVoQ3EhoUAvUsH9xviydl0dWJj7dabBC/2L4uBId7ujtCwDRD0JhkGsV1i0CtfLAeyYKBht9oWg==", + "hasInstallScript": true, + "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/@vueuse/metadata": { + "version": "10.1.2", + "resolved": "https://registry.npmjs.org/@vueuse/metadata/-/metadata-10.1.2.tgz", + "integrity": "sha512-3mc5BqN9aU2SqBeBuWE7ne4OtXHoHKggNgxZR2K+zIW4YLsy6xoZ4/9vErQs6tvoKDX6QAqm3lvsrv0mczAwIQ==", + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@vueuse/shared": { + "version": "10.1.2", + "resolved": "https://registry.npmjs.org/@vueuse/shared/-/shared-10.1.2.tgz", + "integrity": "sha512-1uoUTPBlgyscK9v6ScGeVYDDzlPSFXBlxuK7SfrDGyUTBiznb3mNceqhwvZHjtDRELZEN79V5uWPTF1VDV8svA==", + "dependencies": { + "vue-demi": ">=0.14.0" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@vueuse/shared/node_modules/vue-demi": { + "version": "0.14.0", + "resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.14.0.tgz", + "integrity": "sha512-gt58r2ogsNQeVoQ3EhoUAvUsH9xviydl0dWJj7dabBC/2L4uBId7ujtCwDRD0JhkGsV1i0CtfLAeyYKBht9oWg==", + "hasInstallScript": true, + "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/@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, + "dependencies": { + "@webassemblyjs/helper-numbers": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1" + } + }, + "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==", + "peer": true, + "dependencies": { + "@webassemblyjs/floating-point-hex-parser": "1.11.1", + "@webassemblyjs/helper-api-error": "1.11.1", + "@xtuc/long": "4.2.2" + } + }, + "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==", + "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" + } + }, + "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==", + "peer": true, + "dependencies": { + "@xtuc/ieee754": "^1.2.0" + } + }, + "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==", + "peer": true, + "dependencies": { + "@xtuc/long": "4.2.2" + } + }, + "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==", + "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" + } + }, + "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==", + "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" + } + }, + "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==", + "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" + } + }, + "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/@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, + "dependencies": { + "@webassemblyjs/ast": "1.11.1", + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@webpack-cli/configtest": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@webpack-cli/configtest/-/configtest-2.0.1.tgz", + "integrity": "sha512-njsdJXJSiS2iNbQVS0eT8A/KPnmyH4pv1APj2K0d1wrZcBLw+yppxOy4CGqa0OxDJkzfL/XELDhD8rocnIwB5A==", + "dev": true, + "peer": true, + "engines": { + "node": ">=14.15.0" + }, + "peerDependencies": { + "webpack": "5.x.x", + "webpack-cli": "5.x.x" + } + }, + "node_modules/@webpack-cli/info": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@webpack-cli/info/-/info-2.0.1.tgz", + "integrity": "sha512-fE1UEWTwsAxRhrJNikE7v4EotYflkEhBL7EbajfkPlf6E37/2QshOy/D48Mw8G5XMFlQtS6YV42vtbG9zBpIQA==", + "dev": true, + "peer": true, + "engines": { + "node": ">=14.15.0" + }, + "peerDependencies": { + "webpack": "5.x.x", + "webpack-cli": "5.x.x" + } + }, + "node_modules/@webpack-cli/serve": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@webpack-cli/serve/-/serve-2.0.1.tgz", + "integrity": "sha512-0G7tNyS+yW8TdgHwZKlDWYXFA6OJQnoLCQvYKkQP0Q2X205PSQ6RNUj0M+1OB/9gRQaUZ/ccYfaxd0nhaWKfjw==", + "dev": true, + "peer": true, + "engines": { + "node": ">=14.15.0" + }, + "peerDependencies": { + "webpack": "5.x.x", + "webpack-cli": "5.x.x" + }, + "peerDependenciesMeta": { + "webpack-dev-server": { + "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.6", + "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz", + "integrity": "sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==", + "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==", + "dependencies": { + "event-target-shim": "^5.0.0" + }, + "engines": { + "node": ">=6.5" + } + }, + "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, + "peer": true, + "dependencies": { + "mime-types": "~2.1.34", + "negotiator": "0.6.3" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/acorn": { + "version": "8.8.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.0.tgz", + "integrity": "sha512-QOxyigPVrpZ2GXT+PFyZTl6TtOFc5egxHIP9IlQ+RbupQuX4RkT/Bee4/kQuC02Xkzg84JcT7oLYtDIQxp+v7w==", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "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": { + "acorn": "^8.1.0", + "acorn-walk": "^8.0.2" + } + }, + "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/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": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "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/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" + }, + "engines": { + "node": ">=8.9" + } + }, + "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" + }, + "engines": { + "node": ">= 6.0.0" + } + }, + "node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "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" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "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" + }, + "peerDependencies": { + "ajv": "^8.0.0" + }, + "peerDependenciesMeta": { + "ajv": { + "optional": true + } + } + }, + "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, + "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/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, + "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/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": { + "type-fest": "^0.21.3" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "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" + ], + "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==", + "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": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "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": { + "color-name": "1.1.3" + } + }, + "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, + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "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, + "dependencies": { + "sprintf-js": "~1.0.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==", + "dev": true, + "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": { + "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": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "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, + "peer": true, + "engines": { + "node": ">=8" + } + }, + "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": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "es-abstract": "^1.19.2", + "es-shim-unscopables": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "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, + "engines": { + "node": ">=0.10.0" + } + }, + "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==", + "dependencies": { + "bn.js": "^4.0.0", + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0", + "safer-buffer": "^2.1.0" + } + }, + "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==" + }, + "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==", + "dependencies": { + "es6-object-assign": "^1.1.0", + "is-nan": "^1.2.1", + "object-is": "^1.0.1", + "util": "^0.12.0" + } + }, + "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, + "peer": true, + "engines": { + "node": ">=8" + } + }, + "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.5", + "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz", + "integrity": "sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==", + "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_modules/babel-jest": { + "version": "29.5.0", + "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-29.5.0.tgz", + "integrity": "sha512-mA4eCDh5mSo2EcA9xQjVTpmbbNk32Zb3Q3QFQsNhaK56Q+yoXowzFodLux30HRgyOho5rsQ6B0P9QpMkvvnJ0Q==", + "dev": true, + "dependencies": { + "@jest/transform": "^29.5.0", + "@types/babel__core": "^7.1.14", + "babel-plugin-istanbul": "^6.1.1", + "babel-preset-jest": "^29.5.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "slash": "^3.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.8.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==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "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": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "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.2", + "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-9.1.2.tgz", + "integrity": "sha512-mN14niXW43tddohGl8HPu5yfQq70iUThvFL/4QzESA7GcZoC0eVOhvWdQ8+3UlSjaDE9MVtsW9mxDY07W7VpVA==", + "dev": true, + "peer": true, + "dependencies": { + "find-cache-dir": "^3.3.2", + "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.5.0", + "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-29.5.0.tgz", + "integrity": "sha512-zSuuuAlTMT4mzLj2nPnUm6fsE6270vdOfnpbJ+RmruU75UhLFvL0N2NgI7xpeS7NaB6hGqmd5pVpGTDYvi4Q3w==", + "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.3", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.3.tgz", + "integrity": "sha512-bM3gHc337Dta490gg+/AseNB9L4YLHxq1nGKZZSHbhXv4aTYU2MD2cjza1Ru4S6975YLTaL1K8uJf6ukJhhmtw==", + "dev": true, + "dependencies": { + "@babel/compat-data": "^7.17.7", + "@babel/helper-define-polyfill-provider": "^0.4.0", + "semver": "^6.1.1" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/babel-plugin-polyfill-corejs3": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.8.1.tgz", + "integrity": "sha512-ikFrZITKg1xH6pLND8zT14UPgjKHiGLqex7rGEZCH2EvhsneJaJPemmpQaIZV5AL03II+lXylw3UmddDK8RU5Q==", + "dev": true, + "dependencies": { + "@babel/helper-define-polyfill-provider": "^0.4.0", + "core-js-compat": "^3.30.1" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/babel-plugin-polyfill-regenerator": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.5.0.tgz", + "integrity": "sha512-hDJtKjMLVa7Z+LwnTCxoDLQj6wdc+B8dun7ayF2fYieI6OzfuvcLMB32ihJZ4UhCBwNYGl5bg/x/P9cMdnkc2g==", + "dev": true, + "dependencies": { + "@babel/helper-define-polyfill-provider": "^0.4.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.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.5.0", + "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-29.5.0.tgz", + "integrity": "sha512-JOMloxOqdiBSxMAzjRaH023/vvcaSaec49zvg+2LmNsktC7ei39LTJGw02J+9uUtTZUq6xbLyJ4dxe9sSmIuAg==", + "dev": true, + "dependencies": { + "babel-plugin-jest-hoist": "^29.5.0", + "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==" + }, + "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", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "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/batch": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", + "integrity": "sha512-x+VAiMRL6UPkx+kudNvxTl6hB2XNNCG2r+7wixVfIYwu/2HKRXimwQyaumLjMveWvT2Hkd/cAJw+QBMfJ/EKVw==", + "dev": true, + "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==", + "engines": { + "node": "*" + } + }, + "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/bluebird": { + "version": "3.7.2", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", + "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==", + "dev": true + }, + "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==" + }, + "node_modules/body-parser": { + "version": "1.20.1", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.1.tgz", + "integrity": "sha512-jWi7abTbYwajOytWCQc37VulmWiRae5RyTpaCyDcS5/lMdtwSz5lOpDE67srw/HYe35f1z3fDQw+3txg7gNtWw==", + "dev": true, + "peer": true, + "dependencies": { + "bytes": "3.1.2", + "content-type": "~1.0.4", + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "on-finished": "2.4.1", + "qs": "6.11.0", + "raw-body": "2.5.1", + "type-is": "~1.6.18", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" + } + }, + "node_modules/body-parser/node_modules/bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", + "dev": true, + "peer": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/body-parser/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/body-parser/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/bonjour-service": { + "version": "1.0.14", + "resolved": "https://registry.npmjs.org/bonjour-service/-/bonjour-service-1.0.14.tgz", + "integrity": "sha512-HIMbgLnk1Vqvs6B4Wq5ep7mxvj9sGz5d1JJyDNSGNIdA/w2MCz6GTjWTdjqOJV1bEPj+6IkxDvWNFKEBxNt4kQ==", + "dev": true, + "peer": true, + "dependencies": { + "array-flatten": "^2.1.2", + "dns-equal": "^1.0.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==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "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/brorand": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", + "integrity": "sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==" + }, + "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==", + "dependencies": { + "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" + } + }, + "node_modules/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==", + "dependencies": { + "browserify-aes": "^1.0.4", + "browserify-des": "^1.0.0", + "evp_bytestokey": "^1.0.0" + } + }, + "node_modules/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==", + "dependencies": { + "cipher-base": "^1.0.1", + "des.js": "^1.0.0", + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "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==", + "dependencies": { + "bn.js": "^5.0.0", + "randombytes": "^2.0.1" + } + }, + "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==", + "dependencies": { + "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" + } + }, + "node_modules/browserify-sign/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==", + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/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==", + "dependencies": { + "pako": "~1.0.5" + } + }, + "node_modules/browserslist": { + "version": "4.21.7", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.7.tgz", + "integrity": "sha512-BauCXrQ7I2ftSqd2mvKHGo85XR0u7Ru3C/Hxsy/0TkfCtjrmAbPdzLGasmoiBxplpDXlPvdjX9u7srIMfgasNA==", + "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" + } + ], + "dependencies": { + "caniuse-lite": "^1.0.30001489", + "electron-to-chromium": "^1.4.411", + "node-releases": "^2.0.12", + "update-browserslist-db": "^1.0.11" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "node_modules/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, + "dependencies": { + "node-int64": "^0.4.0" + } + }, + "node_modules/buffer": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", + "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" + } + }, + "node_modules/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==" + }, + "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==" + }, + "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==" + }, + "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.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "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/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": "sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==", + "dev": true, + "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==", + "dependencies": { + "function-bind": "^1.1.1", + "get-intrinsic": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "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==", + "dev": true, + "peer": true, + "dependencies": { + "camelcase": "^5.3.1", + "map-obj": "^4.0.0", + "quick-lru": "^4.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001492", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001492.tgz", + "integrity": "sha512-2efF8SAZwgAX1FJr87KWhvuJxnGJKOnctQa8xLOskAXNXq8oiuqgl6u1kk3fFpsp3GgvzlRjiK1sl63hNtFADw==", + "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" + } + ] + }, + "node_modules/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, + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "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": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/char-regex": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/char-regex/-/char-regex-2.0.1.tgz", + "integrity": "sha512-oSvEeo6ZUD7NepqAat3RqoucZ5SeqLJgOvVIwkafu6IP3V0pO38s/ypdVUmDDK6qIIHNlYHJAKX9E7R7HoKElw==", + "engines": { + "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": "sha512-yrLQ/yVUFXkzg7EDQsPieE/53+0RlaWTs+wBrvW36cyilJ2SaDWfl4Yj7MtLTXleV9uEKefbAGUPv2/iWSooRA==", + "engines": { + "node": "*" + } + }, + "node_modules/chokidar": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", + "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + ], + "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/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-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "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==", + "peer": true, + "engines": { + "node": ">=6.0" + } + }, + "node_modules/ci-info": { + "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": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", + "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", + "dependencies": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "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==", + "dev": true + }, + "node_modules/clamp": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/clamp/-/clamp-1.0.1.tgz", + "integrity": "sha512-kgMuFyE78OC6Dyu3Dy7vcx4uy97EIbVxJB/B0eJ3bUNAkwdNcxYzgKltnyADiYwsR7SEqkkUPsEUT//OVS6XMA==" + }, + "node_modules/cliui": { + "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.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": "sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w==", + "engines": { + "node": ">=0.8" + } + }, + "node_modules/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, + "dependencies": { + "is-plain-object": "^2.0.4", + "kind-of": "^6.0.2", + "shallow-clone": "^3.0.0" + }, + "engines": { + "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", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", + "dev": true, + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "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", + "node": ">= 0.12.0" + } + }, + "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==", + "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==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "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==" + }, + "node_modules/color-string": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/color-string/-/color-string-1.9.1.tgz", + "integrity": "sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==", + "dependencies": { + "color-name": "^1.0.0", + "simple-swizzle": "^0.2.2" + } + }, + "node_modules/colord": { + "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.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/combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "dependencies": { + "delayed-stream": "~1.0.0" + }, + "engines": { + "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": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" + }, + "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==", + "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": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==", + "dev": true, + "peer": true + }, + "node_modules/compressible": { + "version": "2.0.18", + "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz", + "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==", + "dev": true, + "peer": true, + "dependencies": { + "mime-db": ">= 1.43.0 < 2" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/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, + "dependencies": { + "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" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/compression/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/compression/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/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, + "peer": true + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "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": "sha512-P7X+QL9Hb9B/c8HI5BFFKmjgBu2XpQuF98WZ9XkO+dBGgk5XgwiQz7o1SmpglNWId3581UcS0SFAWfoIhMHPfg==", + "dev": true, + "dependencies": { + "extend-shallow": "^2.0.1", + "is-whitespace": "^0.3.0", + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/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, + "dependencies": { + "ini": "^1.3.4", + "proto-list": "~1.2.1" + } + }, + "node_modules/connect-history-api-fallback": { + "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, + "peer": true, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/console-browserify": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.2.0.tgz", + "integrity": "sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA==" + }, + "node_modules/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, + "dependencies": { + "bluebird": "^3.1.1" + }, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/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==" + }, + "node_modules/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, + "dependencies": { + "safe-buffer": "5.2.1" + }, + "engines": { + "node": ">= 0.6" + } + }, + "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==", + "dev": true, + "peer": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/convert-source-map": { + "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.5.0", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz", + "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==", + "dev": true, + "peer": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/cookie-signature": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==", + "dev": true, + "peer": true + }, + "node_modules/core-js": { + "version": "3.32.2", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.32.2.tgz", + "integrity": "sha512-pxXSw1mYZPDGvTQqEc5vgIb83jGQKFGYWY76z4a7weZXUolw3G+OvpZqSRcfYOoOVUQJYEPsWeQK8pKEnUtWxQ==", + "hasInstallScript": true, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" + } + }, + "node_modules/core-js-compat": { + "version": "3.30.2", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.30.2.tgz", + "integrity": "sha512-nriW1nuJjUgvkEjIot1Spwakz52V9YkYHZAQG6A1eCgC8AA1p0zngrQEP9R0+V6hji5XilWKG1Bd0YRppmGimA==", + "dev": true, + "dependencies": { + "browserslist": "^4.21.5" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" + } + }, + "node_modules/core-util-is": { + "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 + }, + "node_modules/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, + "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" + } + }, + "node_modules/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==", + "dependencies": { + "bn.js": "^4.1.0", + "elliptic": "^6.5.3" + } + }, + "node_modules/create-ecdh/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==" + }, + "node_modules/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==", + "dependencies": { + "cipher-base": "^1.0.1", + "inherits": "^2.0.1", + "md5.js": "^1.3.4", + "ripemd160": "^2.0.1", + "sha.js": "^2.4.0" + } + }, + "node_modules/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==", + "dependencies": { + "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" + } + }, + "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==", + "dev": true, + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/crypt": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/crypt/-/crypt-0.0.2.tgz", + "integrity": "sha512-mCxBlsHFYh9C+HVpiEacem8FEBnMXgU9gy4zmNC+SXAZNB/1idgp/aulFJ4FgCi7GPEVbfyng092GqL2k2rmow==", + "engines": { + "node": "*" + } + }, + "node_modules/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==", + "dependencies": { + "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" + }, + "engines": { + "node": "*" + } + }, + "node_modules/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==", + "engines": { + "node": "*" + } + }, + "node_modules/css-functions-list": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/css-functions-list/-/css-functions-list-3.1.0.tgz", + "integrity": "sha512-/9lCvYZaUbBGvYUgYGFJ4dcYiyqdhSjG7IPVluoV8A1ILjkF7ilmhp1OGUz8n+nmBcu0RNrQAzgD8B6FJbrt2w==", + "dev": true, + "peer": true, + "engines": { + "node": ">=12.22" + } + }, + "node_modules/css-loader": { + "version": "6.7.1", + "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-6.7.1.tgz", + "integrity": "sha512-yB5CNFa14MbPJcomwNh3wLThtkZgcNyI2bNMRt8iE5Z8Vwl7f8vQXFAzn2HDOJvtDq2NTZBUGMSUNNyrv3/+cw==", + "dev": true, + "peer": true, + "dependencies": { + "icss-utils": "^5.1.0", + "postcss": "^8.4.7", + "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.2.0", + "semver": "^7.3.5" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.0.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==", + "dev": true, + "peer": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/css-loader/node_modules/semver": { + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "dev": true, + "peer": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/css-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/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": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0" + } + }, + "node_modules/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, + "bin": { + "cssesc": "bin/cssesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/cssom": { + "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": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-2.3.0.tgz", + "integrity": "sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A==", + "dev": true, + "dependencies": { + "cssom": "~0.3.6" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cssstyle/node_modules/cssom": { + "version": "0.3.8", + "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.3.8.tgz", + "integrity": "sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==", + "dev": true + }, + "node_modules/csstype": { + "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==", + "optional": true, + "engines": { + "node": ">= 12" + } + }, + "node_modules/data-urls": { + "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.6", + "whatwg-mimetype": "^3.0.0", + "whatwg-url": "^11.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/date-format-parse": { + "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": "sha512-e/1zu3xH5MQryN2zdVaF0OrdNLUbvWxzMbi+iNA6Bky7l1RoP8a2fIbRocyHclXt/arDrrR6lL3TqFD9pMQTsg==", + "dev": true + }, + "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==", + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "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" + } + }, + "node_modules/decamelize-keys": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.0.tgz", + "integrity": "sha512-ocLWuYzRPoS9bfiSdDd3cxvrzovVMZnRDVEzAs+hWIVXGDbHxWMECij2OBuyB/An0FFW/nLuq6Kv1i/YC5Qfzg==", + "dev": true, + "peer": true, + "dependencies": { + "decamelize": "^1.1.0", + "map-obj": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "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": "sha512-7N/q3lyZ+LVCp7PzuxrJr4KMbBE2hW7BT7YNia330OFxIf4d3r5zVpicP2650l7CPN6RM9zOJRl3NGpqSiw3Eg==", + "dev": true, + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/decimal.js": { + "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-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": "sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA==", + "dev": true + }, + "node_modules/deep-is": { + "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.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==", + "dev": true, + "peer": true, + "dependencies": { + "execa": "^5.0.0" + }, + "engines": { + "node": ">= 10" + } + }, + "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==", + "dev": true, + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/define-properties": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.4.tgz", + "integrity": "sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==", + "dependencies": { + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" + }, + "engines": { + "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": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/depd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", + "dev": true, + "peer": true, + "engines": { + "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==", + "dependencies": { + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0" + } + }, + "node_modules/destroy": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", + "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", + "dev": true, + "peer": true, + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" + } + }, + "node_modules/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, + "engines": { + "node": ">=8" + } + }, + "node_modules/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 + }, + "node_modules/diff": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/diff/-/diff-5.1.0.tgz", + "integrity": "sha512-D+mk+qE8VC/PAUrlAU34N+VfXev0ghe5ywmpqrawphmVZc1bEfn56uo9qpyGp1p4xpzOHkSW4ztBd6L7Xx4ACw==", + "engines": { + "node": ">=0.3.1" + } + }, + "node_modules/diff-sequences": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-29.4.3.tgz", + "integrity": "sha512-ofrBgwpPhCD85kMKtE9RYFFq6OC1A89oW2vvgWZNCwxrUpRUILopY7lsYyMDSjc8g6U6aiO0Qubg6r4Wgt5ZnA==", + "dev": true, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/diffie-hellman": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", + "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", + "dependencies": { + "bn.js": "^4.1.0", + "miller-rabin": "^4.0.0", + "randombytes": "^2.0.0" + } + }, + "node_modules/diffie-hellman/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==" + }, + "node_modules/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, + "dependencies": { + "path-type": "^4.0.0" + }, + "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": "sha512-z+paD6YUQsk+AbGCEM4PrOXSss5gd66QfcVBFTKR/HpFL9jCqikS94HYwKww6fQyO7IxrIIyUu+g0Ka9tUS2Cg==", + "dev": true, + "peer": true + }, + "node_modules/dns-packet": { + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-5.4.0.tgz", + "integrity": "sha512-EgqGeaBB8hLiHLZtp/IbaDQTL8pZ0+IvwzSHA6d7VyMDM+B9hgddEMa9xjK5oYnw0ci0JQ6g2XCD7/f6cafU6g==", + "dev": true, + "peer": true, + "dependencies": { + "@leichtgewicht/ip-codec": "^2.0.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "dev": true, + "peer": true, + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/dom-event-types": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/dom-event-types/-/dom-event-types-1.1.0.tgz", + "integrity": "sha512-jNCX+uNJ3v38BKvPbpki6j5ItVlnSqVV6vDWGS6rExzCMjsc39frLjm1n91o6YaKK6AZl0wLloItW6C6mr61BQ==", + "dev": true + }, + "node_modules/dom-serializer": { + "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.3.0", + "domhandler": "^5.0.2", + "entities": "^4.2.0" + }, + "funding": { + "url": "https://github.com/cheeriojs/dom-serializer?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==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://bevry.me/fund" + } + }, + "node_modules/domelementtype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", + "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ], + "peer": true + }, + "node_modules/domexception": { + "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": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/domhandler": { + "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.3.0" + }, + "engines": { + "node": ">= 4" + }, + "funding": { + "url": "https://github.com/fb55/domhandler?sponsor=1" + } + }, + "node_modules/dompurify": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-3.0.3.tgz", + "integrity": "sha512-axQ9zieHLnAnHh0sfAamKYiqXMJAVwu+LM/alQ7WDagoWessyWvMSFyW65CqF3owufNu8HBcE4cM2Vflu7YWcQ==" + }, + "node_modules/domutils": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.0.1.tgz", + "integrity": "sha512-z08c1l761iKhDFtfXO04C7kTdPBLi41zwOZl00WS8b5eiaebNpY00HKbztwBq+e3vyqWNwWF3mP9YLUeqIrF+Q==", + "dev": true, + "peer": true, + "dependencies": { + "dom-serializer": "^2.0.0", + "domelementtype": "^2.3.0", + "domhandler": "^5.0.1" + }, + "funding": { + "url": "https://github.com/fb55/domutils?sponsor=1" + } + }, + "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==", + "dev": true, + "dependencies": { + "commander": "^2.19.0", + "lru-cache": "^4.1.5", + "semver": "^5.6.0", + "sigmund": "^1.0.1" + }, + "bin": { + "editorconfig": "bin/editorconfig" + } + }, + "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==", + "dev": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==", + "dev": true, + "peer": true + }, + "node_modules/electron-to-chromium": { + "version": "1.4.417", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.417.tgz", + "integrity": "sha512-8rY8HdCxuSVY8wku3i/eDac4g1b4cSbruzocenrqBlzqruAZYHjQCHIjC66dLR9DXhEHTojsC4EjhZ8KmzwXqA==" + }, + "node_modules/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==" + }, + "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==", + "dependencies": { + "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" + } + }, + "node_modules/elliptic/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==" + }, + "node_modules/emittery": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.13.1.tgz", + "integrity": "sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sindresorhus/emittery?sponsor=1" + } + }, + "node_modules/emoji-mart-vue-fast": { + "version": "12.0.1", + "resolved": "https://registry.npmjs.org/emoji-mart-vue-fast/-/emoji-mart-vue-fast-12.0.1.tgz", + "integrity": "sha512-qO8F9aduHwPGEU2U1YobOH3lRXEMvrjej6KdhGMnSoMJ+OFSmNf+pUal/MbrEn0RUy+Uqc7U9sPopA+3ipK4+g==", + "dependencies": { + "@babel/runtime": "^7.18.6", + "core-js": "^3.23.5" + }, + "peerDependencies": { + "vue": ">2.0.0" + } + }, + "node_modules/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 + }, + "node_modules/emojis-list": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", + "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", + "engines": { + "node": ">= 4" + } + }, + "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, + "peer": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/enhanced-resolve": { + "version": "5.10.0", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.10.0.tgz", + "integrity": "sha512-T0yTFjdpldGY8PmuXXR0PyQ1ufZpEGiHVrp7zHKB7jdR4qlmZHhONVM5AQOAWXuF/w3dnHbEQVrNptJgt7F+cQ==", + "peer": true, + "dependencies": { + "graceful-fs": "^4.2.4", + "tapable": "^2.2.0" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/entities": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.4.0.tgz", + "integrity": "sha512-oYp7156SP8LkeGD0GF85ad1X9Ai79WtRsZ2gxJqtBuzH+98YUV6jkHEKlZkMbcrjJjIVJNIDP/3WL9wQkoPbWA==", + "dev": true, + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/envinfo": { + "version": "7.8.1", + "resolved": "https://registry.npmjs.org/envinfo/-/envinfo-7.8.1.tgz", + "integrity": "sha512-/o+BXHmB7ocbHEAs6F2EnG0ogybVVUdkRunTT2glZU9XAaGmhqskrvKwqXuDfNjEO0LZKWdejEEpnq8aM0tOaw==", + "dev": true, + "peer": true, + "bin": { + "envinfo": "dist/cli.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/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, + "dependencies": { + "is-arrayish": "^0.2.1" + } + }, + "node_modules/es-abstract": { + "version": "1.20.4", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.20.4.tgz", + "integrity": "sha512-0UtvRN79eMe2L+UNEF1BwRe364sj/DXhQ/k5FmivgoSdpM90b8Jc0mDzKMGo7QS0BVbOP/bTwBKNnDc9rNzaPA==", + "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.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.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.2", + "object-keys": "^1.1.1", + "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" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "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==", + "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==", + "dependencies": { + "is-callable": "^1.1.4", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "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==" + }, + "node_modules/escalade": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "engines": { + "node": ">=6" + } + }, + "node_modules/escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==" + }, + "node_modules/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, + "engines": { + "node": ">=8" + } + }, + "node_modules/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, + "dependencies": { + "esprima": "^4.0.1", + "estraverse": "^5.2.0", + "esutils": "^2.0.2", + "optionator": "^0.8.1" + }, + "bin": { + "escodegen": "bin/escodegen.js", + "esgenerate": "bin/esgenerate.js" + }, + "engines": { + "node": ">=6.0" + }, + "optionalDependencies": { + "source-map": "~0.6.1" + } + }, + "node_modules/escodegen/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, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/escodegen/node_modules/levn": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", + "integrity": "sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA==", + "dev": true, + "dependencies": { + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/escodegen/node_modules/optionator": { + "version": "0.8.3", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz", + "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==", + "dev": true, + "dependencies": { + "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" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "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": "sha512-ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w==", + "dev": true, + "engines": { + "node": ">= 0.8.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": "sha512-ZCmOJdvOWDBYJlzAoFkC+Q0+bUyEOS1ltgp1MGU03fqHG+dbi9tBFU2Rd9QKiDZFAYrhPh2JUf7rZRIuHRKtOg==", + "dev": true, + "dependencies": { + "prelude-ls": "~1.1.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/eslint": { + "version": "8.28.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.28.0.tgz", + "integrity": "sha512-S27Di+EVyMxcHiwDrFzk8dJYAaD+/5SoWKxL1ri/71CRHsnJnRDPNt2Kzj24+MT9FDupf4aqqyqPrvI8MvQ4VQ==", + "dev": true, + "peer": true, + "dependencies": { + "@eslint/eslintrc": "^1.3.3", + "@humanwhocodes/config-array": "^0.11.6", + "@humanwhocodes/module-importer": "^1.0.1", + "@nodelib/fs.walk": "^1.2.8", + "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.4.0", + "esquery": "^1.4.0", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^6.0.1", + "find-up": "^5.0.0", + "glob-parent": "^6.0.2", + "globals": "^13.15.0", + "grapheme-splitter": "^1.0.4", + "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-sdsl": "^4.1.4", + "js-yaml": "^4.1.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.4.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.1.2", + "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" + }, + "bin": { + "eslint": "bin/eslint.js" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint-config-standard": { + "version": "17.0.0", + "resolved": "https://registry.npmjs.org/eslint-config-standard/-/eslint-config-standard-17.0.0.tgz", + "integrity": "sha512-/2ks1GKyqSOkH7JFvXJicu0iMpoojkwB+f5Du/1SC0PtBL+s8v30k9njRZ21pm2drKYm2342jFnGWzttxPmZVg==", + "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, + "peerDependencies": { + "eslint": "^8.0.1", + "eslint-plugin-import": "^2.25.2", + "eslint-plugin-n": "^15.0.0", + "eslint-plugin-promise": "^6.0.0" + } + }, + "node_modules/eslint-import-resolver-exports": { + "version": "1.0.0-beta.4", + "resolved": "https://registry.npmjs.org/eslint-import-resolver-exports/-/eslint-import-resolver-exports-1.0.0-beta.4.tgz", + "integrity": "sha512-aN/vmABEJI9gXk881f2wmflfvdVskGvguFXtcSx2ym35ETWPNj/tp+9KNCTe/4AbA7LkgN88GD8IKHneYXWxqQ==", + "dev": true, + "peer": true, + "dependencies": { + "resolve.exports": "^1.1.1" + }, + "peerDependencies": { + "eslint": "*", + "eslint-plugin-import": "*" + } + }, + "node_modules/eslint-import-resolver-exports/node_modules/resolve.exports": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-1.1.1.tgz", + "integrity": "sha512-/NtpHNDN7jWhAaQ9BvBUYZ6YTXsRBgfqWFWP7BZBaoMJO/I3G5OFzvTuWNlZC3aPjins1F+TNrLKsGbH4rfsRQ==", + "dev": true, + "peer": true, + "engines": { + "node": ">=10" + } + }, + "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", + "integrity": "sha512-0En0w03NRVMn9Uiyn8YRPDKvWjxCWkslUEhGNTdGx15RvPJYQ+lbOlqrlNI2vEAs4pDYK4f/HN2TbDmk5TP0iw==", + "dev": true, + "peer": true, + "dependencies": { + "debug": "^3.2.7", + "resolve": "^1.20.0" + } + }, + "node_modules/eslint-import-resolver-node/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_modules/eslint-module-utils": { + "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" + }, + "engines": { + "node": ">=4" + }, + "peerDependenciesMeta": { + "eslint": { + "optional": true + } + } + }, + "node_modules/eslint-module-utils/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_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-es/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==", + "dev": true, + "peer": true, + "dependencies": { + "eslint-visitor-keys": "^1.1.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/mysticatea" + } + }, + "node_modules/eslint-plugin-es/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" + } + }, + "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": { + "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-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": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true, + "peer": true + }, + "node_modules/eslint-plugin-jsdoc": { + "version": "39.6.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-39.6.2.tgz", + "integrity": "sha512-dvgY/W7eUFoAIIiaWHERIMI61ZWqcz9YFjEeyTzdPlrZc3TY/3aZm5aB91NUoTLWYZmO/vFlYSuQi15tF7uE5A==", + "dev": true, + "peer": true, + "dependencies": { + "@es-joy/jsdoccomment": "~0.36.0", + "comment-parser": "1.3.1", + "debug": "^4.3.4", + "escape-string-regexp": "^4.0.0", + "esquery": "^1.4.0", + "semver": "^7.3.8", + "spdx-expression-parse": "^3.0.1" + }, + "engines": { + "node": "^14 || ^16 || ^17 || ^18 || ^19" + }, + "peerDependencies": { + "eslint": "^7.0.0 || ^8.0.0" + } + }, + "node_modules/eslint-plugin-jsdoc/node_modules/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, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint-plugin-jsdoc/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/eslint-plugin-jsdoc/node_modules/semver": { + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "dev": true, + "peer": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/eslint-plugin-jsdoc/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-n": { + "version": "15.5.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-n/-/eslint-plugin-n-15.5.1.tgz", + "integrity": "sha512-kAd+xhZm7brHoFLzKLB7/FGRFJNg/srmv67mqb7tto22rpr4wv/LV6RuXzAfv3jbab7+k1wi42PsIhGviywaaw==", + "dev": true, + "peer": true, + "dependencies": { + "builtins": "^5.0.1", + "eslint-plugin-es": "^4.1.0", + "eslint-utils": "^3.0.0", + "ignore": "^5.1.1", + "is-core-module": "^2.11.0", + "minimatch": "^3.1.2", + "resolve": "^1.22.1", + "semver": "^7.3.8" + }, + "engines": { + "node": ">=12.22.0" + }, + "funding": { + "url": "https://github.com/sponsors/mysticatea" + }, + "peerDependencies": { + "eslint": ">=7.0.0" + } + }, + "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": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/eslint-plugin-n/node_modules/semver": { + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "dev": true, + "peer": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "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.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": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "peerDependencies": { + "eslint": "^7.0.0 || ^8.0.0" + } + }, + "node_modules/eslint-plugin-vue": { + "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": "^9.0.1", + "xml-name-validator": "^4.0.0" + }, + "engines": { + "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/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/eslint-plugin-vue/node_modules/semver": { + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "dev": true, + "peer": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/eslint-plugin-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 + }, + "node_modules/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, + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "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-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" + } + }, + "node_modules/eslint/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/eslint/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/eslint/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/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", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "dev": true, + "peer": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "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==", + "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/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==", + "dev": true, + "peer": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/eslint/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/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": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint/node_modules/globals": { + "version": "13.17.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.17.0.tgz", + "integrity": "sha512-1C+6nQRb1GwGMKm2dH/E7enFAMxGTmGI7/dEdhy/DNelv85w9B72t3uc5frtMNXIbzrarJJ/lTCjcaZwbLJmyw==", + "dev": true, + "peer": true, + "dependencies": { + "type-fest": "^0.20.2" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint/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/eslint/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, + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "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": { + "p-locate": "^5.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "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" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "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": { + "p-limit": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "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, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "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, + "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.4.0", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.4.0.tgz", + "integrity": "sha512-DQmnRpLj7f6TgN/NYb0MTzJXL+vJF9h3pHy4JhCIs3zwcgez8xmGg3sXHcEO97BrmO2OSvCwMdfdlyl+E9KjOw==", + "dev": true, + "peer": true, + "dependencies": { + "acorn": "^8.8.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^3.3.0" + }, + "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==", + "dev": true, + "peer": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "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/esquery": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", + "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", + "dev": true, + "peer": true, + "dependencies": { + "estraverse": "^5.1.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/esquery/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/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, + "dependencies": { + "estraverse": "^5.2.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esrecurse/node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "peer": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "peer": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esutils": { + "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" + } + }, + "node_modules/etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", + "dev": true, + "peer": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/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==", + "engines": { + "node": ">=6" + } + }, + "node_modules/eventemitter3": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", + "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==", + "dev": true, + "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==", + "engines": { + "node": ">=0.8.x" + } + }, + "node_modules/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==", + "dependencies": { + "md5.js": "^1.3.4", + "safe-buffer": "^5.1.1" + } + }, + "node_modules/execa": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", + "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", + "dev": true, + "dependencies": { + "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" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" + } + }, + "node_modules/exit": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", + "integrity": "sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==", + "dev": true, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/expect": { + "version": "29.5.0", + "resolved": "https://registry.npmjs.org/expect/-/expect-29.5.0.tgz", + "integrity": "sha512-yM7xqUrCO2JdpFo4XpM82t+PJBFybdqoQuJLDGeDX2ij8NZzqRHyu3Hp188/JX7SWqud+7t4MUdvcgGBICMHZg==", + "dev": true, + "dependencies": { + "@jest/expect-utils": "^29.5.0", + "jest-get-type": "^29.4.3", + "jest-matcher-utils": "^29.5.0", + "jest-message-util": "^29.5.0", + "jest-util": "^29.5.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/express": { + "version": "4.18.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.18.2.tgz", + "integrity": "sha512-5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ==", + "dev": true, + "peer": true, + "dependencies": { + "accepts": "~1.3.8", + "array-flatten": "1.1.1", + "body-parser": "1.20.1", + "content-disposition": "0.5.4", + "content-type": "~1.0.4", + "cookie": "0.5.0", + "cookie-signature": "1.0.6", + "debug": "2.6.9", + "depd": "2.0.0", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "finalhandler": "1.2.0", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "merge-descriptors": "1.0.1", + "methods": "~1.1.2", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "path-to-regexp": "0.1.7", + "proxy-addr": "~2.0.7", + "qs": "6.11.0", + "range-parser": "~1.2.1", + "safe-buffer": "5.2.1", + "send": "0.18.0", + "serve-static": "1.15.0", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "type-is": "~1.6.18", + "utils-merge": "1.0.1", + "vary": "~1.1.2" + }, + "engines": { + "node": ">= 0.10.0" + } + }, + "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": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==", + "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, + "peer": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/express/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/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": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", + "dev": true, + "dependencies": { + "is-extendable": "^0.1.0" + }, + "engines": { + "node": ">=0.10.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==" + }, + "node_modules/fast-glob": { + "version": "3.2.12", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.12.tgz", + "integrity": "sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==", + "dev": true, + "peer": true, + "dependencies": { + "@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" + }, + "engines": { + "node": ">=8.6.0" + } + }, + "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-glob": "^4.0.1" + }, + "engines": { + "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==" + }, + "node_modules/fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", + "dev": true + }, + "node_modules/fast-xml-parser": { + "version": "4.2.5", + "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-4.2.5.tgz", + "integrity": "sha512-B9/wizE4WngqQftFPmdaMYlXoJlJOYxGQOanC77fq9k8+Z0v5dDSVh+3glErdIROP//s/jgb7ZuxKfB8nVyo0g==", + "funding": [ + { + "type": "paypal", + "url": "https://paypal.me/naturalintelligence" + }, + { + "type": "github", + "url": "https://github.com/sponsors/NaturalIntelligence" + } + ], + "dependencies": { + "strnum": "^1.0.5" + }, + "bin": { + "fxparser": "src/cli/cli.js" + } + }, + "node_modules/fastest-levenshtein": { + "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, + "engines": { + "node": ">= 4.9.1" + } + }, + "node_modules/fastq": { + "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": { + "reusify": "^1.0.4" + } + }, + "node_modules/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, + "dependencies": { + "websocket-driver": ">=0.5.1" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/fb-watchman": { + "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" + } + ], + "optional": true, + "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", + "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", + "dev": true, + "peer": true, + "dependencies": { + "flat-cache": "^3.0.4" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "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/filter-obj": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/filter-obj/-/filter-obj-2.0.2.tgz", + "integrity": "sha512-lO3ttPjHZRfjMcxWKb1j1eDhTFsu4meeR3lnMcnBFhk6RuLhvEiuALu2TlfL310ph4lCYYwgF/ElIjdP739tdg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/finalhandler": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", + "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", + "dev": true, + "peer": true, + "dependencies": { + "debug": "2.6.9", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "statuses": "2.0.1", + "unpipe": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/finalhandler/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/finalhandler/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/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, + "dependencies": { + "commondir": "^1.0.1", + "make-dir": "^3.0.2", + "pkg-dir": "^4.1.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/avajs/find-cache-dir?sponsor=1" + } + }, + "node_modules/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, + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/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, + "dependencies": { + "flatted": "^3.1.0", + "rimraf": "^3.0.2" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/flatted": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz", + "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==", + "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.15.2", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.2.tgz", + "integrity": "sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==", + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/RubenVerborgh" + } + ], + "engines": { + "node": ">=4.0" + }, + "peerDependenciesMeta": { + "debug": { + "optional": true + } + } + }, + "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==", + "dependencies": { + "is-callable": "^1.1.3" + } + }, + "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", + "mime-types": "^2.1.12" + }, + "engines": { + "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==", + "optional": true, + "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, + "peer": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", + "dev": true, + "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": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "dev": true + }, + "node_modules/fsevents": { + "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": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" + }, + "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==", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "es-abstract": "^1.19.0", + "functions-have-names": "^1.2.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "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==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/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, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/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, + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/get-intrinsic": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.3.tgz", + "integrity": "sha512-QJVz1Tj7MS099PevUG5jvnt9tSkXN8K14dxQlikJuPt4uD9hHAHjLyLBiLR5zELelBdD9QNRAXZzsJx0WaDL9A==", + "dependencies": { + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/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, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/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, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/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==", + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/glob": { + "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.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "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==", + "dev": true, + "peer": true, + "dependencies": { + "is-glob": "^4.0.3" + }, + "engines": { + "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==", + "peer": true + }, + "node_modules/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, + "dependencies": { + "global-prefix": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/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, + "dependencies": { + "ini": "^1.3.5", + "kind-of": "^6.0.2", + "which": "^1.3.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/global-prefix/node_modules/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, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/global-prefix/node_modules/which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dev": true, + "peer": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "which": "bin/which" + } + }, + "node_modules/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, + "engines": { + "node": ">=4" + } + }, + "node_modules/globby": { + "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.2.9", + "ignore": "^5.2.0", + "merge2": "^1.4.1", + "slash": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/globjoin": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/globjoin/-/globjoin-0.1.4.tgz", + "integrity": "sha512-xYfnw62CKG8nLkZBfWbhWwDw02CHty86jfPcc2cr3ZfeuK9ysoVPPEUxf21bAD/rWAgk52SuBrLJlefNy8mvFg==", + "dev": true, + "peer": true + }, + "node_modules/graceful-fs": { + "version": "4.2.10", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", + "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==" + }, + "node_modules/grapheme-splitter": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz", + "integrity": "sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==", + "dev": true, + "peer": true + }, + "node_modules/hammerjs": { + "version": "2.0.8", + "resolved": "https://registry.npmjs.org/hammerjs/-/hammerjs-2.0.8.tgz", + "integrity": "sha512-tSQXBXS/MWQOn/RKckawJ61vvsDpCom87JgxiYdGwHdOa0ht0vzUWDlfioofFCRU0L+6NGDt6XzbgoJvZkMeRQ==", + "engines": { + "node": ">=0.8.0" + } + }, + "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, + "peer": true + }, + "node_modules/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, + "engines": { + "node": ">=6" + } + }, + "node_modules/has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "dependencies": { + "function-bind": "^1.1.1" + }, + "engines": { + "node": ">= 0.4.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==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "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==", + "dependencies": { + "get-intrinsic": "^1.1.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-symbols": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "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==", + "dependencies": { + "has-symbols": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "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==", + "dependencies": { + "inherits": "^2.0.4", + "readable-stream": "^3.6.0", + "safe-buffer": "^5.2.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/hash-base/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==", + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/hash-sum": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/hash-sum/-/hash-sum-1.0.2.tgz", + "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==", + "dependencies": { + "inherits": "^2.0.3", + "minimalistic-assert": "^1.0.1" + } + }, + "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-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==", + "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==", + "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.0", + "resolved": "https://registry.npmjs.org/hot-patcher/-/hot-patcher-2.0.0.tgz", + "integrity": "sha512-rwJ0ZqSFgm+5oD0KiGBVinyPWRJESRSsHlEWDzZjyOe/OfhD9tynHqUyUIGX2fWuV+BihW4nXxeoZRJVHid64w==" + }, + "node_modules/hpack.js": { + "version": "2.1.6", + "resolved": "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz", + "integrity": "sha512-zJxVehUdMGIKsRaNt7apO2Gqp0BdqW5yaiGHXXmbpvxgBYVZnAql+BJb4RO5ad2MgpbZKn5G6nMnegrH1FcNYQ==", + "dev": true, + "peer": true, + "dependencies": { + "inherits": "^2.0.1", + "obuf": "^1.0.0", + "readable-stream": "^2.0.1", + "wbuf": "^1.1.0" + } + }, + "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==", + "dev": true, + "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/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, + "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, + "peer": true, + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/html-encoding-sniffer": { + "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": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/html-entities": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-2.3.3.tgz", + "integrity": "sha512-DV5Ln36z34NNTDgnz0EWGBLZENelNAtkiFA4kyNOG2tDI6Mz1uSWiq1wAKdyjnJwyDiDO7Fa2SO1CTxPXL8VxA==", + "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", + "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", + "dev": true + }, + "node_modules/html-tags": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/html-tags/-/html-tags-3.2.0.tgz", + "integrity": "sha512-vy7ClnArOZwCnqZgvv+ddgHgJiAFXe3Ge9ML5/mBctVJoUoYPCdxVucOywjDARn6CVoh3dRSFdPHy2sX80L0Wg==", + "dev": true, + "peer": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/htmlparser2": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-8.0.1.tgz", + "integrity": "sha512-4lVbmc1diZC7GUJQtRQ5yBAeUCL1exyMwmForWkRLnwyzWBFxN633SALPMGYaWZvKe9j1pRZJpauvmxENSp/EA==", + "dev": true, + "funding": [ + "https://github.com/fb55/htmlparser2?sponsor=1", + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ], + "peer": true, + "dependencies": { + "domelementtype": "^2.3.0", + "domhandler": "^5.0.2", + "domutils": "^3.0.1", + "entities": "^4.3.0" + } + }, + "node_modules/http-deceiver": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz", + "integrity": "sha512-LmpOGxTfbpgtGVxJrj5k7asXHCgNZp5nLfp+hWc8QQRqtb7fUy6kRY3BO1h9ddF6yIPYUARgxGOwB42DnxIaNw==", + "dev": true, + "peer": true + }, + "node_modules/http-errors": { + "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, + "peer": true, + "dependencies": { + "depd": "2.0.0", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "toidentifier": "1.0.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/http-parser-js": { + "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, + "peer": true + }, + "node_modules/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, + "dependencies": { + "eventemitter3": "^4.0.0", + "follow-redirects": "^1.0.0", + "requires-port": "^1.0.0" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/http-proxy-agent": { + "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": "2", + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/http-proxy-middleware": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-2.0.6.tgz", + "integrity": "sha512-ya/UeJ6HVBYxrgYotAZo1KvPWlgB48kUJLDePFeneHsVujFaW5WNj2NgWCAE//B1Dl02BIfYlpNgBy8Kf8Rjmw==", + "dev": true, + "peer": true, + "dependencies": { + "@types/http-proxy": "^1.17.8", + "http-proxy": "^1.18.1", + "is-glob": "^4.0.1", + "is-plain-obj": "^3.0.0", + "micromatch": "^4.0.2" + }, + "engines": { + "node": ">=12.0.0" + }, + "peerDependencies": { + "@types/express": "^4.17.13" + }, + "peerDependenciesMeta": { + "@types/express": { + "optional": true + } + } + }, + "node_modules/http-proxy-middleware/node_modules/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, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "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==" + }, + "node_modules/https-proxy-agent": { + "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", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/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, + "engines": { + "node": ">=10.17.0" + } + }, + "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==" + }, + "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/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, + "peer": true, + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3" + }, + "engines": { + "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", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", + "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/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, + "engines": { + "node": ">= 4" + } + }, + "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==", + "dev": true, + "peer": true + }, + "node_modules/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, + "dependencies": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/import-fresh/node_modules/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, + "engines": { + "node": ">=4" + } + }, + "node_modules/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, + "engines": { + "node": ">=8" + } + }, + "node_modules/import-local": { + "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", + "resolve-cwd": "^3.0.0" + }, + "bin": { + "import-local-fixture": "fixtures/cli.js" + }, + "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": "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==", + "dev": true, + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "dev": true, + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "node_modules/ini": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "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==", + "dependencies": { + "get-intrinsic": "^1.1.0", + "has": "^1.0.3", + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/interpret": { + "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": ">=10.13.0" + } + }, + "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==", + "dev": true, + "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==", + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", + "dev": true + }, + "node_modules/is-bigint": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", + "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", + "dependencies": { + "has-bigints": "^1.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "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/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==", + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" + }, + "node_modules/is-callable": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", + "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-core-module": { + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.11.0.tgz", + "integrity": "sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==", + "dev": true, + "dependencies": { + "has": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-date-object": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", + "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "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==", + "dev": true, + "peer": true, + "bin": { + "is-docker": "cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "dev": true, + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/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, + "engines": { + "node": ">=8" + } + }, + "node_modules/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, + "engines": { + "node": ">=6" + } + }, + "node_modules/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==", + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/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, + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "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==", + "dependencies": { + "call-bind": "^1.0.0", + "define-properties": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/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==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "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==", + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/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, + "engines": { + "node": ">=8" + } + }, + "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": "sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg==", + "dev": true, + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "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==", + "dev": true, + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/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 + }, + "node_modules/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==", + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "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==", + "dependencies": { + "call-bind": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-stream": { + "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": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", + "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-svg": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/is-svg/-/is-svg-4.4.0.tgz", + "integrity": "sha512-v+AgVwiK5DsGtT9ng+m4mClp6zDAmwrW8nZi6Gg15qzvBnRWWdfWA1TGaXyCDnWq5g5asofIgMVl3PjKxvk1ug==", + "dependencies": { + "fast-xml-parser": "^4.1.3" + }, + "engines": { + "node": ">=6" + }, + "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==", + "dependencies": { + "has-symbols": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "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==", + "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" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "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==", + "dependencies": { + "call-bind": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-whitespace": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/is-whitespace/-/is-whitespace-0.3.0.tgz", + "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==", + "dev": true, + "peer": true, + "dependencies": { + "is-docker": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", + "dev": true, + "peer": true + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "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": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", + "dev": true, + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/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, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-instrument": { + "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", + "@babel/parser": "^7.14.7", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.2.0", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "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==", + "dev": true, + "dependencies": { + "istanbul-lib-coverage": "^3.0.0", + "make-dir": "^3.0.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-report/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/istanbul-lib-report/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/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, + "dependencies": { + "debug": "^4.1.1", + "istanbul-lib-coverage": "^3.0.0", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-reports": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.5.tgz", + "integrity": "sha512-nUsEMa9pBt/NOHqbcbeJEgqIlY/K7rVWUX6Lql2orY5e9roQOthbR3vtY4zzf2orPELg80fnxxk9zUyPlgwD1w==", + "dev": true, + "dependencies": { + "html-escaper": "^2.0.0", + "istanbul-lib-report": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jed": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/jed/-/jed-1.1.1.tgz", + "integrity": "sha512-z35ZSEcXHxLW4yumw0dF6L464NT36vmx3wxJw8MDpraBcWuNVgUPZgPJKcu1HekNgwlMFNqol7i/IpSbjhqwqA==" + }, + "node_modules/jest": { + "version": "29.5.0", + "resolved": "https://registry.npmjs.org/jest/-/jest-29.5.0.tgz", + "integrity": "sha512-juMg3he2uru1QoXX078zTa7pO85QyB9xajZc6bU+d9yEGwrKX6+vGmJQ3UdVZsvTEUARIdObzH68QItim6OSSQ==", + "dev": true, + "dependencies": { + "@jest/core": "^29.5.0", + "@jest/types": "^29.5.0", + "import-local": "^3.0.2", + "jest-cli": "^29.5.0" + }, + "bin": { + "jest": "bin/jest.js" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/jest-changed-files": { + "version": "29.5.0", + "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-29.5.0.tgz", + "integrity": "sha512-IFG34IUMUaNBIxjQXF/iu7g6EcdMrGRRxaUSw92I/2g2YC6vCdTltl4nHvt7Ci5nSJwXIkCu8Ka1DKF+X7Z1Ag==", + "dev": true, + "dependencies": { + "execa": "^5.0.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" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/jest-circus": { + "version": "29.5.0", + "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-29.5.0.tgz", + "integrity": "sha512-gq/ongqeQKAplVxqJmbeUOJJKkW3dDNPY8PjhJ5G0lBRvu0e3EWGxGy5cI4LAGA7gV2UHCtWBI4EMXK8c9nQKA==", + "dev": true, + "dependencies": { + "@jest/environment": "^29.5.0", + "@jest/expect": "^29.5.0", + "@jest/test-result": "^29.5.0", + "@jest/types": "^29.5.0", + "@types/node": "*", + "chalk": "^4.0.0", + "co": "^4.6.0", + "dedent": "^0.7.0", + "is-generator-fn": "^2.0.0", + "jest-each": "^29.5.0", + "jest-matcher-utils": "^29.5.0", + "jest-message-util": "^29.5.0", + "jest-runtime": "^29.5.0", + "jest-snapshot": "^29.5.0", + "jest-util": "^29.5.0", + "p-limit": "^3.1.0", + "pretty-format": "^29.5.0", + "pure-rand": "^6.0.0", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-circus/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-circus/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/jest-circus/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-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": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/jest-circus/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-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, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/jest-cli": { + "version": "29.5.0", + "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-29.5.0.tgz", + "integrity": "sha512-L1KcP1l4HtfwdxXNFCL5bmUbLQiKrakMUriBEcc1Vfz6gx31ORKdreuWvmQVBit+1ss9NNR3yxjwfwzZNdQXJw==", + "dev": true, + "dependencies": { + "@jest/core": "^29.5.0", + "@jest/test-result": "^29.5.0", + "@jest/types": "^29.5.0", + "chalk": "^4.0.0", + "exit": "^0.1.2", + "graceful-fs": "^4.2.9", + "import-local": "^3.0.2", + "jest-config": "^29.5.0", + "jest-util": "^29.5.0", + "jest-validate": "^29.5.0", + "prompts": "^2.0.1", + "yargs": "^17.3.1" + }, + "bin": { + "jest": "bin/jest.js" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/jest-cli/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-cli/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/jest-cli/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-cli/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-config": { + "version": "29.5.0", + "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-29.5.0.tgz", + "integrity": "sha512-kvDUKBnNJPNBmFFOhDbm59iu1Fii1Q6SxyhXfvylq3UTHbg6o7j/g8k2dZyXWLvfdKB1vAPxNZnMgtKJcmu3kA==", + "dev": true, + "dependencies": { + "@babel/core": "^7.11.6", + "@jest/test-sequencer": "^29.5.0", + "@jest/types": "^29.5.0", + "babel-jest": "^29.5.0", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "deepmerge": "^4.2.2", + "glob": "^7.1.3", + "graceful-fs": "^4.2.9", + "jest-circus": "^29.5.0", + "jest-environment-node": "^29.5.0", + "jest-get-type": "^29.4.3", + "jest-regex-util": "^29.4.3", + "jest-resolve": "^29.5.0", + "jest-runner": "^29.5.0", + "jest-util": "^29.5.0", + "jest-validate": "^29.5.0", + "micromatch": "^4.0.4", + "parse-json": "^5.2.0", + "pretty-format": "^29.5.0", + "slash": "^3.0.0", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "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 + } + } + }, + "node_modules/jest-config/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-config/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/jest-config/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-config/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-diff": { + "version": "29.5.0", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-29.5.0.tgz", + "integrity": "sha512-LtxijLLZBduXnHSniy0WMdaHjmQnt3g5sa16W4p0HqukYTTsyTW3GD1q41TyGl5YFXj/5B2U6dlh5FM1LIMgxw==", + "dev": true, + "dependencies": { + "chalk": "^4.0.0", + "diff-sequences": "^29.4.3", + "jest-get-type": "^29.4.3", + "pretty-format": "^29.5.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-diff/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-diff/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/jest-diff/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-diff/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-docblock": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-29.4.3.tgz", + "integrity": "sha512-fzdTftThczeSD9nZ3fzA/4KkHtnmllawWrXO69vtI+L9WjEIuXWs4AmyME7lN5hU7dB0sHhuPfcKofRsUb/2Fg==", + "dev": true, + "dependencies": { + "detect-newline": "^3.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-each": { + "version": "29.5.0", + "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-29.5.0.tgz", + "integrity": "sha512-HM5kIJ1BTnVt+DQZ2ALp3rzXEl+g726csObrW/jpEGl+CDSSQpOJJX2KE/vEg8cxcMXdyEPu6U4QX5eruQv5hA==", + "dev": true, + "dependencies": { + "@jest/types": "^29.5.0", + "chalk": "^4.0.0", + "jest-get-type": "^29.4.3", + "jest-util": "^29.5.0", + "pretty-format": "^29.5.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-each/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-each/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/jest-each/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-each/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-environment-jsdom": { + "version": "29.5.0", + "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-29.5.0.tgz", + "integrity": "sha512-/KG8yEK4aN8ak56yFVdqFDzKNHgF4BAymCx2LbPNPsUshUlfAl0eX402Xm1pt+eoG9SLZEUVifqXtX8SK74KCw==", + "dev": true, + "dependencies": { + "@jest/environment": "^29.5.0", + "@jest/fake-timers": "^29.5.0", + "@jest/types": "^29.5.0", + "@types/jsdom": "^20.0.0", + "@types/node": "*", + "jest-mock": "^29.5.0", + "jest-util": "^29.5.0", + "jsdom": "^20.0.0" + }, + "engines": { + "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": "29.5.0", + "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-29.5.0.tgz", + "integrity": "sha512-ExxuIK/+yQ+6PRGaHkKewYtg6hto2uGCgvKdb2nfJfKXgZ17DfXjvbZ+jA1Qt9A8EQSfPnt5FKIfnOO3u1h9qw==", + "dev": true, + "dependencies": { + "@jest/environment": "^29.5.0", + "@jest/fake-timers": "^29.5.0", + "@jest/types": "^29.5.0", + "@types/node": "*", + "jest-mock": "^29.5.0", + "jest-util": "^29.5.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-get-type": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-29.4.3.tgz", + "integrity": "sha512-J5Xez4nRRMjk8emnTpWrlkyb9pfRQQanDrvWHhsR1+VUfbwxi30eVcZFlcdGInRibU4G5LwHXpI7IRHU0CY+gg==", + "dev": true, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-haste-map": { + "version": "29.5.0", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-29.5.0.tgz", + "integrity": "sha512-IspOPnnBro8YfVYSw6yDRKh/TiCdRngjxeacCps1cQ9cgVN6+10JUcuJ1EabrgYLOATsIAigxA0rLR9x/YlrSA==", + "dev": true, + "dependencies": { + "@jest/types": "^29.5.0", + "@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": "^29.4.3", + "jest-util": "^29.5.0", + "jest-worker": "^29.5.0", + "micromatch": "^4.0.4", + "walker": "^1.0.8" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "optionalDependencies": { + "fsevents": "^2.3.2" + } + }, + "node_modules/jest-leak-detector": { + "version": "29.5.0", + "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-29.5.0.tgz", + "integrity": "sha512-u9YdeeVnghBUtpN5mVxjID7KbkKE1QU4f6uUwuxiY0vYRi9BUCLKlPEZfDGR67ofdFmDz9oPAy2G92Ujrntmow==", + "dev": true, + "dependencies": { + "jest-get-type": "^29.4.3", + "pretty-format": "^29.5.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-matcher-utils": { + "version": "29.5.0", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-29.5.0.tgz", + "integrity": "sha512-lecRtgm/rjIK0CQ7LPQwzCs2VwW6WAahA55YBuI+xqmhm7LAaxokSB8C97yJeYyT+HvQkH741StzpU41wohhWw==", + "dev": true, + "dependencies": { + "chalk": "^4.0.0", + "jest-diff": "^29.5.0", + "jest-get-type": "^29.4.3", + "pretty-format": "^29.5.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "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==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "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==", + "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/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": "29.5.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.5.0.tgz", + "integrity": "sha512-Kijeg9Dag6CKtIDA7O21zNTACqD5MD/8HfIV8pdD94vFyFuer52SigdC3IQMhab3vACxXMiFk+yMHNdbqtyTGA==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.12.13", + "@jest/types": "^29.5.0", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^29.5.0", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.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/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/jest-message-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-message-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, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-mock": { + "version": "29.5.0", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-29.5.0.tgz", + "integrity": "sha512-GqOzvdWDE4fAV2bWQLQCkujxYWL7RxjCnj71b5VhDAGOevB3qj3Ovg26A5NI84ZpODxyzaozXLOh2NCgkbvyaw==", + "dev": true, + "dependencies": { + "@jest/types": "^29.5.0", + "@types/node": "*", + "jest-util": "^29.5.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-pnp-resolver": { + "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" + }, + "peerDependencies": { + "jest-resolve": "*" + }, + "peerDependenciesMeta": { + "jest-resolve": { + "optional": true + } + } + }, + "node_modules/jest-regex-util": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-29.4.3.tgz", + "integrity": "sha512-O4FglZaMmWXbGHSQInfXewIsd1LMn9p3ZXB/6r4FOkyhX2/iP/soMG98jGvk/A3HAN78+5VWcBGO0BJAPRh4kg==", + "dev": true, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-resolve": { + "version": "29.5.0", + "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-29.5.0.tgz", + "integrity": "sha512-1TzxJ37FQq7J10jPtQjcc+MkCkE3GBpBecsSUWJ0qZNJpmg6m0D9/7II03yJulm3H/fvVjgqLh/k2eYg+ui52w==", + "dev": true, + "dependencies": { + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^29.5.0", + "jest-pnp-resolver": "^1.2.2", + "jest-util": "^29.5.0", + "jest-validate": "^29.5.0", + "resolve": "^1.20.0", + "resolve.exports": "^2.0.0", + "slash": "^3.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-resolve-dependencies": { + "version": "29.5.0", + "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-29.5.0.tgz", + "integrity": "sha512-sjV3GFr0hDJMBpYeUuGduP+YeCRbd7S/ck6IvL3kQ9cpySYKqcqhdLLC2rFwrcL7tz5vYibomBrsFYWkIGGjOg==", + "dev": true, + "dependencies": { + "jest-regex-util": "^29.4.3", + "jest-snapshot": "^29.5.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-resolve/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-resolve/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/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" + } + }, + "node_modules/jest-resolve/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-runner": { + "version": "29.5.0", + "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-29.5.0.tgz", + "integrity": "sha512-m7b6ypERhFghJsslMLhydaXBiLf7+jXy8FwGRHO3BGV1mcQpPbwiqiKUR2zU2NJuNeMenJmlFZCsIqzJCTeGLQ==", + "dev": true, + "dependencies": { + "@jest/console": "^29.5.0", + "@jest/environment": "^29.5.0", + "@jest/test-result": "^29.5.0", + "@jest/transform": "^29.5.0", + "@jest/types": "^29.5.0", + "@types/node": "*", + "chalk": "^4.0.0", + "emittery": "^0.13.1", + "graceful-fs": "^4.2.9", + "jest-docblock": "^29.4.3", + "jest-environment-node": "^29.5.0", + "jest-haste-map": "^29.5.0", + "jest-leak-detector": "^29.5.0", + "jest-message-util": "^29.5.0", + "jest-resolve": "^29.5.0", + "jest-runtime": "^29.5.0", + "jest-util": "^29.5.0", + "jest-watcher": "^29.5.0", + "jest-worker": "^29.5.0", + "p-limit": "^3.1.0", + "source-map-support": "0.5.13" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-runner/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-runner/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/jest-runner/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-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", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "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, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/jest-runtime": { + "version": "29.5.0", + "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-29.5.0.tgz", + "integrity": "sha512-1Hr6Hh7bAgXQP+pln3homOiEZtCDZFqwmle7Ew2j8OlbkIu6uE3Y/etJQG8MLQs3Zy90xrp2C0BRrtPHG4zryw==", + "dev": true, + "dependencies": { + "@jest/environment": "^29.5.0", + "@jest/fake-timers": "^29.5.0", + "@jest/globals": "^29.5.0", + "@jest/source-map": "^29.4.3", + "@jest/test-result": "^29.5.0", + "@jest/transform": "^29.5.0", + "@jest/types": "^29.5.0", + "@types/node": "*", + "chalk": "^4.0.0", + "cjs-module-lexer": "^1.0.0", + "collect-v8-coverage": "^1.0.0", + "glob": "^7.1.3", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^29.5.0", + "jest-message-util": "^29.5.0", + "jest-mock": "^29.5.0", + "jest-regex-util": "^29.4.3", + "jest-resolve": "^29.5.0", + "jest-snapshot": "^29.5.0", + "jest-util": "^29.5.0", + "slash": "^3.0.0", + "strip-bom": "^4.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-runtime/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-runtime/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/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" + } + }, + "node_modules/jest-runtime/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-serializer-vue": { + "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": "29.5.0", + "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-29.5.0.tgz", + "integrity": "sha512-x7Wolra5V0tt3wRs3/ts3S6ciSQVypgGQlJpz2rsdQYoUKxMxPNaoHMGJN6qAuPJqS+2iQ1ZUn5kl7HCyls84g==", + "dev": true, + "dependencies": { + "@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.3.3", + "@jest/expect-utils": "^29.5.0", + "@jest/transform": "^29.5.0", + "@jest/types": "^29.5.0", + "@types/babel__traverse": "^7.0.6", + "@types/prettier": "^2.1.5", + "babel-preset-current-node-syntax": "^1.0.0", + "chalk": "^4.0.0", + "expect": "^29.5.0", + "graceful-fs": "^4.2.9", + "jest-diff": "^29.5.0", + "jest-get-type": "^29.4.3", + "jest-matcher-utils": "^29.5.0", + "jest-message-util": "^29.5.0", + "jest-util": "^29.5.0", + "natural-compare": "^1.4.0", + "pretty-format": "^29.5.0", + "semver": "^7.3.5" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-snapshot/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-snapshot/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/jest-snapshot/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-snapshot/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/jest-snapshot/node_modules/semver": { + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/jest-snapshot/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-snapshot/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-util": { + "version": "29.5.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.5.0.tgz", + "integrity": "sha512-RYMgG/MTadOr5t8KdhejfvUU82MxsCu5MF6KuDUHl+NuwzUt+Sm6jJWxTJVrDR1j5M/gJVCPKQEpWXY+yIQ6lQ==", + "dev": true, + "dependencies": { + "@jest/types": "^29.5.0", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-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-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" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "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==", + "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, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-validate": { + "version": "29.5.0", + "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-29.5.0.tgz", + "integrity": "sha512-pC26etNIi+y3HV8A+tUGr/lph9B18GnzSRAkPaaZJIE1eFdiYm6/CewuiJQ8/RlfHd1u/8Ioi8/sJ+CmbA+zAQ==", + "dev": true, + "dependencies": { + "@jest/types": "^29.5.0", + "camelcase": "^6.2.0", + "chalk": "^4.0.0", + "jest-get-type": "^29.4.3", + "leven": "^3.1.0", + "pretty-format": "^29.5.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-validate/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-validate/node_modules/camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/jest-validate/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/jest-validate/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-validate/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-watcher": { + "version": "29.5.0", + "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-29.5.0.tgz", + "integrity": "sha512-KmTojKcapuqYrKDpRwfqcQ3zjMlwu27SYext9pt4GlF5FUgB+7XE1mcCnSm6a4uUpFyQIkb6ZhzZvHl+jiBCiA==", + "dev": true, + "dependencies": { + "@jest/test-result": "^29.5.0", + "@jest/types": "^29.5.0", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "emittery": "^0.13.1", + "jest-util": "^29.5.0", + "string-length": "^4.0.1" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-watcher/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-watcher/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/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/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-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", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-worker": { + "version": "29.5.0", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-29.5.0.tgz", + "integrity": "sha512-NcrQnevGoSp4b5kg+akIpthoAFHxPBcb5P6mYPY0fUNT+sSvmtu6jlkEle3anczUKIKEbMxFimk9oTP/tpIPgA==", + "dev": true, + "dependencies": { + "@types/node": "*", + "jest-util": "^29.5.0", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "engines": { + "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" + } + }, + "node_modules/jest-worker/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, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, + "node_modules/jquery": { + "version": "3.6.1", + "resolved": "https://registry.npmjs.org/jquery/-/jquery-3.6.1.tgz", + "integrity": "sha512-opJeO4nCucVnsjiXOE+/PcCgYw9Gwpvs/a6B1LL/lQhwWwpbVEVYDZ1FokFr8PRc7ghYlrFPuyHuiiDNTQxmcw==", + "peer": true + }, + "node_modules/js-beautify": { + "version": "1.14.6", + "resolved": "https://registry.npmjs.org/js-beautify/-/js-beautify-1.14.6.tgz", + "integrity": "sha512-GfofQY5zDp+cuHc+gsEXKPpNw2KbPddreEo35O6jT6i0RVK6LhsoYBhq5TvK4/n74wnA0QbK8gGd+jUZwTMKJw==", + "dev": true, + "dependencies": { + "config-chain": "^1.1.13", + "editorconfig": "^0.15.3", + "glob": "^8.0.3", + "nopt": "^6.0.0" + }, + "bin": { + "css-beautify": "js/bin/css-beautify.js", + "html-beautify": "js/bin/html-beautify.js", + "js-beautify": "js/bin/js-beautify.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/js-beautify/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/js-beautify/node_modules/glob": { + "version": "8.0.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-8.0.3.tgz", + "integrity": "sha512-ull455NHSHI/Y1FqGaaYFaLGkNMMJbavMrEGFXG/PGrg6y7sutWHUHrz6gy6WEBH6akM1M414dWKCNs+IhKdiQ==", + "dev": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^5.0.1", + "once": "^1.3.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/js-beautify/node_modules/minimatch": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.0.tgz", + "integrity": "sha512-9TPBGGak4nHfGZsPBohm9AWg6NoT7QTCehS3BIJABslyZbzxfV78QM2Y6+i741OPZIafFAaiiEMh5OyIrJPgtg==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/js-sdsl": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/js-sdsl/-/js-sdsl-4.1.5.tgz", + "integrity": "sha512-08bOAKweV2NUC1wqTtf3qZlnpOX/R2DU9ikpjOHs0H+ibQv3zpncVQg6um4uYtRtrwIX8M4Nh3ytK4HGlYAq7Q==", + "dev": true, + "peer": true + }, + "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==" + }, + "node_modules/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, + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "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==", + "dev": true, + "peer": true, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/jsdom": { + "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.6", + "acorn": "^8.8.0", + "acorn-globals": "^7.0.0", + "cssom": "^0.5.0", + "cssstyle": "^2.3.0", + "data-urls": "^3.0.2", + "decimal.js": "^10.4.1", + "domexception": "^4.0.0", + "escodegen": "^2.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.2", + "parse5": "^7.1.1", + "saxes": "^6.0.0", + "symbol-tree": "^3.2.4", + "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": ">=14" + }, + "peerDependencies": { + "canvas": "^2.5.0" + }, + "peerDependenciesMeta": { + "canvas": { + "optional": true + } + } + }, + "node_modules/jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "dev": true, + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/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==" + }, + "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==" + }, + "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": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", + "dev": true, + "peer": true + }, + "node_modules/json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/jstz": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/jstz/-/jstz-2.1.1.tgz", + "integrity": "sha512-8hfl5RD6P7rEeIbzStBz3h4f+BQHfq/ABtoU6gXKQv5OcZhnmrIpG7e1pYaZ8hS9e0mp+bxUj08fnDUbKctYyA==", + "engines": { + "node": ">=0.10" + } + }, + "node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dev": true, + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/kleur": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", + "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", + "dev": true, + "engines": { + "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==", + "dev": true, + "peer": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/known-css-properties": { + "version": "0.25.0", + "resolved": "https://registry.npmjs.org/known-css-properties/-/known-css-properties-0.25.0.tgz", + "integrity": "sha512-b0/9J1O9Jcyik1GC6KC42hJ41jKwdO/Mq8Mdo5sYN+IuRTXs2YFHZC3kZSx6ueusqa95x3wLYe/ytKjbAfGixA==", + "dev": true, + "peer": true + }, + "node_modules/layerr": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/layerr/-/layerr-2.0.1.tgz", + "integrity": "sha512-z0730CwG/JO24evdORnyDkwG1Q7b7mF2Tp1qRQ0YvrMMARbt1DFG694SOv439Gm7hYKolyZyaB49YIrYIfZBdg==" + }, + "node_modules/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, + "engines": { + "node": ">=6" + } + }, + "node_modules/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, + "dependencies": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/lines-and-columns": { + "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": "4.0.2", + "resolved": "https://registry.npmjs.org/linkify-string/-/linkify-string-4.0.2.tgz", + "integrity": "sha512-+HoBme50rPaKxh5TrEJqRLq4gphks1zj3cz6gMBKIHwJCFYVwHig8ii9aCzqGUz8DxF2otbq+Z3AJmKUnfOtKg==", + "peerDependencies": { + "linkifyjs": "^4.0.0" + } + }, + "node_modules/linkifyjs": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/linkifyjs/-/linkifyjs-4.1.1.tgz", + "integrity": "sha512-zFN/CTVmbcVef+WaDXT63dNzzkfRBKT1j464NJQkV7iSgJU0sLBus9W0HBwnXK13/hf168pbrx/V/bjEHOXNHA==" + }, + "node_modules/loader-runner": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz", + "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==", + "peer": true, + "engines": { + "node": ">=6.11.5" + } + }, + "node_modules/loader-utils": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.4.tgz", + "integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==", + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^2.1.2" + }, + "engines": { + "node": ">=8.9.0" + } + }, + "node_modules/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, + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" + }, + "node_modules/lodash.debounce": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", + "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==", + "dev": true + }, + "node_modules/lodash.get": { + "version": "4.4.2", + "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", + "integrity": "sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ==" + }, + "node_modules/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 + }, + "node_modules/lodash.throttle": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/lodash.throttle/-/lodash.throttle-4.1.1.tgz", + "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": "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==", + "peer": true, + "dependencies": { + "js-tokens": "^3.0.0 || ^4.0.0" + }, + "bin": { + "loose-envify": "cli.js" + } + }, + "node_modules/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, + "dependencies": { + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" + } + }, + "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==", + "dev": true, + "dependencies": { + "semver": "^6.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/makeerror": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz", + "integrity": "sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==", + "dev": true, + "dependencies": { + "tmpl": "1.0.5" + } + }, + "node_modules/map-obj": { + "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": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/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==" + }, + "node_modules/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, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/md5": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/md5/-/md5-2.3.0.tgz", + "integrity": "sha512-T1GITYmFaKuO91vxyoQMFETst+O71VUPEU3ze5GNzDm0OWdP8v1ziTaAEPUr/3kLsY3Sftgz242A1SetQiDL7g==", + "dependencies": { + "charenc": "0.0.2", + "crypt": "0.0.2", + "is-buffer": "~1.1.6" + } + }, + "node_modules/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==", + "dependencies": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "node_modules/mdast-util-definitions": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/mdast-util-definitions/-/mdast-util-definitions-5.1.2.tgz", + "integrity": "sha512-8SVPMuHqlPME/z3gqVwWY4zVXn8lqKv/pAhC57FuJ40ImXyBpmO5ukh98zB2v7Blql2FiHjHv9LVztSIqjY+MA==", + "dependencies": { + "@types/mdast": "^3.0.0", + "@types/unist": "^2.0.0", + "unist-util-visit": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-from-markdown": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/mdast-util-from-markdown/-/mdast-util-from-markdown-1.3.0.tgz", + "integrity": "sha512-HN3W1gRIuN/ZW295c7zi7g9lVBllMgZE40RxCX37wrTPWXCWtpvOZdfnuK+1WNpvZje6XuJeI3Wnb4TJEUem+g==", + "dependencies": { + "@types/mdast": "^3.0.0", + "@types/unist": "^2.0.0", + "decode-named-character-reference": "^1.0.0", + "mdast-util-to-string": "^3.1.0", + "micromark": "^3.0.0", + "micromark-util-decode-numeric-character-reference": "^1.0.0", + "micromark-util-decode-string": "^1.0.0", + "micromark-util-normalize-identifier": "^1.0.0", + "micromark-util-symbol": "^1.0.0", + "micromark-util-types": "^1.0.0", + "unist-util-stringify-position": "^3.0.0", + "uvu": "^0.5.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-to-hast": { + "version": "12.3.0", + "resolved": "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-12.3.0.tgz", + "integrity": "sha512-pits93r8PhnIoU4Vy9bjW39M2jJ6/tdHyja9rrot9uujkN7UTU9SDnE6WNJz/IGyQk3XHX6yNNtrBH6cQzm8Hw==", + "dependencies": { + "@types/hast": "^2.0.0", + "@types/mdast": "^3.0.0", + "mdast-util-definitions": "^5.0.0", + "micromark-util-sanitize-uri": "^1.1.0", + "trim-lines": "^3.0.0", + "unist-util-generated": "^2.0.0", + "unist-util-position": "^4.0.0", + "unist-util-visit": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-to-string": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-3.1.1.tgz", + "integrity": "sha512-tGvhT94e+cVnQt8JWE9/b3cUQZWS732TJxXHktvP+BYo62PpYD53Ls/6cC60rW21dW+txxiM4zMdc6abASvZKA==", + "dependencies": { + "@types/mdast": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "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, + "peer": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/memfs": { + "version": "3.4.7", + "resolved": "https://registry.npmjs.org/memfs/-/memfs-3.4.7.tgz", + "integrity": "sha512-ygaiUSNalBX85388uskeCyhSAoOSgzBbtVCr9jA2RROssFL9Q19/ZXFqS+2Th2sr1ewNIWgFdLzLC3Yl1Zv+lw==", + "dev": true, + "peer": true, + "dependencies": { + "fs-monkey": "^1.0.3" + }, + "engines": { + "node": ">= 4.0.0" + } + }, + "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, + "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" + }, + "engines": { + "node": ">=10" + }, + "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==", + "dev": true, + "peer": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/merge-descriptors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", + "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==", + "dev": true, + "peer": true + }, + "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, + "dependencies": { + "source-map": "^0.6.1" + } + }, + "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==" + }, + "node_modules/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, + "engines": { + "node": ">= 8" + } + }, + "node_modules/methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==", + "dev": true, + "peer": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/micromark": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/micromark/-/micromark-3.1.0.tgz", + "integrity": "sha512-6Mj0yHLdUZjHnOPgr5xfWIMqMWS12zDN6iws9SLuSz76W8jTtAv24MN4/CL7gJrl5vtxGInkkqDv/JIoRsQOvA==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "@types/debug": "^4.0.0", + "debug": "^4.0.0", + "decode-named-character-reference": "^1.0.0", + "micromark-core-commonmark": "^1.0.1", + "micromark-factory-space": "^1.0.0", + "micromark-util-character": "^1.0.0", + "micromark-util-chunked": "^1.0.0", + "micromark-util-combine-extensions": "^1.0.0", + "micromark-util-decode-numeric-character-reference": "^1.0.0", + "micromark-util-encode": "^1.0.0", + "micromark-util-normalize-identifier": "^1.0.0", + "micromark-util-resolve-all": "^1.0.0", + "micromark-util-sanitize-uri": "^1.0.0", + "micromark-util-subtokenize": "^1.0.0", + "micromark-util-symbol": "^1.0.0", + "micromark-util-types": "^1.0.1", + "uvu": "^0.5.0" + } + }, + "node_modules/micromark-core-commonmark": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/micromark-core-commonmark/-/micromark-core-commonmark-1.0.6.tgz", + "integrity": "sha512-K+PkJTxqjFfSNkfAhp4GB+cZPfQd6dxtTXnf+RjZOV7T4EEXnvgzOcnp+eSTmpGk9d1S9sL6/lqrgSNn/s0HZA==", + "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-factory-destination": "^1.0.0", + "micromark-factory-label": "^1.0.0", + "micromark-factory-space": "^1.0.0", + "micromark-factory-title": "^1.0.0", + "micromark-factory-whitespace": "^1.0.0", + "micromark-util-character": "^1.0.0", + "micromark-util-chunked": "^1.0.0", + "micromark-util-classify-character": "^1.0.0", + "micromark-util-html-tag-name": "^1.0.0", + "micromark-util-normalize-identifier": "^1.0.0", + "micromark-util-resolve-all": "^1.0.0", + "micromark-util-subtokenize": "^1.0.0", + "micromark-util-symbol": "^1.0.0", + "micromark-util-types": "^1.0.1", + "uvu": "^0.5.0" + } + }, + "node_modules/micromark-factory-destination": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/micromark-factory-destination/-/micromark-factory-destination-1.0.0.tgz", + "integrity": "sha512-eUBA7Rs1/xtTVun9TmV3gjfPz2wEwgK5R5xcbIM5ZYAtvGF6JkyaDsj0agx8urXnO31tEO6Ug83iVH3tdedLnw==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-character": "^1.0.0", + "micromark-util-symbol": "^1.0.0", + "micromark-util-types": "^1.0.0" + } + }, + "node_modules/micromark-factory-label": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/micromark-factory-label/-/micromark-factory-label-1.0.2.tgz", + "integrity": "sha512-CTIwxlOnU7dEshXDQ+dsr2n+yxpP0+fn271pu0bwDIS8uqfFcumXpj5mLn3hSC8iw2MUr6Gx8EcKng1dD7i6hg==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-character": "^1.0.0", + "micromark-util-symbol": "^1.0.0", + "micromark-util-types": "^1.0.0", + "uvu": "^0.5.0" + } + }, + "node_modules/micromark-factory-space": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/micromark-factory-space/-/micromark-factory-space-1.0.0.tgz", + "integrity": "sha512-qUmqs4kj9a5yBnk3JMLyjtWYN6Mzfcx8uJfi5XAveBniDevmZasdGBba5b4QsvRcAkmvGo5ACmSUmyGiKTLZew==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-character": "^1.0.0", + "micromark-util-types": "^1.0.0" + } + }, + "node_modules/micromark-factory-title": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/micromark-factory-title/-/micromark-factory-title-1.0.2.tgz", + "integrity": "sha512-zily+Nr4yFqgMGRKLpTVsNl5L4PMu485fGFDOQJQBl2NFpjGte1e86zC0da93wf97jrc4+2G2GQudFMHn3IX+A==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-factory-space": "^1.0.0", + "micromark-util-character": "^1.0.0", + "micromark-util-symbol": "^1.0.0", + "micromark-util-types": "^1.0.0", + "uvu": "^0.5.0" + } + }, + "node_modules/micromark-factory-whitespace": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/micromark-factory-whitespace/-/micromark-factory-whitespace-1.0.0.tgz", + "integrity": "sha512-Qx7uEyahU1lt1RnsECBiuEbfr9INjQTGa6Err+gF3g0Tx4YEviPbqqGKNv/NrBaE7dVHdn1bVZKM/n5I/Bak7A==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-factory-space": "^1.0.0", + "micromark-util-character": "^1.0.0", + "micromark-util-symbol": "^1.0.0", + "micromark-util-types": "^1.0.0" + } + }, + "node_modules/micromark-util-character": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-character/-/micromark-util-character-1.1.0.tgz", + "integrity": "sha512-agJ5B3unGNJ9rJvADMJ5ZiYjBRyDpzKAOk01Kpi1TKhlT1APx3XZk6eN7RtSz1erbWHC2L8T3xLZ81wdtGRZzg==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-symbol": "^1.0.0", + "micromark-util-types": "^1.0.0" + } + }, + "node_modules/micromark-util-chunked": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-chunked/-/micromark-util-chunked-1.0.0.tgz", + "integrity": "sha512-5e8xTis5tEZKgesfbQMKRCyzvffRRUX+lK/y+DvsMFdabAicPkkZV6gO+FEWi9RfuKKoxxPwNL+dFF0SMImc1g==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-symbol": "^1.0.0" + } + }, + "node_modules/micromark-util-classify-character": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-classify-character/-/micromark-util-classify-character-1.0.0.tgz", + "integrity": "sha512-F8oW2KKrQRb3vS5ud5HIqBVkCqQi224Nm55o5wYLzY/9PwHGXC01tr3d7+TqHHz6zrKQ72Okwtvm/xQm6OVNZA==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-character": "^1.0.0", + "micromark-util-symbol": "^1.0.0", + "micromark-util-types": "^1.0.0" + } + }, + "node_modules/micromark-util-combine-extensions": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-combine-extensions/-/micromark-util-combine-extensions-1.0.0.tgz", + "integrity": "sha512-J8H058vFBdo/6+AsjHp2NF7AJ02SZtWaVUjsayNFeAiydTxUwViQPxN0Hf8dp4FmCQi0UUFovFsEyRSUmFH3MA==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-chunked": "^1.0.0", + "micromark-util-types": "^1.0.0" + } + }, + "node_modules/micromark-util-decode-numeric-character-reference": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-decode-numeric-character-reference/-/micromark-util-decode-numeric-character-reference-1.0.0.tgz", + "integrity": "sha512-OzO9AI5VUtrTD7KSdagf4MWgHMtET17Ua1fIpXTpuhclCqD8egFWo85GxSGvxgkGS74bEahvtM0WP0HjvV0e4w==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-symbol": "^1.0.0" + } + }, + "node_modules/micromark-util-decode-string": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/micromark-util-decode-string/-/micromark-util-decode-string-1.0.2.tgz", + "integrity": "sha512-DLT5Ho02qr6QWVNYbRZ3RYOSSWWFuH3tJexd3dgN1odEuPNxCngTCXJum7+ViRAd9BbdxCvMToPOD/IvVhzG6Q==", + "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": "^1.0.0", + "micromark-util-decode-numeric-character-reference": "^1.0.0", + "micromark-util-symbol": "^1.0.0" + } + }, + "node_modules/micromark-util-encode": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/micromark-util-encode/-/micromark-util-encode-1.0.1.tgz", + "integrity": "sha512-U2s5YdnAYexjKDel31SVMPbfi+eF8y1U4pfiRW/Y8EFVCy/vgxk/2wWTxzcqE71LHtCuCzlBDRU2a5CQ5j+mQA==", + "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": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-html-tag-name/-/micromark-util-html-tag-name-1.1.0.tgz", + "integrity": "sha512-BKlClMmYROy9UiV03SwNmckkjn8QHVaWkqoAqzivabvdGcwNGMMMH/5szAnywmsTBUzDsU57/mFi0sp4BQO6dA==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] + }, + "node_modules/micromark-util-normalize-identifier": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-normalize-identifier/-/micromark-util-normalize-identifier-1.0.0.tgz", + "integrity": "sha512-yg+zrL14bBTFrQ7n35CmByWUTFsgst5JhA4gJYoty4Dqzj4Z4Fr/DHekSS5aLfH9bdlfnSvKAWsAgJhIbogyBg==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-symbol": "^1.0.0" + } + }, + "node_modules/micromark-util-resolve-all": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-resolve-all/-/micromark-util-resolve-all-1.0.0.tgz", + "integrity": "sha512-CB/AGk98u50k42kvgaMM94wzBqozSzDDaonKU7P7jwQIuH2RU0TeBqGYJz2WY1UdihhjweivStrJ2JdkdEmcfw==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-types": "^1.0.0" + } + }, + "node_modules/micromark-util-sanitize-uri": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-sanitize-uri/-/micromark-util-sanitize-uri-1.1.0.tgz", + "integrity": "sha512-RoxtuSCX6sUNtxhbmsEFQfWzs8VN7cTctmBPvYivo98xb/kDEoTCtJQX5wyzIYEmk/lvNFTat4hL8oW0KndFpg==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-character": "^1.0.0", + "micromark-util-encode": "^1.0.0", + "micromark-util-symbol": "^1.0.0" + } + }, + "node_modules/micromark-util-subtokenize": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/micromark-util-subtokenize/-/micromark-util-subtokenize-1.0.2.tgz", + "integrity": "sha512-d90uqCnXp/cy4G881Ub4psE57Sf8YD0pim9QdjCRNjfas2M1u6Lbt+XZK9gnHL2XFhnozZiEdCa9CNfXSfQ6xA==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-chunked": "^1.0.0", + "micromark-util-symbol": "^1.0.0", + "micromark-util-types": "^1.0.0", + "uvu": "^0.5.0" + } + }, + "node_modules/micromark-util-symbol": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-1.0.1.tgz", + "integrity": "sha512-oKDEMK2u5qqAptasDAwWDXq0tG9AssVwAx3E9bBF3t/shRIGsWIRG+cGafs2p/SnDSOecnt6hZPCE2o6lHfFmQ==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] + }, + "node_modules/micromark-util-types": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/micromark-util-types/-/micromark-util-types-1.0.2.tgz", + "integrity": "sha512-DCfg/T8fcrhrRKTPjRrw/5LLvdGV7BHySf/1LOZx7TzWZdYRjogNtyNq885z3nNallwr3QUKARjqvHqX1/7t+w==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] + }, + "node_modules/micromatch": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", + "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", + "dev": true, + "dependencies": { + "braces": "^3.0.2", + "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==", + "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==" + }, + "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/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==" + }, + "node_modules/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==" + }, + "node_modules/minimatch": { + "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" + }, + "engines": { + "node": "*" + } + }, + "node_modules/minimist": { + "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", + "resolved": "https://registry.npmjs.org/minimist-options/-/minimist-options-4.1.0.tgz", + "integrity": "sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A==", + "dev": true, + "peer": true, + "dependencies": { + "arrify": "^1.0.1", + "is-plain-obj": "^1.1.0", + "kind-of": "^6.0.3" + }, + "engines": { + "node": ">= 6" + } + }, + "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", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", + "dev": true, + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/moment": { + "version": "2.29.4", + "resolved": "https://registry.npmjs.org/moment/-/moment-2.29.4.tgz", + "integrity": "sha512-5LC9SOxjSc2HF6vO2CyuTDNivEdoz2IvyJJGj6X8DJ0eFyfszE0QiEd+iXmBvUP3WHxSjFH/vIsA0EN00cgr8w==", + "engines": { + "node": "*" + } + }, + "node_modules/mri": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/mri/-/mri-1.2.0.tgz", + "integrity": "sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==", + "engines": { + "node": ">=4" + } + }, + "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==" + }, + "node_modules/multicast-dns": { + "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, + "peer": true, + "dependencies": { + "dns-packet": "^5.2.2", + "thunky": "^1.0.2" + }, + "bin": { + "multicast-dns": "cli.js" + } + }, + "node_modules/nanoid": { + "version": "3.3.4", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz", + "integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==", + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", + "dev": true + }, + "node_modules/natural-compare-lite": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz", + "integrity": "sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==", + "dev": true, + "peer": true + }, + "node_modules/negotiator": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", + "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", + "dev": true, + "peer": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/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_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-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" + } + ], + "optional": true, + "engines": { + "node": ">=10.5.0" + } + }, + "node_modules/node-fetch": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-3.3.1.tgz", + "integrity": "sha512-cRVc/kyto/7E5shrWca1Wsea4y6tL9iYJE5FBCius3JQfb/4P4I295PfhgbJQBLTx6lATE4z+wK0rPM4VS2uow==", + "optional": true, + "dependencies": { + "data-uri-to-buffer": "^4.0.0", + "fetch-blob": "^3.1.4", + "formdata-polyfill": "^4.0.10" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/node-fetch" + } + }, + "node_modules/node-forge": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.3.1.tgz", + "integrity": "sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==", + "dev": true, + "peer": true, + "engines": { + "node": ">= 6.13.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_modules/node-int64": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", + "integrity": "sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==", + "dev": true + }, + "node_modules/node-polyfill-webpack-plugin": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/node-polyfill-webpack-plugin/-/node-polyfill-webpack-plugin-2.0.1.tgz", + "integrity": "sha512-ZUMiCnZkP1LF0Th2caY6J/eKKoA0TefpoVa68m/LQU1I/mE8rGt4fNYGgNuCcK+aG8P8P43nbeJ2RqJMOL/Y1A==", + "dependencies": { + "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" + }, + "engines": { + "node": ">=12" + }, + "peerDependencies": { + "webpack": ">=5" + } + }, + "node_modules/node-polyfill-webpack-plugin/node_modules/type-fest": { + "version": "2.19.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-2.19.0.tgz", + "integrity": "sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==", + "engines": { + "node": ">=12.20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/node-releases": { + "version": "2.0.12", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.12.tgz", + "integrity": "sha512-QzsYKWhXTWx8h1kIvqfnC++o0pEmpRQA/aenALsL2F4pqNVr7YzcdMlDij5WBnwftRbJCNJL/O7zdKaxKPHqgQ==" + }, + "node_modules/nopt": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-6.0.0.tgz", + "integrity": "sha512-ZwLpbTgdhuZUnZzjd7nb1ZV+4DoiC6/sfiVKok72ym/4Tlf+DFdlHYmT2JPmcNNWV6Pi3SDf1kT+A4r9RTuT9g==", + "dev": true, + "dependencies": { + "abbrev": "^1.0.0" + }, + "bin": { + "nopt": "bin/nopt.js" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.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.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "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", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/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, + "dependencies": { + "path-key": "^3.0.0" + }, + "engines": { + "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.2", + "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.2.tgz", + "integrity": "sha512-90yv+6538zuvUMnN+zCr8LuV6bPFdq50304114vJYJ8RDyK8D5O9Phpbd6SZWgI7PwzmmfN1upeOJlvybDSgCw==", + "dev": true + }, + "node_modules/object-inspect": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.2.tgz", + "integrity": "sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ==", + "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==", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object.assign": { + "version": "4.1.4", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz", + "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "has-symbols": "^1.0.3", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/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, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "es-abstract": "^1.19.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/obuf": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/obuf/-/obuf-1.1.2.tgz", + "integrity": "sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==", + "dev": true, + "peer": true + }, + "node_modules/on-finished": { + "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, + "peer": true, + "dependencies": { + "ee-first": "1.1.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/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, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dev": true, + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "dev": true, + "dependencies": { + "mimic-fn": "^2.1.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/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, + "dependencies": { + "define-lazy-prop": "^2.0.0", + "is-docker": "^2.1.1", + "is-wsl": "^2.2.0" + }, + "engines": { + "node": ">=12" + }, + "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==", + "dev": true, + "peer": true, + "dependencies": { + "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" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/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==" + }, + "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==", + "dependencies": { + "yocto-queue": "^1.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/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, + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/p-locate/node_modules/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, + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-retry": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/p-retry/-/p-retry-4.6.2.tgz", + "integrity": "sha512-312Id396EbJdvRONlngUx0NydfrIQ5lsYu0znKVUzVvArzEIt08V1qhtyESbGVd1FGX7UKtiFp5uwKZdM8wIuQ==", + "dev": true, + "peer": true, + "dependencies": { + "@types/retry": "0.12.0", + "retry": "^0.13.1" + }, + "engines": { + "node": ">=8" + } + }, + "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/pako": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", + "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==" + }, + "node_modules/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, + "dependencies": { + "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "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==", + "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" + } + }, + "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": "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, + "peer": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/path-browserify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-1.0.1.tgz", + "integrity": "sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==" + }, + "node_modules/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, + "engines": { + "node": ">=8" + } + }, + "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": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/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, + "engines": { + "node": ">=8" + } + }, + "node_modules/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 + }, + "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-to-regexp": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", + "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==", + "dev": true, + "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==", + "dependencies": { + "create-hash": "^1.1.2", + "create-hmac": "^1.1.4", + "ripemd160": "^2.0.1", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" + }, + "engines": { + "node": ">=0.12" + } + }, + "node_modules/picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==" + }, + "node_modules/picomatch": { + "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" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/pirates": { + "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", + "integrity": "sha512-Wb4p1J4zyFTbM+u6WuO4XstYx4Ky9Cewe4DWrel7B0w6VVICvPwdOpotjzcf6eD8TsckVnIMNONQyPIUFOUbCQ==", + "deprecated": "You can find the new Popper v2 at @popperjs/core, this package is dedicated to the legacy v1", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/popperjs" + } + }, + "node_modules/postcss": { + "version": "8.4.17", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.17.tgz", + "integrity": "sha512-UNxNOLQydcOFi41yHNMcKRZ39NeXlr8AxGuZJsdub8vIb12fHzcq37DTU/QtbI6WLxNg2gF9Z+8qtRwTj1UI1Q==", + "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" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/postcss-html": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/postcss-html/-/postcss-html-1.5.0.tgz", + "integrity": "sha512-kCMRWJRHKicpA166kc2lAVUGxDZL324bkj/pVOb6RhjB0Z5Krl7mN0AsVkBhVIRZZirY0lyQXG38HCVaoKVNoA==", + "dev": true, + "peer": true, + "dependencies": { + "htmlparser2": "^8.0.0", + "js-tokens": "^8.0.0", + "postcss": "^8.4.0", + "postcss-safe-parser": "^6.0.0" + }, + "engines": { + "node": "^12 || >=14" + } + }, + "node_modules/postcss-html/node_modules/js-tokens": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-8.0.0.tgz", + "integrity": "sha512-PC7MzqInq9OqKyTXfIvQNcjMkODJYC8A17kAaQgeW79yfhqTWSOfjHYQ2mDDcwJ96Iibtwkfh0C7R/OvqPlgVA==", + "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.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/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/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/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-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==", + "dev": true, + "peer": true, + "engines": { + "node": ">=12.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + "peerDependencies": { + "postcss": "^8.3.3" + } + }, + "node_modules/postcss-scss": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/postcss-scss/-/postcss-scss-4.0.5.tgz", + "integrity": "sha512-F7xpB6TrXyqUh3GKdyB4Gkp3QL3DDW1+uI+gxx/oJnUt/qXI4trj5OGlp9rOKdoABGULuqtqeG+3HEVQk4DjmA==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss-scss" + } + ], + "peer": true, + "engines": { + "node": ">=12.0" + }, + "peerDependencies": { + "postcss": "^8.3.3" + } + }, + "node_modules/postcss-selector-parser": { + "version": "6.0.10", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.10.tgz", + "integrity": "sha512-IQ7TZdoaqbT+LCpShg46jnZVlhWD2w6iQYAcYXfHARZ7X1t/UGhhceQDs5X0cGqKvYlHNOuv7Oa1xmb0oQuA3w==", + "dev": true, + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-value-parser": { + "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/preact": { + "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" + } + }, + "node_modules/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, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/prettier": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.7.1.tgz", + "integrity": "sha512-ujppO+MkdPqoVINuDFDRLClm7D78qbDt0/NR+wp5FqEZOoTNAjPHWj17QRhu7geIHJfcNhRk1XVQmF8Bp3ye+g==", + "dev": true, + "optional": 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": "sha512-G9xUchgTEiNpormdYBl+Pha50gOUovT18IvAe7EYMZ1/f9W/WWMPRn+xI68yXNMUk3QXHDwo/1wV/4NejVNe1w==", + "dev": true, + "dependencies": { + "condense-newlines": "^0.2.1", + "extend-shallow": "^2.0.1", + "js-beautify": "^1.6.12" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/pretty-format": { + "version": "29.5.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.5.0.tgz", + "integrity": "sha512-V2mGkI31qdttvTFX7Mt4efOqHXqJWMu4/r66Xh3Z3BwZaPfPJgp6/gbwoujRpPUtfEF6AUUWx3Jim3GCw5g/Qw==", + "dev": true, + "dependencies": { + "@jest/schemas": "^29.4.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/pretty-format/node_modules/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, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/process": { + "version": "0.11.10", + "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", + "integrity": "sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==", + "engines": { + "node": ">= 0.6.0" + } + }, + "node_modules/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 + }, + "node_modules/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, + "dependencies": { + "kleur": "^3.0.3", + "sisteransi": "^1.0.5" + }, + "engines": { + "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": "sha512-vtK/94akxsTMhe0/cbfpR+syPuszcuwhqVjJq26CuNDgFGj682oRBXOP5MJpv2r7JtE8MsiepGIqvvOTBwn2vA==", + "dev": true + }, + "node_modules/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, + "dependencies": { + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/proxy-addr/node_modules/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, + "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": "sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ==", + "dev": true + }, + "node_modules/psl": { + "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": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz", + "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==", + "dependencies": { + "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" + } + }, + "node_modules/public-encrypt/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==" + }, + "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==", + "engines": { + "node": ">=6" + } + }, + "node_modules/pure-rand": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/pure-rand/-/pure-rand-6.0.1.tgz", + "integrity": "sha512-t+x1zEHDjBwkDGY5v5ApnZ/utcd4XYDiJsaQQoptTXgUXX95sDg1elCdJghzicm7n2mbCBJ3uYWr6M22SO19rg==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/dubzzz" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/fast-check" + } + ] + }, + "node_modules/qs": { + "version": "6.11.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", + "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", + "dev": true, + "peer": true, + "dependencies": { + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">=0.6" + }, + "funding": { + "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.", + "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", + "integrity": "sha512-773xhDQnZBMFobEiztv8LIl70ch5MSF/jUQVlhwFyBILqq96anmoctVIYz+ZRp0qbCKATTn6ev02M3r7Ga5vqA==", + "engines": { + "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", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "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/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, + "engines": { + "node": ">=8" + } + }, + "node_modules/randombytes": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", + "dependencies": { + "safe-buffer": "^5.1.0" + } + }, + "node_modules/randomfill": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz", + "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==", + "dependencies": { + "randombytes": "^2.0.5", + "safe-buffer": "^5.1.0" + } + }, + "node_modules/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, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/raw-body": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz", + "integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==", + "dev": true, + "peer": true, + "dependencies": { + "bytes": "3.1.2", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/raw-body/node_modules/bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", + "dev": true, + "peer": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/react": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react/-/react-18.2.0.tgz", + "integrity": "sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==", + "peer": true, + "dependencies": { + "loose-envify": "^1.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/react-dom": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.2.0.tgz", + "integrity": "sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==", + "peer": true, + "dependencies": { + "loose-envify": "^1.1.0", + "scheduler": "^0.23.0" + }, + "peerDependencies": { + "react": "^18.2.0" + } + }, + "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": "5.2.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", + "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", + "dev": true, + "peer": true, + "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" + } + }, + "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, + "dependencies": { + "find-up": "^4.1.0", + "read-pkg": "^5.2.0", + "type-fest": "^0.8.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "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/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/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, + "dependencies": { + "hosted-git-info": "^2.1.4", + "resolve": "^1.10.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" + } + }, + "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==", + "dev": true, + "peer": true, + "bin": { + "semver": "bin/semver" + } + }, + "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==", + "dev": true, + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/readable-stream": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-4.2.0.tgz", + "integrity": "sha512-gJrBHsaI3lgBoGMW/jHZsQ/o/TIWiu5ENCJG1BB7fuCKzpFM8GaS2UoBVt9NO+oI+3FcrBNbUkl3ilDe09aY4A==", + "dependencies": { + "abort-controller": "^3.0.0", + "buffer": "^6.0.3", + "events": "^3.3.0", + "process": "^0.11.10" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dev": true, + "peer": true, + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "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": { + "resolve": "^1.20.0" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/redent": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/redent/-/redent-3.0.0.tgz", + "integrity": "sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==", + "dev": true, + "peer": true, + "dependencies": { + "indent-string": "^4.0.0", + "strip-indent": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "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 + }, + "node_modules/regenerate-unicode-properties": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.1.0.tgz", + "integrity": "sha512-d1VudCLoIGitcU/hEg2QqvyGZQmdC0Lf8BqdOMXGFSvJP4bNV1+XqbPQeHHLD51Jh4QJJ225dlIFvY4Ly6MXmQ==", + "dev": true, + "dependencies": { + "regenerate": "^1.4.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_modules/regenerator-transform": { + "version": "0.15.1", + "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.1.tgz", + "integrity": "sha512-knzmNAcuyxV+gQCufkYcvOqX/qIIfHLv0u5x79kRxuGojfYVky1f15TzZEu2Avte8QGepvUNTnLskf8E6X6Vyg==", + "dev": true, + "dependencies": { + "@babel/runtime": "^7.8.4" + } + }, + "node_modules/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 + }, + "node_modules/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==", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "functions-have-names": "^1.2.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "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": "5.3.2", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.3.2.tgz", + "integrity": "sha512-RAM5FlZz+Lhmo7db9L298p2vHP5ZywrVXmVXpmAD9GuL5MPH6t9ROw1iA/wfHkQ76Qe7AaPF0nGuim96/IrQMQ==", + "dev": true, + "dependencies": { + "@babel/regjsgen": "^0.8.0", + "regenerate": "^1.4.2", + "regenerate-unicode-properties": "^10.1.0", + "regjsparser": "^0.9.1", + "unicode-match-property-ecmascript": "^2.0.0", + "unicode-match-property-value-ecmascript": "^2.1.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/regjsparser": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.9.1.tgz", + "integrity": "sha512-dQUtn90WanSNl+7mQKcXAgZxvUe7Z0SqXlgzv0za4LwiUhyzBC58yQO3liFoUgu8GiJVInAhJjkj1N0EtQ5nkQ==", + "dev": true, + "dependencies": { + "jsesc": "~0.5.0" + }, + "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": "sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==", + "dev": true, + "bin": { + "jsesc": "bin/jsesc" + } + }, + "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/remark-breaks": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/remark-breaks/-/remark-breaks-3.0.2.tgz", + "integrity": "sha512-x96YDJ9X+Ry0/JNZFKfr1hpcAKvGYWfUTszxY9RbxKEqq6uzPPoLCuHdZsLPZZUdAv3nCROyc7FPrQLWr2rxyw==", + "dependencies": { + "@types/mdast": "^3.0.0", + "unified": "^10.0.0", + "unist-util-visit": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-external-links": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/remark-external-links/-/remark-external-links-9.0.1.tgz", + "integrity": "sha512-EYw+p8Zqy5oT5+W8iSKzInfRLY+zeKWHCf0ut+Q5SwnaSIDGXd2zzvp4SWqyAuVbinNmZ0zjMrDKaExWZnTYqQ==", + "dependencies": { + "@types/hast": "^2.3.2", + "@types/mdast": "^3.0.0", + "extend": "^3.0.0", + "is-absolute-url": "^4.0.0", + "mdast-util-definitions": "^5.0.0", + "space-separated-tokens": "^2.0.0", + "unified": "^10.0.0", + "unist-util-visit": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-parse": { + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-10.0.1.tgz", + "integrity": "sha512-1fUyHr2jLsVOkhbvPRBJ5zTKZZyD6yZzYaWCS6BPBdQ8vEMBCH+9zNCDA6tET/zHCi/jLqjCWtlJZUPk+DbnFw==", + "dependencies": { + "@types/mdast": "^3.0.0", + "mdast-util-from-markdown": "^1.0.0", + "unified": "^10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-rehype": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/remark-rehype/-/remark-rehype-10.1.0.tgz", + "integrity": "sha512-EFmR5zppdBp0WQeDVZ/b66CWJipB2q2VLNFMabzDSGR66Z2fQii83G5gTBbgGEnEEA0QRussvrFHxk1HWGJskw==", + "dependencies": { + "@types/hast": "^2.0.0", + "@types/mdast": "^3.0.0", + "mdast-util-to-hast": "^12.1.0", + "unified": "^10.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": "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.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", + "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", + "dev": true, + "dependencies": { + "is-core-module": "^2.9.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-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.1", + "resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-2.0.1.tgz", + "integrity": "sha512-OEJWVeimw8mgQuj3HfkNl4KqRevH7lzeQNaWRPfx0PPse7Jk6ozcsG4FKVgtzDsC1KUF+YlTHh17NcgHOPykLw==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/retry": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.13.1.tgz", + "integrity": "sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==", + "dev": true, + "peer": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/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, + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, + "node_modules/rimraf": { + "version": "3.0.2", + "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" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/ripemd160": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", + "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", + "dependencies": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1" + } + }, + "node_modules/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, + "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, + "dependencies": { + "queue-microtask": "^1.2.2" + } + }, + "node_modules/sade": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/sade/-/sade-1.8.1.tgz", + "integrity": "sha512-xal3CZX1Xlo/k4ApwCFrHVACi9fBqJ7V+mwhBsuf/1IOKbBy098Fex+Wa/5QMubw09pSZ/u8EY8PWgevJsXp1A==", + "dependencies": { + "mri": "^1.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "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==", + "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/safe-regex-test": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.0.tgz", + "integrity": "sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==", + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.3", + "is-regex": "^1.1.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" + }, + "node_modules/sass": { + "version": "1.55.0", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.55.0.tgz", + "integrity": "sha512-Pk+PMy7OGLs9WaxZGJMn7S96dvlyVBwwtToX895WmCpAOr5YiJYEUJfiJidMuKb613z2xNWcXCHEuOvjZbqC6A==", + "dev": true, + "peer": true, + "dependencies": { + "chokidar": ">=3.0.0 <4.0.0", + "immutable": "^4.0.0", + "source-map-js": ">=0.6.2 <2.0.0" + }, + "bin": { + "sass": "sass.js" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/sass-loader": { + "version": "13.1.0", + "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-13.1.0.tgz", + "integrity": "sha512-tZS1RJQ2n2+QNyf3CCAo1H562WjL/5AM6Gi8YcPVVoNxQX8d19mx8E+8fRrMWsyc93ZL6Q8vZDSM0FHVTJaVnQ==", + "dev": true, + "peer": true, + "dependencies": { + "klona": "^2.0.4", + "neo-async": "^2.6.2" + }, + "engines": { + "node": ">= 14.15.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", + "sass": "^1.3.0", + "sass-embedded": "*", + "webpack": "^5.0.0" + }, + "peerDependenciesMeta": { + "fibers": { + "optional": true + }, + "node-sass": { + "optional": true + }, + "sass": { + "optional": true + }, + "sass-embedded": { + "optional": true + } + } + }, + "node_modules/saxes": { + "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": ">=v12.22.7" + } + }, + "node_modules/scheduler": { + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.0.tgz", + "integrity": "sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw==", + "peer": true, + "dependencies": { + "loose-envify": "^1.1.0" + } + }, + "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/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/scrollparent": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/scrollparent/-/scrollparent-2.0.1.tgz", + "integrity": "sha512-HSdN78VMvFCSGCkh0oYX/tY4R3P1DW61f8+TeZZ4j2VLgfwvw0bpRSOv4PCVKisktIwbzHCfZsx+rLbbDBqIBA==" + }, + "node_modules/select-hose": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz", + "integrity": "sha512-mEugaLK+YfkijB4fx0e6kImuJdCIt2LxCRcbEYPqRGCs4F2ogyfZU5IAZRdjCP8JPq2AtdNoC/Dux63d9Kiryg==", + "dev": true, + "peer": true + }, + "node_modules/selfsigned": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-2.1.1.tgz", + "integrity": "sha512-GSL3aowiF7wa/WtSFwnUrludWFoNhftq8bUkH9pkzjpN2XSPOAYEgg6e0sS9s0rZwgJzJiQRPU18A6clnoW5wQ==", + "dev": true, + "peer": true, + "dependencies": { + "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==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/send": { + "version": "0.18.0", + "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", + "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", + "dev": true, + "peer": true, + "dependencies": { + "debug": "2.6.9", + "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": "2.0.0", + "mime": "1.6.0", + "ms": "2.1.3", + "on-finished": "2.4.1", + "range-parser": "~1.2.1", + "statuses": "2.0.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/send/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/send/node_modules/debug/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/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, + "peer": true + }, + "node_modules/serialize-javascript": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.0.tgz", + "integrity": "sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag==", + "peer": true, + "dependencies": { + "randombytes": "^2.1.0" + } + }, + "node_modules/serve-index": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz", + "integrity": "sha512-pXHfKNP4qujrtteMrSBb0rc8HJ9Ms/GrXwcUtUtD5s4ewDJI8bT3Cz2zTVRMKtri49pLx2e0Ya8ziP5Ya2pZZw==", + "dev": true, + "peer": true, + "dependencies": { + "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" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/serve-index/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/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, + "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": "sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A==", + "dev": true, + "peer": true, + "dependencies": { + "depd": "~1.1.2", + "inherits": "2.0.3", + "setprototypeof": "1.1.0", + "statuses": ">= 1.4.0 < 2" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/serve-index/node_modules/inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==", + "dev": true, + "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": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true, + "peer": true + }, + "node_modules/serve-index/node_modules/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 + }, + "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, + "peer": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/serve-static": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", + "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", + "dev": true, + "peer": true, + "dependencies": { + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "parseurl": "~1.3.3", + "send": "0.18.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "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==" + }, + "node_modules/setprototypeof": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", + "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", + "dev": true, + "peer": true + }, + "node_modules/sha.js": { + "version": "2.4.11", + "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", + "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", + "dependencies": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + }, + "bin": { + "sha.js": "bin.js" + } + }, + "node_modules/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, + "dependencies": { + "kind-of": "^6.0.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shallow-clone/node_modules/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, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/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, + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/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, + "engines": { + "node": ">=8" + } + }, + "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==", + "dependencies": { + "call-bind": "^1.0.0", + "get-intrinsic": "^1.0.2", + "object-inspect": "^1.9.0" + }, + "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": "sha512-fCvEXfh6NWpm+YSuY2bpXb/VIihqWA6hLsgboC+0nl71Q7N7o2eaCW8mJa/NLvQhs6jpd3VZV4UiUQlV6+lc8g==", + "dev": true + }, + "node_modules/signal-exit": { + "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/simple-swizzle": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.2.tgz", + "integrity": "sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==", + "dependencies": { + "is-arrayish": "^0.3.1" + } + }, + "node_modules/simple-swizzle/node_modules/is-arrayish": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.2.tgz", + "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==" + }, + "node_modules/sisteransi": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", + "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", + "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", + "dev": true, + "peer": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/slice-ansi?sponsor=1" + } + }, + "node_modules/slice-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, + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "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, + "peer": true, + "dependencies": { + "faye-websocket": "^0.11.3", + "uuid": "^8.3.2", + "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, + "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.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/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==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-support": { + "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/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/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, + "dependencies": { + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/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 + }, + "node_modules/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, + "dependencies": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/spdx-license-ids": { + "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 + }, + "node_modules/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, + "dependencies": { + "debug": "^4.1.0", + "handle-thing": "^2.0.0", + "http-deceiver": "^1.2.7", + "select-hose": "^2.0.0", + "spdy-transport": "^3.0.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/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, + "dependencies": { + "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" + } + }, + "node_modules/spdy-transport/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==", + "dev": true, + "peer": true, + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/splitpanes": { + "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": "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==", + "dev": true, + "dependencies": { + "escape-string-regexp": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/statuses": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", + "dev": true, + "peer": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/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==", + "dependencies": { + "inherits": "~2.0.4", + "readable-stream": "^3.5.0" + } + }, + "node_modules/stream-browserify/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==", + "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==", + "dependencies": { + "builtin-status-codes": "^3.0.0", + "inherits": "^2.0.4", + "readable-stream": "^3.6.0", + "xtend": "^4.0.2" + } + }, + "node_modules/stream-http/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==", + "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==", + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "node_modules/string-length": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/string-length/-/string-length-5.0.1.tgz", + "integrity": "sha512-9Ep08KAMUn0OadnVaBuRdE2l615CQ508kr0XMadjClfYpdCyvrbFp6Taebo8yyxokQ4viUd/xPPUA4FGgUa0ow==", + "dependencies": { + "char-regex": "^2.0.0", + "strip-ansi": "^7.0.1" + }, + "engines": { + "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": { + "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==", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.19.5" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/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==", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.19.5" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/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, + "engines": { + "node": ">=8" + } + }, + "node_modules/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, + "engines": { + "node": ">=6" + } + }, + "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==", + "dev": true, + "peer": true, + "dependencies": { + "min-indent": "^1.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/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, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/striptags": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/striptags/-/striptags-3.2.0.tgz", + "integrity": "sha512-g45ZOGzHDMe2bdYMdIvdAfCQkCTDMGBazSw1ypMowwGIee7ZQ5dU0rBJ8Jqgl+jAKIv4dbeE1jscZq9wid1Tkw==" + }, + "node_modules/strnum": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/strnum/-/strnum-1.0.5.tgz", + "integrity": "sha512-J8bbNyKKXl5qYcR36TIO8W3mVGVHrmmxsd5PAItGkmyzwJvybiw2IVq5nqd0i4LSNSkB/sx9VHllbfFdr9k1JA==" + }, + "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==", + "dev": true, + "peer": true, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.0.0" + } + }, + "node_modules/style-search": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/style-search/-/style-search-0.1.0.tgz", + "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.13.0", + "resolved": "https://registry.npmjs.org/stylelint/-/stylelint-14.13.0.tgz", + "integrity": "sha512-NJSAdloiAB/jgVJKxMR90mWlctvmeBFGFVUvyKngi9+j/qPSJ5ZB+u8jOmGbLTnS7OHrII9NFGehPRyar8U5vg==", + "dev": true, + "peer": true, + "dependencies": { + "@csstools/selector-specificity": "^2.0.2", + "balanced-match": "^2.0.0", + "colord": "^2.9.3", + "cosmiconfig": "^7.0.1", + "css-functions-list": "^3.1.0", + "debug": "^4.3.4", + "fast-glob": "^3.2.12", + "fastest-levenshtein": "^1.0.16", + "file-entry-cache": "^6.0.1", + "global-modules": "^2.0.0", + "globby": "^11.1.0", + "globjoin": "^0.1.4", + "html-tags": "^3.2.0", + "ignore": "^5.2.0", + "import-lazy": "^4.0.0", + "imurmurhash": "^0.1.4", + "is-plain-object": "^5.0.0", + "known-css-properties": "^0.25.0", + "mathml-tag-names": "^2.1.3", + "meow": "^9.0.0", + "micromatch": "^4.0.5", + "normalize-path": "^3.0.0", + "picocolors": "^1.0.0", + "postcss": "^8.4.16", + "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.10", + "postcss-value-parser": "^4.2.0", + "resolve-from": "^5.0.0", + "string-width": "^4.2.3", + "strip-ansi": "^6.0.1", + "style-search": "^0.1.0", + "supports-hyperlinks": "^2.3.0", + "svg-tags": "^1.0.0", + "table": "^6.8.0", + "v8-compile-cache": "^2.3.0", + "write-file-atomic": "^4.0.2" + }, + "bin": { + "stylelint": "bin/stylelint.js" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/stylelint" + } + }, + "node_modules/stylelint-config-html": { + "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": "8.0.0", + "resolved": "https://registry.npmjs.org/stylelint-config-recommended/-/stylelint-config-recommended-8.0.0.tgz", + "integrity": "sha512-IK6dWvE000+xBv9jbnHOnBq01gt6HGVB2ZTsot+QsMpe82doDQ9hvplxfv4YnpEuUwVGGd9y6nbaAnhrjcxhZQ==", + "dev": true, + "peer": true, + "peerDependencies": { + "stylelint": "^14.8.0" + } + }, + "node_modules/stylelint-config-recommended-scss": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/stylelint-config-recommended-scss/-/stylelint-config-recommended-scss-7.0.0.tgz", + "integrity": "sha512-rGz1J4rMAyJkvoJW4hZasuQBB7y9KIrShb20l9DVEKKZSEi1HAy0vuNlR8HyCKy/jveb/BdaQFcoiYnmx4HoiA==", + "dev": true, + "peer": true, + "dependencies": { + "postcss-scss": "^4.0.2", + "stylelint-config-recommended": "^8.0.0", + "stylelint-scss": "^4.0.0" + }, + "peerDependencies": { + "stylelint": "^14.4.0" + } + }, + "node_modules/stylelint-config-recommended-vue": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/stylelint-config-recommended-vue/-/stylelint-config-recommended-vue-1.4.0.tgz", + "integrity": "sha512-DVJqyX2KvMCn9U0+keL12r7xlsH26K4Vg8NrIZuq5MoF7g82DpMp326Om4E0Q+Il1o+bTHuUyejf2XAI0iD04Q==", + "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-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": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/stylelint-config-recommended-vue/node_modules/semver": { + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "dev": true, + "peer": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "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 + }, + "node_modules/stylelint-scss": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/stylelint-scss/-/stylelint-scss-4.3.0.tgz", + "integrity": "sha512-GvSaKCA3tipzZHoz+nNO7S02ZqOsdBzMiCx9poSmLlb3tdJlGddEX/8QzCOD8O7GQan9bjsvLMsO5xiw6IhhIQ==", + "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.5.1" + } + }, + "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/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, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/supports-hyperlinks": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-2.3.0.tgz", + "integrity": "sha512-RpsAZlpWcDwOPQA22aCH4J0t7L8JmAvsCxfOSEwm7cQs3LshN36QaTkwd70DnBOXDWGssw2eUoc8CaRWT0XunA==", + "dev": true, + "peer": true, + "dependencies": { + "has-flag": "^4.0.0", + "supports-color": "^7.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-hyperlinks/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/supports-hyperlinks/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/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": ">= 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": "sha512-ovssysQTa+luh7A5Weu3Rta6FJlFBBbInjOh722LIt6klpU2/HtdUbszju/G4devcvk8PGt7FCLv5wftu3THUA==", + "dev": true, + "peer": 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.8.0", + "resolved": "https://registry.npmjs.org/table/-/table-6.8.0.tgz", + "integrity": "sha512-s/fitrbVeEyHKFa7mFdkuQMWlH1Wgw/yEXMt5xACT4ZpzWFluehAxRtUUQKPuWhaLAWhFcVx6w3oC8VKaUfPGA==", + "dev": true, + "peer": true, + "dependencies": { + "ajv": "^8.0.1", + "lodash.truncate": "^4.4.2", + "slice-ansi": "^4.0.0", + "string-width": "^4.2.3", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/table/node_modules/ajv": { + "version": "8.11.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.11.0.tgz", + "integrity": "sha512-wGgprdCvMalC0BztXvitD2hC04YffAvtsUn93JbGXYLAtCUO4xd17mCCZQxUOItiBwZvJScWo8NIvQMQ71rdpg==", + "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/table/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/tapable": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", + "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", + "peer": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/terser": { + "version": "5.15.1", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.15.1.tgz", + "integrity": "sha512-K1faMUvpm/FBxjBXud0LWVAGxmvoPbZbfTCYbSgaaYQaIXI3/TdI7a7ZGA73Zrou6Q8Zmz3oeUTsp/dj+ag2Xw==", + "peer": true, + "dependencies": { + "@jridgewell/source-map": "^0.3.2", + "acorn": "^8.5.0", + "commander": "^2.20.0", + "source-map-support": "~0.5.20" + }, + "bin": { + "terser": "bin/terser" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/terser-webpack-plugin": { + "version": "5.3.6", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.6.tgz", + "integrity": "sha512-kfLFk+PoLUQIbLmB1+PZDMRSZS99Mp+/MHqDNmMA6tOItzRt+Npe3E+fsMs5mfcM0wCtrrdU387UnV+vnSffXQ==", + "peer": true, + "dependencies": { + "@jridgewell/trace-mapping": "^0.3.14", + "jest-worker": "^27.4.5", + "schema-utils": "^3.1.1", + "serialize-javascript": "^6.0.0", + "terser": "^5.14.1" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.1.0" + }, + "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==", + "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==", + "peer": true, + "dependencies": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/terser-webpack-plugin/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/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==", + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, + "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==", + "peer": true, + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "node_modules/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, + "dependencies": { + "@istanbuljs/schema": "^0.1.2", + "glob": "^7.1.4", + "minimatch": "^3.0.4" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", + "dev": true, + "peer": true + }, + "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, + "peer": true + }, + "node_modules/timers-browserify": { + "version": "2.0.12", + "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.12.tgz", + "integrity": "sha512-9phl76Cqm6FhSX9Xe1ZUAMLtm1BLkKj2Qd5ApyWkXzsMRaA7dgr81kf4wJmQf/hAvg8EEyJxDo3du/0KlhPiKQ==", + "dependencies": { + "setimmediate": "^1.0.4" + }, + "engines": { + "node": ">=0.6.0" + } + }, + "node_modules/tinycolor2": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/tinycolor2/-/tinycolor2-1.4.2.tgz", + "integrity": "sha512-vJhccZPs965sV/L2sU4oRQVAos0pQXwsvTLkWYdqJ+a8Q5kPFzJTuOFwy7UniPli44NKQGAglksjvOcpo95aZA==", + "engines": { + "node": "*" + } + }, + "node_modules/tmpl": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz", + "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": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "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/toastify-js": { + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/toastify-js/-/toastify-js-1.12.0.tgz", + "integrity": "sha512-HeMHCO9yLPvP9k0apGSdPUWrUbLnxUKNFzgUoZp1PHCLploIX/4DSQ7V8H25ef+h4iO9n0he7ImfcndnN6nDrQ==" + }, + "node_modules/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, + "engines": { + "node": ">=0.6" + } + }, + "node_modules/tough-cookie": { + "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.2.0", + "url-parse": "^1.5.3" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/tr46": { + "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": ">=12" + } + }, + "node_modules/tributejs": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/tributejs/-/tributejs-5.1.3.tgz", + "integrity": "sha512-B5CXihaVzXw+1UHhNFyAwUTMDk1EfoLP5Tj1VhD9yybZ1I8DZJEv8tZ1l0RJo0t0tk9ZhR8eG5tEsaCvRigmdQ==" + }, + "node_modules/trim-lines": { + "version": "3.0.1", + "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": "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, + "engines": { + "node": ">=8" + } + }, + "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/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, + "dependencies": { + "@types/strip-bom": "^3.0.0", + "@types/strip-json-comments": "0.0.30", + "strip-bom": "^3.0.0", + "strip-json-comments": "^2.0.0" + } + }, + "node_modules/tsconfig-paths": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.14.1.tgz", + "integrity": "sha512-fxDhWnFSLt3VuTwtvJt5fpwxBHg5AdKWMsgcPOOIilyjymcYVZoCQF8fvFRezCNfblEXmi+PcM1eYHeOAgXCOQ==", + "dev": true, + "peer": true, + "dependencies": { + "@types/json5": "^0.0.29", + "json5": "^1.0.1", + "minimist": "^1.2.6", + "strip-bom": "^3.0.0" + } + }, + "node_modules/tsconfig-paths/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/tsconfig-paths/node_modules/strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", + "dev": true, + "peer": true, + "engines": { + "node": ">=4" + } + }, + "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": "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": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/tsutils": { + "version": "3.21.0", + "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz", + "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==", + "dev": true, + "peer": true, + "dependencies": { + "tslib": "^1.8.1" + }, + "engines": { + "node": ">= 6" + }, + "peerDependencies": { + "typescript": ">=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta" + } + }, + "node_modules/tsutils/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true, + "peer": true + }, + "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==" + }, + "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/typescript": { + "version": "4.9.4", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.4.tgz", + "integrity": "sha512-Uz+dTXYzxXXbsFpM86Wh3dKCxrQqUcVMxwU54orwlJjOpO3ao8L7j5lH+dWfTwgCwIuM9GQ2kvVotzYJMXTBZg==", + "dev": true, + "peer": true, + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=4.2.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==", + "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": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz", + "integrity": "sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "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, + "dependencies": { + "unicode-canonical-property-names-ecmascript": "^2.0.0", + "unicode-property-aliases-ecmascript": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-match-property-value-ecmascript": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.1.0.tgz", + "integrity": "sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "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, + "engines": { + "node": ">=4" + } + }, + "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": "3.0.1", + "resolved": "https://registry.npmjs.org/unist-builder/-/unist-builder-3.0.1.tgz", + "integrity": "sha512-gnpOw7DIpCA0vpr6NqdPvTWnlPTApCTRzr+38E6hCWx3rz/cjo83SsKIlS1Z+L5ttScQ2AwutNnb8+tAvpb6qQ==", + "dependencies": { + "@types/unist": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-generated": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/unist-util-generated/-/unist-util-generated-2.0.1.tgz", + "integrity": "sha512-qF72kLmPxAw0oN2fwpWIqbXAVyEqUzDHMsbtPvOudIlUzXYFIeQIuxXQCRCFh22B7cixvU0MG7m3MW8FTq/S+A==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-is": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-5.2.1.tgz", + "integrity": "sha512-u9njyyfEh43npf1M+yGKDGVPbY/JWEemg5nH05ncKPfi+kBbKBJoTdsogMu33uhytuLlv9y0O7GH7fEdwLdLQw==", + "dependencies": { + "@types/unist": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-position": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/unist-util-position/-/unist-util-position-4.0.4.tgz", + "integrity": "sha512-kUBE91efOWfIVBo8xzh/uZQ7p9ffYRtUbMRZBNFYwf0RK8koUMx6dGUfwylLOKmaT2cs4wSW96QoYUSXAyEtpg==", + "dependencies": { + "@types/unist": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "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": "4.1.2", + "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-4.1.2.tgz", + "integrity": "sha512-MSd8OUGISqHdVvfY9TPhyK2VdUrPgxkUtWSuMHF6XAAFuL4LokseigBnZtPnJMu+FbynTkFNnFlyjxpVKujMRg==", + "dependencies": { + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0", + "unist-util-visit-parents": "^5.1.1" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-visit-parents": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-5.1.3.tgz", + "integrity": "sha512-x6+y8g7wWMyQhL1iZfhIPhDAs7Xwbn9nRosDXl7qoPTSCy0yNxnKc+hWokFifWQIDGi154rdUqKvbCa4+1kLhg==", + "dependencies": { + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "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" + } + }, + "node_modules/unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", + "dev": true, + "peer": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/update-browserslist-db": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.11.tgz", + "integrity": "sha512-dCwEFf0/oT85M1fHBg4F0jtLwJrutGoHSQXCh7u4o2t1drG+c0a9Flnqww6XUKSfQMPpJBRjU8d4RXB09qtvaA==", + "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" + } + ], + "dependencies": { + "escalade": "^3.1.1", + "picocolors": "^1.0.0" + }, + "bin": { + "update-browserslist-db": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" + } + }, + "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/url": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", + "integrity": "sha512-kbailJa29QrtXnxgq+DdCEGlbTeYM2eJUxsz6vjZavrCYPMIFHMKQmSKYAIuUK2i7hgPm28a8piX5NTUtM/LKQ==", + "dependencies": { + "punycode": "1.3.2", + "querystring": "0.2.0" + } + }, + "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": { + "querystringify": "^2.1.1", + "requires-port": "^1.0.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==" + }, + "node_modules/util": { + "version": "0.12.4", + "resolved": "https://registry.npmjs.org/util/-/util-0.12.4.tgz", + "integrity": "sha512-bxZ9qtSlGUWSOy9Qa9Xgk11kSslpuZwaxCg4sNIDj6FLucDab2JxnHwyNTCpHMtK1MjoQiWQ6DiUMZYbSrO+Sw==", + "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": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" + }, + "node_modules/utils-merge": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", + "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==", + "dev": true, + "peer": true, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/uuid": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.0.tgz", + "integrity": "sha512-MXcSTerfPa4uqyzStbRoTgt5XIe3x5+42+q1sDuy3R5MDk66URdLMOZe5aPX/SQd+kuYAh0FdP/pO28IkQyTeg==", + "bin": { + "uuid": "dist/bin/uuid" + } + }, + "node_modules/uvu": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/uvu/-/uvu-0.5.6.tgz", + "integrity": "sha512-+g8ENReyr8YsOc6fv/NVJs2vFdHBnBNdfE49rshrTzDWOlUx4Gq7KOS2GD8eqhy2j+Ejq29+SbKH8yjkAqXqoA==", + "dependencies": { + "dequal": "^2.0.0", + "diff": "^5.0.0", + "kleur": "^4.0.3", + "sade": "^1.7.3" + }, + "bin": { + "uvu": "bin.js" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/uvu/node_modules/kleur": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/kleur/-/kleur-4.1.5.tgz", + "integrity": "sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==", + "engines": { + "node": ">=6" + } + }, + "node_modules/v-click-outside": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/v-click-outside/-/v-click-outside-3.2.0.tgz", + "integrity": "sha512-QD0bDy38SHJXQBjgnllmkI/rbdiwmq9RC+/+pvrFjYJKTn8dtp7Penf9q1lLBta280fYG2q53mgLhQ+3l3z74w==", + "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/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": "9.1.0", + "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-9.1.0.tgz", + "integrity": "sha512-6z3GW9x8G1gd+JIIgQQQxXuiJtCXeAjp6RaPEPLv62mH3iPHPxV6W3robxtCzNErRo6ZwTmzWhsbNvjyEBKzKA==", + "dev": true, + "dependencies": { + "@jridgewell/trace-mapping": "^0.3.12", + "@types/istanbul-lib-coverage": "^2.0.1", + "convert-source-map": "^1.6.0" + }, + "engines": { + "node": ">=10.12.0" + } + }, + "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/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, + "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": { + "@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" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "engines": { + "node": ">=4" + } + }, + "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==" + }, + "node_modules/vue": { + "version": "2.7.14", + "resolved": "https://registry.npmjs.org/vue/-/vue-2.7.14.tgz", + "integrity": "sha512-b2qkFyOM0kwqWFuQmgd4o+uHGU7T+2z3T+WQp8UBjADfEv2n4FEMffzBmCKNP0IGzOEEfYjvtcC62xaSKeQDrQ==", + "dependencies": { + "@vue/compiler-sfc": "2.7.14", + "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-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": "9.1.0", + "resolved": "https://registry.npmjs.org/vue-eslint-parser/-/vue-eslint-parser-9.1.0.tgz", + "integrity": "sha512-NGn/iQy8/Wb7RrRa4aRkokyCZfOUWk19OP5HP6JEozQFX5AoS/t+Z0ZN7FY4LlmWc4FNI922V7cvX28zctN8dQ==", + "dev": true, + "peer": true, + "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.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.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "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" + } + }, + "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-loader": { + "version": "15.10.0", + "resolved": "https://registry.npmjs.org/vue-loader/-/vue-loader-15.10.0.tgz", + "integrity": "sha512-VU6tuO8eKajrFeBzMssFUP9SvakEeeSi1BxdTH5o3+1yUyrldp8IERkSdXlMI2t4kxF2sqYUDsQY+WJBxzBmZg==", + "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-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-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" + } + }, + "node_modules/vue-material-design-icons": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/vue-material-design-icons/-/vue-material-design-icons-5.2.0.tgz", + "integrity": "sha512-fcdcJHQ9fQw2CAytuLAzWSELcxH138sCdMItVhvmO7Lu9afIgojB/UCWv7XHt/lURsnq/n6O+muM4AQgw8yfig==" + }, + "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-router": { + "version": "3.6.5", + "resolved": "https://registry.npmjs.org/vue-router/-/vue-router-3.6.5.tgz", + "integrity": "sha512-VYXZQLtjuvKxxcshuRAwjHnciqZVoXAjTjcqBTz4rKc8qih9g9pI3hbDjmqXaHdgL3v8pV6P8Z335XvHzESxLQ==" + }, + "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-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, + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^1.0.1" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/vue-template-compiler": { + "version": "2.7.14", + "resolved": "https://registry.npmjs.org/vue-template-compiler/-/vue-template-compiler-2.7.14.tgz", + "integrity": "sha512-zyA5Y3ArvVG0NacJDkkzJuPQDF8RFeRlzV2vLeSnhSpieO6LK2OVbdLPi5MPPs09Ii+gMO8nY4S3iKQxBxDmWQ==", + "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.11.0", + "resolved": "https://registry.npmjs.org/vue2-datepicker/-/vue2-datepicker-3.11.0.tgz", + "integrity": "sha512-zbMkAjYwDTXZozZtkpSwqxq7nEeBt7zoHL+oQcdjEXAqzJHhmatE6sl6JSr58PMIx2WOK0c6QBXozSqT32iQAQ==", + "dependencies": { + "date-format-parse": "^0.2.7" + }, + "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-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, + "dependencies": { + "xml-name-validator": "^4.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "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.4.0", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz", + "integrity": "sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==", + "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/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==", + "optional": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/webdav": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/webdav/-/webdav-5.3.0.tgz", + "integrity": "sha512-xRu/URZGCxDPXmT+9Gu6tNGvlETBwjcuz69lx/6Qlq/0q3Gu2GSVyRt+mP0vTlLFfaY3xZ5O/SPTQ578tC/45Q==", + "dependencies": { + "@buttercup/fetch": "^0.1.1", + "base-64": "^1.0.0", + "byte-length": "^1.0.2", + "fast-xml-parser": "^4.2.4", + "he": "^1.2.0", + "hot-patcher": "^2.0.0", + "layerr": "^2.0.1", + "md5": "^2.3.0", + "minimatch": "^7.4.6", + "nested-property": "^4.0.0", + "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.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/webdav/node_modules/minimatch": { + "version": "7.4.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-7.4.6.tgz", + "integrity": "sha512-sBz8G/YjVniEz6lKPNpKxXwazJe4c19fEfV2GDMX6AjFz+MX9uDWIZW8XreVhkFW3fkIdTv/gxWr/Kks5FFAVw==", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=10" + }, + "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" + } + }, + "node_modules/webpack": { + "version": "5.76.1", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.76.1.tgz", + "integrity": "sha512-4+YIK4Abzv8172/SGqObnUjaIHjLEuUasz9EwQj/9xmPPkYJy2Mh03Q/lJfSD3YLzbxy5FeTq5Uw0323Oh6SJQ==", + "peer": true, + "dependencies": { + "@types/eslint-scope": "^3.7.3", + "@types/estree": "^0.0.51", + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/wasm-edit": "1.11.1", + "@webassemblyjs/wasm-parser": "1.11.1", + "acorn": "^8.7.1", + "acorn-import-assertions": "^1.7.6", + "browserslist": "^4.14.5", + "chrome-trace-event": "^1.0.2", + "enhanced-resolve": "^5.10.0", + "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-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", + "tapable": "^2.1.1", + "terser-webpack-plugin": "^5.1.3", + "watchpack": "^2.4.0", + "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": "5.0.1", + "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-5.0.1.tgz", + "integrity": "sha512-S3KVAyfwUqr0Mo/ur3NzIp6jnerNpo7GUO6so51mxLi1spqsA17YcMXy0WOIJtBSnj748lthxC6XLbNKh/ZC+A==", + "dev": true, + "peer": true, + "dependencies": { + "@discoveryjs/json-ext": "^0.5.0", + "@webpack-cli/configtest": "^2.0.1", + "@webpack-cli/info": "^2.0.1", + "@webpack-cli/serve": "^2.0.1", + "colorette": "^2.0.14", + "commander": "^9.4.1", + "cross-spawn": "^7.0.3", + "envinfo": "^7.7.3", + "fastest-levenshtein": "^1.0.12", + "import-local": "^3.0.2", + "interpret": "^3.1.1", + "rechoir": "^0.8.0", + "webpack-merge": "^5.7.3" + }, + "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 + } + } + }, + "node_modules/webpack-cli/node_modules/commander": { + "version": "9.5.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-9.5.0.tgz", + "integrity": "sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ==", + "dev": true, + "peer": true, + "engines": { + "node": "^12.20.0 || >=14" + } + }, + "node_modules/webpack-dev-middleware": { + "version": "5.3.3", + "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-5.3.3.tgz", + "integrity": "sha512-hj5CYrY0bZLB+eTO+x/j67Pkrquiy7kWepMHmUMoPsmcUaeEnQJqFzHJOyxgWlq746/wUuA64p9ta34Kyb01pA==", + "dev": true, + "peer": true, + "dependencies": { + "colorette": "^2.0.10", + "memfs": "^3.4.3", + "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-server": { + "version": "4.11.1", + "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-4.11.1.tgz", + "integrity": "sha512-lILVz9tAUy1zGFwieuaQtYiadImb5M3d+H+L1zDYalYoDl0cksAB1UNyuE5MMWJrG6zR1tXkCP2fitl7yoUJiw==", + "dev": true, + "peer": true, + "dependencies": { + "@types/bonjour": "^3.5.9", + "@types/connect-history-api-fallback": "^1.3.5", + "@types/express": "^4.17.13", + "@types/serve-index": "^1.9.1", + "@types/serve-static": "^1.13.10", + "@types/sockjs": "^0.3.33", + "@types/ws": "^8.5.1", + "ansi-html-community": "^0.0.8", + "bonjour-service": "^1.0.11", + "chokidar": "^3.5.3", + "colorette": "^2.0.10", + "compression": "^1.7.4", + "connect-history-api-fallback": "^2.0.0", + "default-gateway": "^6.0.3", + "express": "^4.17.3", + "graceful-fs": "^4.2.6", + "html-entities": "^2.3.2", + "http-proxy-middleware": "^2.0.3", + "ipaddr.js": "^2.0.1", + "open": "^8.0.9", + "p-retry": "^4.5.0", + "rimraf": "^3.0.2", + "schema-utils": "^4.0.0", + "selfsigned": "^2.1.1", + "serve-index": "^1.9.1", + "sockjs": "^0.3.24", + "spdy": "^4.0.2", + "webpack-dev-middleware": "^5.3.1", + "ws": "^8.4.2" + }, + "bin": { + "webpack-dev-server": "bin/webpack-dev-server.js" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^4.37.0 || ^5.0.0" + }, + "peerDependenciesMeta": { + "webpack-cli": { + "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/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": "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, + "dependencies": { + "iconv-lite": "0.6.3" + }, + "engines": { + "node": ">=12" + } + }, + "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" + } + }, + "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, + "dependencies": { + "tr46": "^3.0.0", + "webidl-conversions": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "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==", + "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==", + "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.4", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.4.tgz", + "integrity": "sha512-2V81OA4ugVo5pRo46hAoD2ivUJx8jXmWXfUkY4KFNw0hEptvN0QfH3K4nHiwzGeKl5rFKedV48QVoqYavy4YpA==", + "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": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "dev": true + }, + "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, + "dependencies": { + "imurmurhash": "^0.1.4", + "signal-exit": "^3.0.7" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/ws": { + "version": "8.9.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.9.0.tgz", + "integrity": "sha512-Ja7nszREasGaYUYCI2k4lCKIRTt+y7XuqVoHR44YpI49TtryyqbqvDMn5eqfW7e6HzTukDRIsXqzVHScqRcafg==", + "dev": 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/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" + } + }, + "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/xtend": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", + "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": "sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==", + "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": "17.7.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.1.tgz", + "integrity": "sha512-cwiTb08Xuv5fqF4AovYacTFNxk62th7LKJ6BL9IGUpTJrWoU7/7WdQGTP2SjKf1dUNBGzDd28p/Yfs/GI6JrLw==", + "dev": true, + "dependencies": { + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.1.1" + }, + "engines": { + "node": ">=12" + } + }, + "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, + "peer": true, + "engines": { + "node": ">=10" + } + }, + "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.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": { + "@ampproject/remapping": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz", + "integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==", + "dev": true, + "requires": { + "@jridgewell/gen-mapping": "^0.1.0", + "@jridgewell/trace-mapping": "^0.3.9" + } + }, + "@babel/code-frame": { + "version": "7.21.4", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.21.4.tgz", + "integrity": "sha512-LYvhNKfwWSPpocw8GI7gpK2nq3HSDuEPC/uSYaALSJu9xjsalaaYFOq0Pwt5KmVqwEbZlDu81aLXwBOmD/Fv9g==", + "dev": true, + "requires": { + "@babel/highlight": "^7.18.6" + } + }, + "@babel/compat-data": { + "version": "7.22.3", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.22.3.tgz", + "integrity": "sha512-aNtko9OPOwVESUFp3MZfD8Uzxl7JzSeJpd7npIoxCasU37PFbAQRpKglkaKwlHOyeJdrREpo8TW8ldrkYWwvIQ==", + "dev": true + }, + "@babel/core": { + "version": "7.22.1", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.22.1.tgz", + "integrity": "sha512-Hkqu7J4ynysSXxmAahpN1jjRwVJ+NdpraFLIWflgjpVob3KNyK3/tIUc7Q7szed8WMp0JNa7Qtd1E9Oo22F9gA==", + "dev": true, + "requires": { + "@ampproject/remapping": "^2.2.0", + "@babel/code-frame": "^7.21.4", + "@babel/generator": "^7.22.0", + "@babel/helper-compilation-targets": "^7.22.1", + "@babel/helper-module-transforms": "^7.22.1", + "@babel/helpers": "^7.22.0", + "@babel/parser": "^7.22.0", + "@babel/template": "^7.21.9", + "@babel/traverse": "^7.22.1", + "@babel/types": "^7.22.0", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.2", + "semver": "^6.3.0" + } + }, + "@babel/eslint-parser": { + "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, + "requires": { + "@nicolo-ribaudo/eslint-scope-5-internals": "5.1.1-v1", + "eslint-visitor-keys": "^2.1.0", + "semver": "^6.3.0" + } + }, + "@babel/generator": { + "version": "7.22.3", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.22.3.tgz", + "integrity": "sha512-C17MW4wlk//ES/CJDL51kPNwl+qiBQyN7b9SKyVp11BLGFeSPoVaHrv+MNt8jwQFhQWowW88z1eeBx3pFz9v8A==", + "dev": true, + "requires": { + "@babel/types": "^7.22.3", + "@jridgewell/gen-mapping": "^0.3.2", + "@jridgewell/trace-mapping": "^0.3.17", + "jsesc": "^2.5.1" + }, + "dependencies": { + "@jridgewell/gen-mapping": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", + "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", + "dev": true, + "requires": { + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + } + } + } + }, + "@babel/helper-annotate-as-pure": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.18.6.tgz", + "integrity": "sha512-duORpUiYrEpzKIop6iNbjnwKLAKnJ47csTyRACyEmWj0QdUrm5aqNJGHSSEQSUAvNW0ojX0dOmK9dZduvkfeXA==", + "dev": true, + "requires": { + "@babel/types": "^7.18.6" + } + }, + "@babel/helper-builder-binary-assignment-operator-visitor": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.18.9.tgz", + "integrity": "sha512-yFQ0YCHoIqarl8BCRwBL8ulYUaZpz3bNsA7oFepAzee+8/+ImtADXNOmO5vJvsPff3qi+hvpkY/NYBTrBQgdNw==", + "dev": true, + "requires": { + "@babel/helper-explode-assignable-expression": "^7.18.6", + "@babel/types": "^7.18.9" + } + }, + "@babel/helper-compilation-targets": { + "version": "7.22.1", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.1.tgz", + "integrity": "sha512-Rqx13UM3yVB5q0D/KwQ8+SPfX/+Rnsy1Lw1k/UwOC4KC6qrzIQoY3lYnBu5EHKBlEHHcj0M0W8ltPSkD8rqfsQ==", + "dev": true, + "requires": { + "@babel/compat-data": "^7.22.0", + "@babel/helper-validator-option": "^7.21.0", + "browserslist": "^4.21.3", + "lru-cache": "^5.1.1", + "semver": "^6.3.0" + }, + "dependencies": { + "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, + "requires": { + "yallist": "^3.0.2" + } + }, + "yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "dev": true + } + } + }, + "@babel/helper-create-class-features-plugin": { + "version": "7.22.1", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.22.1.tgz", + "integrity": "sha512-SowrZ9BWzYFgzUMwUmowbPSGu6CXL5MSuuCkG3bejahSpSymioPmuLdhPxNOc9MjuNGjy7M/HaXvJ8G82Lywlw==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-environment-visitor": "^7.22.1", + "@babel/helper-function-name": "^7.21.0", + "@babel/helper-member-expression-to-functions": "^7.22.0", + "@babel/helper-optimise-call-expression": "^7.18.6", + "@babel/helper-replace-supers": "^7.22.1", + "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0", + "@babel/helper-split-export-declaration": "^7.18.6", + "semver": "^6.3.0" + } + }, + "@babel/helper-create-regexp-features-plugin": { + "version": "7.22.1", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.22.1.tgz", + "integrity": "sha512-WWjdnfR3LPIe+0EY8td7WmjhytxXtjKAEpnAxun/hkNiyOaPlvGK+NZaBFIdi9ndYV3Gav7BpFvtUwnaJlwi1w==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "regexpu-core": "^5.3.1", + "semver": "^6.3.0" + } + }, + "@babel/helper-define-polyfill-provider": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.4.0.tgz", + "integrity": "sha512-RnanLx5ETe6aybRi1cO/edaRH+bNYWaryCEmjDDYyNr4wnSzyOp8T0dWipmqVHKEY3AbVKUom50AKSlj1zmKbg==", + "dev": true, + "requires": { + "@babel/helper-compilation-targets": "^7.17.7", + "@babel/helper-plugin-utils": "^7.16.7", + "debug": "^4.1.1", + "lodash.debounce": "^4.0.8", + "resolve": "^1.14.2", + "semver": "^6.1.2" + } + }, + "@babel/helper-environment-visitor": { + "version": "7.22.1", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.1.tgz", + "integrity": "sha512-Z2tgopurB/kTbidvzeBrc2To3PUP/9i5MUe+fU6QJCQDyPwSH2oRapkLw3KGECDYSjhQZCNxEvNvZlLw8JjGwA==", + "dev": true + }, + "@babel/helper-explode-assignable-expression": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.18.6.tgz", + "integrity": "sha512-eyAYAsQmB80jNfg4baAtLeWAQHfHFiR483rzFK+BhETlGZaQC9bsfrugfXDCbRHLQbIA7U5NxhhOxN7p/dWIcg==", + "dev": true, + "requires": { + "@babel/types": "^7.18.6" + } + }, + "@babel/helper-function-name": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.21.0.tgz", + "integrity": "sha512-HfK1aMRanKHpxemaY2gqBmL04iAPOPRj7DxtNbiDOrJK+gdwkiNRVpCpUJYbUT+aZyemKN8brqTOxzCaG6ExRg==", + "dev": true, + "requires": { + "@babel/template": "^7.20.7", + "@babel/types": "^7.21.0" + } + }, + "@babel/helper-hoist-variables": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz", + "integrity": "sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==", + "dev": true, + "requires": { + "@babel/types": "^7.18.6" + } + }, + "@babel/helper-member-expression-to-functions": { + "version": "7.22.3", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.22.3.tgz", + "integrity": "sha512-Gl7sK04b/2WOb6OPVeNy9eFKeD3L6++CzL3ykPOWqTn08xgYYK0wz4TUh2feIImDXxcVW3/9WQ1NMKY66/jfZA==", + "dev": true, + "requires": { + "@babel/types": "^7.22.3" + } + }, + "@babel/helper-module-imports": { + "version": "7.21.4", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.21.4.tgz", + "integrity": "sha512-orajc5T2PsRYUN3ZryCEFeMDYwyw09c/pZeaQEZPH0MpKzSvn3e0uXsDBu3k03VI+9DBiRo+l22BfKTpKwa/Wg==", + "dev": true, + "requires": { + "@babel/types": "^7.21.4" + } + }, + "@babel/helper-module-transforms": { + "version": "7.22.1", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.22.1.tgz", + "integrity": "sha512-dxAe9E7ySDGbQdCVOY/4+UcD8M9ZFqZcZhSPsPacvCG4M+9lwtDDQfI2EoaSvmf7W/8yCBkGU0m7Pvt1ru3UZw==", + "dev": true, + "requires": { + "@babel/helper-environment-visitor": "^7.22.1", + "@babel/helper-module-imports": "^7.21.4", + "@babel/helper-simple-access": "^7.21.5", + "@babel/helper-split-export-declaration": "^7.18.6", + "@babel/helper-validator-identifier": "^7.19.1", + "@babel/template": "^7.21.9", + "@babel/traverse": "^7.22.1", + "@babel/types": "^7.22.0" + } + }, + "@babel/helper-optimise-call-expression": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.18.6.tgz", + "integrity": "sha512-HP59oD9/fEHQkdcbgFCnbmgH5vIQTJbxh2yf+CdM89/glUNnuzr87Q8GIjGEnOktTROemO0Pe0iPAYbqZuOUiA==", + "dev": true, + "requires": { + "@babel/types": "^7.18.6" + } + }, + "@babel/helper-plugin-utils": { + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.21.5.tgz", + "integrity": "sha512-0WDaIlXKOX/3KfBK/dwP1oQGiPh6rjMkT7HIRv7i5RR2VUMwrx5ZL0dwBkKx7+SW1zwNdgjHd34IMk5ZjTeHVg==", + "dev": true + }, + "@babel/helper-remap-async-to-generator": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.18.9.tgz", + "integrity": "sha512-dI7q50YKd8BAv3VEfgg7PS7yD3Rtbi2J1XMXaalXO0W0164hYLnh8zpjRS0mte9MfVp/tltvr/cfdXPvJr1opA==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-wrap-function": "^7.18.9", + "@babel/types": "^7.18.9" + } + }, + "@babel/helper-replace-supers": { + "version": "7.22.1", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.22.1.tgz", + "integrity": "sha512-ut4qrkE4AuSfrwHSps51ekR1ZY/ygrP1tp0WFm8oVq6nzc/hvfV/22JylndIbsf2U2M9LOMwiSddr6y+78j+OQ==", + "dev": true, + "requires": { + "@babel/helper-environment-visitor": "^7.22.1", + "@babel/helper-member-expression-to-functions": "^7.22.0", + "@babel/helper-optimise-call-expression": "^7.18.6", + "@babel/template": "^7.21.9", + "@babel/traverse": "^7.22.1", + "@babel/types": "^7.22.0" + } + }, + "@babel/helper-simple-access": { + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.21.5.tgz", + "integrity": "sha512-ENPDAMC1wAjR0uaCUwliBdiSl1KBJAVnMTzXqi64c2MG8MPR6ii4qf7bSXDqSFbr4W6W028/rf5ivoHop5/mkg==", + "dev": true, + "requires": { + "@babel/types": "^7.21.5" + } + }, + "@babel/helper-skip-transparent-expression-wrappers": { + "version": "7.20.0", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.20.0.tgz", + "integrity": "sha512-5y1JYeNKfvnT8sZcK9DVRtpTbGiomYIHviSP3OQWmDPU3DeH4a1ZlT/N2lyQ5P8egjcRaT/Y9aNqUxK0WsnIIg==", + "dev": true, + "requires": { + "@babel/types": "^7.20.0" + } + }, + "@babel/helper-split-export-declaration": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz", + "integrity": "sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==", + "dev": true, + "requires": { + "@babel/types": "^7.18.6" + } + }, + "@babel/helper-string-parser": { + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.21.5.tgz", + "integrity": "sha512-5pTUx3hAJaZIdW99sJ6ZUUgWq/Y+Hja7TowEnLNMm1VivRgZQL3vpBY3qUACVsvw+yQU6+YgfBVmcbLaZtrA1w==", + "dev": true + }, + "@babel/helper-validator-identifier": { + "version": "7.19.1", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz", + "integrity": "sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==", + "dev": true + }, + "@babel/helper-validator-option": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.21.0.tgz", + "integrity": "sha512-rmL/B8/f0mKS2baE9ZpyTcTavvEuWhTTW8amjzXNvYG4AwBsqTLikfXsEofsJEfKHf+HQVQbFOHy6o+4cnC/fQ==", + "dev": true + }, + "@babel/helper-wrap-function": { + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.20.5.tgz", + "integrity": "sha512-bYMxIWK5mh+TgXGVqAtnu5Yn1un+v8DDZtqyzKRLUzrh70Eal2O3aZ7aPYiMADO4uKlkzOiRiZ6GX5q3qxvW9Q==", + "dev": true, + "requires": { + "@babel/helper-function-name": "^7.19.0", + "@babel/template": "^7.18.10", + "@babel/traverse": "^7.20.5", + "@babel/types": "^7.20.5" + } + }, + "@babel/helpers": { + "version": "7.22.3", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.22.3.tgz", + "integrity": "sha512-jBJ7jWblbgr7r6wYZHMdIqKc73ycaTcCaWRq4/2LpuPHcx7xMlZvpGQkOYc9HeSjn6rcx15CPlgVcBtZ4WZJ2w==", + "dev": true, + "requires": { + "@babel/template": "^7.21.9", + "@babel/traverse": "^7.22.1", + "@babel/types": "^7.22.3" + } + }, + "@babel/highlight": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz", + "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==", + "dev": true, + "requires": { + "@babel/helper-validator-identifier": "^7.18.6", + "chalk": "^2.0.0", + "js-tokens": "^4.0.0" + } + }, + "@babel/parser": { + "version": "7.22.4", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.22.4.tgz", + "integrity": "sha512-VLLsx06XkEYqBtE5YGPwfSGwfrjnyPP5oiGty3S8pQLFDFLaS8VwWSIxkTXpcvr5zeYLE6+MBNl2npl/YnfofA==" + }, + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { + "version": "7.18.6", + "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.18.6.tgz", + "integrity": "sha512-Dgxsyg54Fx1d4Nge8UnvTrED63vrwOdPmyvPzlNN/boaliRP54pm3pGzZD1SJUwrBA+Cs/xdG8kXX6Mn/RfISQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { + "version": "7.22.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.22.3.tgz", + "integrity": "sha512-6r4yRwEnorYByILoDRnEqxtojYKuiIv9FojW2E8GUKo9eWBwbKcd9IiZOZpdyXc64RmyGGyPu3/uAcrz/dq2kQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.21.5", + "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0", + "@babel/plugin-transform-optional-chaining": "^7.22.3" + } + }, + "@babel/plugin-proposal-class-properties": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.18.6.tgz", + "integrity": "sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ==", + "dev": true, + "peer": true, + "requires": { + "@babel/helper-create-class-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-proposal-private-property-in-object": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0.tgz", + "integrity": "sha512-ha4zfehbJjc5MmXBlHec1igel5TJXXLDDRbuJ4+XT2TJcyD9/V1919BA8gMvsdHcNMBy4WBUBiRb3nw/EQUtBw==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-create-class-features-plugin": "^7.21.0", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5" + } + }, + "@babel/plugin-proposal-unicode-property-regex": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.18.6.tgz", + "integrity": "sha512-2BShG/d5yoZyXZfVePH91urL5wTG6ASZU9M4o03lKK8u8UW1y08OMttBSOADTcJrnPMpvDXRG3G8fyLh4ovs8w==", + "dev": true, + "requires": { + "@babel/helper-create-regexp-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@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, + "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, + "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, + "requires": { + "@babel/helper-plugin-utils": "^7.8.3" + } + }, + "@babel/plugin-syntax-import-assertions": { + "version": "7.20.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.20.0.tgz", + "integrity": "sha512-IUh1vakzNoWalR8ch/areW7qFopR2AEw03JlG7BbrDqmQ4X3q9uuipQwSGrUn7oGiemKjtSLDhNtQHzMHr1JdQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.19.0" + } + }, + "@babel/plugin-syntax-import-attributes": { + "version": "7.22.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.22.3.tgz", + "integrity": "sha512-i35jZJv6aO7hxEbIWQ41adVfOzjm9dcYDNeWlBMd8p0ZQRtNUCBrmGwZt+H5lb+oOC9a3svp956KP0oWGA1YsA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.21.5" + } + }, + "@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-jsx": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.18.6.tgz", + "integrity": "sha512-6mmljtAedFGTWu2p/8WIORGwy+61PLgOMPOdazc7YoJ9ZCWUyFy3A6CpPkRKLKD1ToAesxX8KGEViAiLo9N+7Q==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@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, + "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.20.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.20.0.tgz", + "integrity": "sha512-rd9TkG+u1CExzS4SM1BlMEhMXwFLKVjOAFFCDx9PbX5ycJWDoWMcwdJH9RhkPu1dOgn5TrxLot/Gx6lWFuAUNQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.19.0" + } + }, + "@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, + "requires": { + "@babel/helper-create-regexp-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-transform-arrow-functions": { + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.21.5.tgz", + "integrity": "sha512-wb1mhwGOCaXHDTcsRYMKF9e5bbMgqwxtqa2Y1ifH96dXJPwbuLX9qHy3clhrxVqgMz7nyNXs8VkxdH8UBcjKqA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.21.5" + } + }, + "@babel/plugin-transform-async-generator-functions": { + "version": "7.22.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.22.3.tgz", + "integrity": "sha512-36A4Aq48t66btydbZd5Fk0/xJqbpg/v4QWI4AH4cYHBXy9Mu42UOupZpebKFiCFNT9S9rJFcsld0gsv0ayLjtA==", + "dev": true, + "requires": { + "@babel/helper-environment-visitor": "^7.22.1", + "@babel/helper-plugin-utils": "^7.21.5", + "@babel/helper-remap-async-to-generator": "^7.18.9", + "@babel/plugin-syntax-async-generators": "^7.8.4" + } + }, + "@babel/plugin-transform-async-to-generator": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.20.7.tgz", + "integrity": "sha512-Uo5gwHPT9vgnSXQxqGtpdufUiWp96gk7yiP4Mp5bm1QMkEmLXBO7PAGYbKoJ6DhAwiNkcHFBol/x5zZZkL/t0Q==", + "dev": true, + "requires": { + "@babel/helper-module-imports": "^7.18.6", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-remap-async-to-generator": "^7.18.9" + } + }, + "@babel/plugin-transform-block-scoped-functions": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.18.6.tgz", + "integrity": "sha512-ExUcOqpPWnliRcPqves5HJcJOvHvIIWfuS4sroBUenPuMdmW+SMHDakmtS7qOo13sVppmUijqeTv7qqGsvURpQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-transform-block-scoping": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.21.0.tgz", + "integrity": "sha512-Mdrbunoh9SxwFZapeHVrwFmri16+oYotcZysSzhNIVDwIAb1UV+kvnxULSYq9J3/q5MDG+4X6w8QVgD1zhBXNQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.20.2" + } + }, + "@babel/plugin-transform-class-properties": { + "version": "7.22.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.22.3.tgz", + "integrity": "sha512-mASLsd6rhOrLZ5F3WbCxkzl67mmOnqik0zrg5W6D/X0QMW7HtvnoL1dRARLKIbMP3vXwkwziuLesPqWVGIl6Bw==", + "dev": true, + "requires": { + "@babel/helper-create-class-features-plugin": "^7.22.1", + "@babel/helper-plugin-utils": "^7.21.5" + } + }, + "@babel/plugin-transform-class-static-block": { + "version": "7.22.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.22.3.tgz", + "integrity": "sha512-5BirgNWNOx7cwbTJCOmKFJ1pZjwk5MUfMIwiBBvsirCJMZeQgs5pk6i1OlkVg+1Vef5LfBahFOrdCnAWvkVKMw==", + "dev": true, + "requires": { + "@babel/helper-create-class-features-plugin": "^7.22.1", + "@babel/helper-plugin-utils": "^7.21.5", + "@babel/plugin-syntax-class-static-block": "^7.14.5" + } + }, + "@babel/plugin-transform-classes": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.21.0.tgz", + "integrity": "sha512-RZhbYTCEUAe6ntPehC4hlslPWosNHDox+vAs4On/mCLRLfoDVHf6hVEd7kuxr1RnHwJmxFfUM3cZiZRmPxJPXQ==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-compilation-targets": "^7.20.7", + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-function-name": "^7.21.0", + "@babel/helper-optimise-call-expression": "^7.18.6", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-replace-supers": "^7.20.7", + "@babel/helper-split-export-declaration": "^7.18.6", + "globals": "^11.1.0" + } + }, + "@babel/plugin-transform-computed-properties": { + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.21.5.tgz", + "integrity": "sha512-TR653Ki3pAwxBxUe8srfF3e4Pe3FTA46uaNHYyQwIoM4oWKSoOZiDNyHJ0oIoDIUPSRQbQG7jzgVBX3FPVne1Q==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.21.5", + "@babel/template": "^7.20.7" + } + }, + "@babel/plugin-transform-destructuring": { + "version": "7.21.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.21.3.tgz", + "integrity": "sha512-bp6hwMFzuiE4HqYEyoGJ/V2LeIWn+hLVKc4pnj++E5XQptwhtcGmSayM029d/j2X1bPKGTlsyPwAubuU22KhMA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.20.2" + } + }, + "@babel/plugin-transform-dotall-regex": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.18.6.tgz", + "integrity": "sha512-6S3jpun1eEbAxq7TdjLotAsl4WpQI9DxfkycRcKrjhQYzU87qpXdknpBg/e+TdcMehqGnLFi7tnFUBR02Vq6wg==", + "dev": true, + "requires": { + "@babel/helper-create-regexp-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-transform-duplicate-keys": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.18.9.tgz", + "integrity": "sha512-d2bmXCtZXYc59/0SanQKbiWINadaJXqtvIQIzd4+hNwkWBgyCd5F/2t1kXoUdvPMrxzPvhK6EMQRROxsue+mfw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.18.9" + } + }, + "@babel/plugin-transform-dynamic-import": { + "version": "7.22.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.22.1.tgz", + "integrity": "sha512-rlhWtONnVBPdmt+jeewS0qSnMz/3yLFrqAP8hHC6EDcrYRSyuz9f9yQhHvVn2Ad6+yO9fHXac5piudeYrInxwQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.21.5", + "@babel/plugin-syntax-dynamic-import": "^7.8.3" + } + }, + "@babel/plugin-transform-exponentiation-operator": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.18.6.tgz", + "integrity": "sha512-wzEtc0+2c88FVR34aQmiz56dxEkxr2g8DQb/KfaFa1JYXOFVsbhvAonFN6PwVWj++fKmku8NP80plJ5Et4wqHw==", + "dev": true, + "requires": { + "@babel/helper-builder-binary-assignment-operator-visitor": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-transform-export-namespace-from": { + "version": "7.22.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.22.3.tgz", + "integrity": "sha512-5Ti1cHLTDnt3vX61P9KZ5IG09bFXp4cDVFJIAeCZuxu9OXXJJZp5iP0n/rzM2+iAutJY+KWEyyHcRaHlpQ/P5g==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.21.5", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3" + } + }, + "@babel/plugin-transform-for-of": { + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.21.5.tgz", + "integrity": "sha512-nYWpjKW/7j/I/mZkGVgHJXh4bA1sfdFnJoOXwJuj4m3Q2EraO/8ZyrkCau9P5tbHQk01RMSt6KYLCsW7730SXQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.21.5" + } + }, + "@babel/plugin-transform-function-name": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.18.9.tgz", + "integrity": "sha512-WvIBoRPaJQ5yVHzcnJFor7oS5Ls0PYixlTYE63lCj2RtdQEl15M68FXQlxnG6wdraJIXRdR7KI+hQ7q/9QjrCQ==", + "dev": true, + "requires": { + "@babel/helper-compilation-targets": "^7.18.9", + "@babel/helper-function-name": "^7.18.9", + "@babel/helper-plugin-utils": "^7.18.9" + } + }, + "@babel/plugin-transform-json-strings": { + "version": "7.22.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.22.3.tgz", + "integrity": "sha512-IuvOMdeOOY2X4hRNAT6kwbePtK21BUyrAEgLKviL8pL6AEEVUVcqtRdN/HJXBLGIbt9T3ETmXRnFedRRmQNTYw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.21.5", + "@babel/plugin-syntax-json-strings": "^7.8.3" + } + }, + "@babel/plugin-transform-literals": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.18.9.tgz", + "integrity": "sha512-IFQDSRoTPnrAIrI5zoZv73IFeZu2dhu6irxQjY9rNjTT53VmKg9fenjvoiOWOkJ6mm4jKVPtdMzBY98Fp4Z4cg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.18.9" + } + }, + "@babel/plugin-transform-logical-assignment-operators": { + "version": "7.22.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.22.3.tgz", + "integrity": "sha512-CbayIfOw4av2v/HYZEsH+Klks3NC2/MFIR3QR8gnpGNNPEaq2fdlVCRYG/paKs7/5hvBLQ+H70pGWOHtlNEWNA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.21.5", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" + } + }, + "@babel/plugin-transform-member-expression-literals": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.18.6.tgz", + "integrity": "sha512-qSF1ihLGO3q+/g48k85tUjD033C29TNTVB2paCwZPVmOsjn9pClvYYrM2VeJpBY2bcNkuny0YUyTNRyRxJ54KA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-transform-modules-amd": { + "version": "7.20.11", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.20.11.tgz", + "integrity": "sha512-NuzCt5IIYOW0O30UvqktzHYR2ud5bOWbY0yaxWZ6G+aFzOMJvrs5YHNikrbdaT15+KNO31nPOy5Fim3ku6Zb5g==", + "dev": true, + "requires": { + "@babel/helper-module-transforms": "^7.20.11", + "@babel/helper-plugin-utils": "^7.20.2" + } + }, + "@babel/plugin-transform-modules-commonjs": { + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.21.5.tgz", + "integrity": "sha512-OVryBEgKUbtqMoB7eG2rs6UFexJi6Zj6FDXx+esBLPTCxCNxAY9o+8Di7IsUGJ+AVhp5ncK0fxWUBd0/1gPhrQ==", + "dev": true, + "requires": { + "@babel/helper-module-transforms": "^7.21.5", + "@babel/helper-plugin-utils": "^7.21.5", + "@babel/helper-simple-access": "^7.21.5" + } + }, + "@babel/plugin-transform-modules-systemjs": { + "version": "7.22.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.22.3.tgz", + "integrity": "sha512-V21W3bKLxO3ZjcBJZ8biSvo5gQ85uIXW2vJfh7JSWf/4SLUSr1tOoHX3ruN4+Oqa2m+BKfsxTR1I+PsvkIWvNw==", + "dev": true, + "requires": { + "@babel/helper-hoist-variables": "^7.18.6", + "@babel/helper-module-transforms": "^7.22.1", + "@babel/helper-plugin-utils": "^7.21.5", + "@babel/helper-validator-identifier": "^7.19.1" + } + }, + "@babel/plugin-transform-modules-umd": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.18.6.tgz", + "integrity": "sha512-dcegErExVeXcRqNtkRU/z8WlBLnvD4MRnHgNs3MytRO1Mn1sHRyhbcpYbVMGclAqOjdW+9cfkdZno9dFdfKLfQ==", + "dev": true, + "requires": { + "@babel/helper-module-transforms": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-transform-named-capturing-groups-regex": { + "version": "7.22.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.22.3.tgz", + "integrity": "sha512-c6HrD/LpUdNNJsISQZpds3TXvfYIAbo+efE9aWmY/PmSRD0agrJ9cPMt4BmArwUQ7ZymEWTFjTyp+yReLJZh0Q==", + "dev": true, + "requires": { + "@babel/helper-create-regexp-features-plugin": "^7.22.1", + "@babel/helper-plugin-utils": "^7.21.5" + } + }, + "@babel/plugin-transform-new-target": { + "version": "7.22.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.22.3.tgz", + "integrity": "sha512-5RuJdSo89wKdkRTqtM9RVVJzHum9c2s0te9rB7vZC1zKKxcioWIy+xcu4OoIAjyFZhb/bp5KkunuLin1q7Ct+w==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.21.5" + } + }, + "@babel/plugin-transform-nullish-coalescing-operator": { + "version": "7.22.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.22.3.tgz", + "integrity": "sha512-CpaoNp16nX7ROtLONNuCyenYdY/l7ZsR6aoVa7rW7nMWisoNoQNIH5Iay/4LDyRjKMuElMqXiBoOQCDLTMGZiw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.21.5", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3" + } + }, + "@babel/plugin-transform-numeric-separator": { + "version": "7.22.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.22.3.tgz", + "integrity": "sha512-+AF88fPDJrnseMh5vD9+SH6wq4ZMvpiTMHh58uLs+giMEyASFVhcT3NkoyO+NebFCNnpHJEq5AXO2txV4AGPDQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.21.5", + "@babel/plugin-syntax-numeric-separator": "^7.10.4" + } + }, + "@babel/plugin-transform-object-rest-spread": { + "version": "7.22.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.22.3.tgz", + "integrity": "sha512-38bzTsqMMCI46/TQnJwPPpy33EjLCc1Gsm2hRTF6zTMWnKsN61vdrpuzIEGQyKEhDSYDKyZHrrd5FMj4gcUHhw==", + "dev": true, + "requires": { + "@babel/compat-data": "^7.22.3", + "@babel/helper-compilation-targets": "^7.22.1", + "@babel/helper-plugin-utils": "^7.21.5", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-transform-parameters": "^7.22.3" + } + }, + "@babel/plugin-transform-object-super": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.18.6.tgz", + "integrity": "sha512-uvGz6zk+pZoS1aTZrOvrbj6Pp/kK2mp45t2B+bTDre2UgsZZ8EZLSJtUg7m/no0zOJUWgFONpB7Zv9W2tSaFlA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/helper-replace-supers": "^7.18.6" + } + }, + "@babel/plugin-transform-optional-catch-binding": { + "version": "7.22.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.22.3.tgz", + "integrity": "sha512-bnDFWXFzWY0BsOyqaoSXvMQ2F35zutQipugog/rqotL2S4ciFOKlRYUu9djt4iq09oh2/34hqfRR2k1dIvuu4g==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.21.5", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3" + } + }, + "@babel/plugin-transform-optional-chaining": { + "version": "7.22.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.22.3.tgz", + "integrity": "sha512-63v3/UFFxhPKT8j8u1jTTGVyITxl7/7AfOqK8C5gz1rHURPUGe3y5mvIf68eYKGoBNahtJnTxBKug4BQOnzeJg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.21.5", + "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0", + "@babel/plugin-syntax-optional-chaining": "^7.8.3" + } + }, + "@babel/plugin-transform-parameters": { + "version": "7.22.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.22.3.tgz", + "integrity": "sha512-x7QHQJHPuD9VmfpzboyGJ5aHEr9r7DsAsdxdhJiTB3J3j8dyl+NFZ+rX5Q2RWFDCs61c06qBfS4ys2QYn8UkMw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.21.5" + } + }, + "@babel/plugin-transform-private-methods": { + "version": "7.22.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.22.3.tgz", + "integrity": "sha512-fC7jtjBPFqhqpPAE+O4LKwnLq7gGkD3ZmC2E3i4qWH34mH3gOg2Xrq5YMHUq6DM30xhqM1DNftiRaSqVjEG+ug==", + "dev": true, + "requires": { + "@babel/helper-create-class-features-plugin": "^7.22.1", + "@babel/helper-plugin-utils": "^7.21.5" + } + }, + "@babel/plugin-transform-private-property-in-object": { + "version": "7.22.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.22.3.tgz", + "integrity": "sha512-C7MMl4qWLpgVCbXfj3UW8rR1xeCnisQ0cU7YJHV//8oNBS0aCIVg1vFnZXxOckHhEpQyqNNkWmvSEWnMLlc+Vw==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-create-class-features-plugin": "^7.22.1", + "@babel/helper-plugin-utils": "^7.21.5", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5" + } + }, + "@babel/plugin-transform-property-literals": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.18.6.tgz", + "integrity": "sha512-cYcs6qlgafTud3PAzrrRNbQtfpQ8+y/+M5tKmksS9+M1ckbH6kzY8MrexEM9mcA6JDsukE19iIRvAyYl463sMg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-transform-regenerator": { + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.21.5.tgz", + "integrity": "sha512-ZoYBKDb6LyMi5yCsByQ5jmXsHAQDDYeexT1Szvlmui+lADvfSecr5Dxd/PkrTC3pAD182Fcju1VQkB4oCp9M+w==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.21.5", + "regenerator-transform": "^0.15.1" + } + }, + "@babel/plugin-transform-reserved-words": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.18.6.tgz", + "integrity": "sha512-oX/4MyMoypzHjFrT1CdivfKZ+XvIPMFXwwxHp/r0Ddy2Vuomt4HDFGmft1TAY2yiTKiNSsh3kjBAzcM8kSdsjA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-transform-shorthand-properties": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.18.6.tgz", + "integrity": "sha512-eCLXXJqv8okzg86ywZJbRn19YJHU4XUa55oz2wbHhaQVn/MM+XhukiT7SYqp/7o00dg52Rj51Ny+Ecw4oyoygw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-transform-spread": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.20.7.tgz", + "integrity": "sha512-ewBbHQ+1U/VnH1fxltbJqDeWBU1oNLG8Dj11uIv3xVf7nrQu0bPGe5Rf716r7K5Qz+SqtAOVswoVunoiBtGhxw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0" + } + }, + "@babel/plugin-transform-sticky-regex": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.18.6.tgz", + "integrity": "sha512-kfiDrDQ+PBsQDO85yj1icueWMfGfJFKN1KCkndygtu/C9+XUfydLC8Iv5UYJqRwy4zk8EcplRxEOeLyjq1gm6Q==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-transform-template-literals": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.18.9.tgz", + "integrity": "sha512-S8cOWfT82gTezpYOiVaGHrCbhlHgKhQt8XH5ES46P2XWmX92yisoZywf5km75wv5sYcXDUCLMmMxOLCtthDgMA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.18.9" + } + }, + "@babel/plugin-transform-typeof-symbol": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.18.9.tgz", + "integrity": "sha512-SRfwTtF11G2aemAZWivL7PD+C9z52v9EvMqH9BuYbabyPuKUvSWks3oCg6041pT925L4zVFqaVBeECwsmlguEw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.18.9" + } + }, + "@babel/plugin-transform-unicode-escapes": { + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.21.5.tgz", + "integrity": "sha512-LYm/gTOwZqsYohlvFUe/8Tujz75LqqVC2w+2qPHLR+WyWHGCZPN1KBpJCJn+4Bk4gOkQy/IXKIge6az5MqwlOg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.21.5" + } + }, + "@babel/plugin-transform-unicode-property-regex": { + "version": "7.22.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.22.3.tgz", + "integrity": "sha512-5ScJ+OmdX+O6HRuMGW4kv7RL9vIKdtdAj9wuWUKy1wbHY3jaM/UlyIiC1G7J6UJiiyMukjjK0QwL3P0vBd0yYg==", + "dev": true, + "requires": { + "@babel/helper-create-regexp-features-plugin": "^7.22.1", + "@babel/helper-plugin-utils": "^7.21.5" + } + }, + "@babel/plugin-transform-unicode-regex": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.18.6.tgz", + "integrity": "sha512-gE7A6Lt7YLnNOL3Pb9BNeZvi+d8l7tcRrG4+pwJjK9hD2xX4mEvjlQW60G9EEmfXVYRPv9VRQcyegIVHCql/AA==", + "dev": true, + "requires": { + "@babel/helper-create-regexp-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-transform-unicode-sets-regex": { + "version": "7.22.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.22.3.tgz", + "integrity": "sha512-hNufLdkF8vqywRp+P55j4FHXqAX2LRUccoZHH7AFn1pq5ZOO2ISKW9w13bFZVjBoTqeve2HOgoJCcaziJVhGNw==", + "dev": true, + "requires": { + "@babel/helper-create-regexp-features-plugin": "^7.22.1", + "@babel/helper-plugin-utils": "^7.21.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.22.4", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.22.4.tgz", + "integrity": "sha512-c3lHOjbwBv0TkhYCr+XCR6wKcSZ1QbQTVdSkZUaVpLv8CVWotBMArWUi5UAJrcrQaEnleVkkvaV8F/pmc/STZQ==", + "dev": true, + "requires": { + "@babel/compat-data": "^7.22.3", + "@babel/helper-compilation-targets": "^7.22.1", + "@babel/helper-plugin-utils": "^7.21.5", + "@babel/helper-validator-option": "^7.21.0", + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.18.6", + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.22.3", + "@babel/plugin-proposal-private-property-in-object": "^7.21.0", + "@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-import-assertions": "^7.20.0", + "@babel/plugin-syntax-import-attributes": "^7.22.3", + "@babel/plugin-syntax-import-meta": "^7.10.4", + "@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-syntax-unicode-sets-regex": "^7.18.6", + "@babel/plugin-transform-arrow-functions": "^7.21.5", + "@babel/plugin-transform-async-generator-functions": "^7.22.3", + "@babel/plugin-transform-async-to-generator": "^7.20.7", + "@babel/plugin-transform-block-scoped-functions": "^7.18.6", + "@babel/plugin-transform-block-scoping": "^7.21.0", + "@babel/plugin-transform-class-properties": "^7.22.3", + "@babel/plugin-transform-class-static-block": "^7.22.3", + "@babel/plugin-transform-classes": "^7.21.0", + "@babel/plugin-transform-computed-properties": "^7.21.5", + "@babel/plugin-transform-destructuring": "^7.21.3", + "@babel/plugin-transform-dotall-regex": "^7.18.6", + "@babel/plugin-transform-duplicate-keys": "^7.18.9", + "@babel/plugin-transform-dynamic-import": "^7.22.1", + "@babel/plugin-transform-exponentiation-operator": "^7.18.6", + "@babel/plugin-transform-export-namespace-from": "^7.22.3", + "@babel/plugin-transform-for-of": "^7.21.5", + "@babel/plugin-transform-function-name": "^7.18.9", + "@babel/plugin-transform-json-strings": "^7.22.3", + "@babel/plugin-transform-literals": "^7.18.9", + "@babel/plugin-transform-logical-assignment-operators": "^7.22.3", + "@babel/plugin-transform-member-expression-literals": "^7.18.6", + "@babel/plugin-transform-modules-amd": "^7.20.11", + "@babel/plugin-transform-modules-commonjs": "^7.21.5", + "@babel/plugin-transform-modules-systemjs": "^7.22.3", + "@babel/plugin-transform-modules-umd": "^7.18.6", + "@babel/plugin-transform-named-capturing-groups-regex": "^7.22.3", + "@babel/plugin-transform-new-target": "^7.22.3", + "@babel/plugin-transform-nullish-coalescing-operator": "^7.22.3", + "@babel/plugin-transform-numeric-separator": "^7.22.3", + "@babel/plugin-transform-object-rest-spread": "^7.22.3", + "@babel/plugin-transform-object-super": "^7.18.6", + "@babel/plugin-transform-optional-catch-binding": "^7.22.3", + "@babel/plugin-transform-optional-chaining": "^7.22.3", + "@babel/plugin-transform-parameters": "^7.22.3", + "@babel/plugin-transform-private-methods": "^7.22.3", + "@babel/plugin-transform-private-property-in-object": "^7.22.3", + "@babel/plugin-transform-property-literals": "^7.18.6", + "@babel/plugin-transform-regenerator": "^7.21.5", + "@babel/plugin-transform-reserved-words": "^7.18.6", + "@babel/plugin-transform-shorthand-properties": "^7.18.6", + "@babel/plugin-transform-spread": "^7.20.7", + "@babel/plugin-transform-sticky-regex": "^7.18.6", + "@babel/plugin-transform-template-literals": "^7.18.9", + "@babel/plugin-transform-typeof-symbol": "^7.18.9", + "@babel/plugin-transform-unicode-escapes": "^7.21.5", + "@babel/plugin-transform-unicode-property-regex": "^7.22.3", + "@babel/plugin-transform-unicode-regex": "^7.18.6", + "@babel/plugin-transform-unicode-sets-regex": "^7.22.3", + "@babel/preset-modules": "^0.1.5", + "@babel/types": "^7.22.4", + "babel-plugin-polyfill-corejs2": "^0.4.3", + "babel-plugin-polyfill-corejs3": "^0.8.1", + "babel-plugin-polyfill-regenerator": "^0.5.0", + "core-js-compat": "^3.30.2", + "semver": "^6.3.0" + } + }, + "@babel/preset-modules": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.5.tgz", + "integrity": "sha512-A57th6YRG7oR3cq/yt/Y84MvGgE0eJG2F1JLhKuyG+jFxEgrd/HAMJatiFtmOiZurz+0DkrvbheCLaV5f2JfjA==", + "dev": 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/regjsgen": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/@babel/regjsgen/-/regjsgen-0.8.0.tgz", + "integrity": "sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==", + "dev": true + }, + "@babel/runtime": { + "version": "7.19.4", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.19.4.tgz", + "integrity": "sha512-EXpLCrk55f+cYqmHsSR+yD/0gAIMxxA9QK9lnQWzhMCvt+YmoBN7Zx94s++Kv0+unHk39vxNO8t+CMA2WSS3wA==", + "requires": { + "regenerator-runtime": "^0.13.4" + } + }, + "@babel/template": { + "version": "7.21.9", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.21.9.tgz", + "integrity": "sha512-MK0X5k8NKOuWRamiEfc3KEJiHMTkGZNUjzMipqCGDDc6ijRl/B7RGSKVGncu4Ro/HdyzzY6cmoXuKI2Gffk7vQ==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.21.4", + "@babel/parser": "^7.21.9", + "@babel/types": "^7.21.5" + } + }, + "@babel/traverse": { + "version": "7.22.4", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.22.4.tgz", + "integrity": "sha512-Tn1pDsjIcI+JcLKq1AVlZEr4226gpuAQTsLMorsYg9tuS/kG7nuwwJ4AB8jfQuEgb/COBwR/DqJxmoiYFu5/rQ==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.21.4", + "@babel/generator": "^7.22.3", + "@babel/helper-environment-visitor": "^7.22.1", + "@babel/helper-function-name": "^7.21.0", + "@babel/helper-hoist-variables": "^7.18.6", + "@babel/helper-split-export-declaration": "^7.18.6", + "@babel/parser": "^7.22.4", + "@babel/types": "^7.22.4", + "debug": "^4.1.0", + "globals": "^11.1.0" + } + }, + "@babel/types": { + "version": "7.22.4", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.22.4.tgz", + "integrity": "sha512-Tx9x3UBHTTsMSW85WB2kphxYQVvrZ/t1FxD88IpSgIjiUJlCm9z+xWIDwyo1vffTwSqteqyznB8ZE9vYYk16zA==", + "dev": true, + "requires": { + "@babel/helper-string-parser": "^7.21.5", + "@babel/helper-validator-identifier": "^7.19.1", + "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 + }, + "@buttercup/fetch": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@buttercup/fetch/-/fetch-0.1.1.tgz", + "integrity": "sha512-RwBiPEmPaZv3oLOPY0fcmAGYdd3A4FDoYDc7JN+qxGTXumrYAYEC1RpyCM2pHSr6RYpuaAeg4A1fJy+PiigPIA==", + "requires": { + "node-fetch": "^3.3.0" + } + }, + "@csstools/selector-specificity": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@csstools/selector-specificity/-/selector-specificity-2.0.2.tgz", + "integrity": "sha512-IkpVW/ehM1hWKln4fCA3NzJU8KwD+kIOvPZA4cqxoJHtE21CCzjyp+Kxbu0i5I4tBNOlXPL9mjwnWlL0VEG4Fg==", + "dev": true, + "peer": true, + "requires": {} + }, + "@discoveryjs/json-ext": { + "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 + }, + "@es-joy/jsdoccomment": { + "version": "0.36.0", + "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.36.0.tgz", + "integrity": "sha512-u0XZyvUF6Urb2cSivSXA8qXIpT/CxkHcdtZKoWusAzgzmsTWpg0F2FpWXsolHmMUyVY3dLWaoy+0ccJ5uf2QjA==", + "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.3.3", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.3.3.tgz", + "integrity": "sha512-uj3pT6Mg+3t39fvLrj8iuCIJ38zKO9FpGtJ4BBJebJhEwjoT+KLVNCcHT5QC9NGRIEi7fZ0ZR8YRb884auB4Lg==", + "dev": true, + "peer": true, + "requires": { + "ajv": "^6.12.4", + "debug": "^4.3.2", + "espree": "^9.4.0", + "globals": "^13.15.0", + "ignore": "^5.2.0", + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "minimatch": "^3.1.2", + "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.17.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.17.0.tgz", + "integrity": "sha512-1C+6nQRb1GwGMKm2dH/E7enFAMxGTmGI7/dEdhy/DNelv85w9B72t3uc5frtMNXIbzrarJJ/lTCjcaZwbLJmyw==", + "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 + } + } + }, + "@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==" + }, + "@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==", + "requires": { + "@floating-ui/core": "^0.3.0" + } + }, + "@floating-ui/utils": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@floating-ui/utils/-/utils-0.1.1.tgz", + "integrity": "sha512-m0G6wlnhm/AX0H12IOWtK8gASEMffnX08RtKkCgTdHb9JpHKGloI7icFfLg9ZmQeavcvR0PKmzxClyuFPSjKWw==" + }, + "@fullcalendar/core": { + "version": "6.1.8", + "resolved": "https://registry.npmjs.org/@fullcalendar/core/-/core-6.1.8.tgz", + "integrity": "sha512-i8JBIvZCWGO9dsMEDcx9bnsQZ9PtGSJdOXGgWbhLaGq2iq41OBdp9g9gM4b/Otv2oK8bL5Gl6CsMmb/HkDtA6Q==", + "requires": { + "preact": "~10.12.1" + } + }, + "@fullcalendar/daygrid": { + "version": "6.1.8", + "resolved": "https://registry.npmjs.org/@fullcalendar/daygrid/-/daygrid-6.1.8.tgz", + "integrity": "sha512-kCZxQFKb9Vqa3CZRX0v7rMSJ2mlTt4gDpyLfiNJKxUAq7W51uKurPaFZWicaXy1ESHVBxKNlbx5uNjBpyu50JQ==", + "requires": {} + }, + "@fullcalendar/interaction": { + "version": "6.1.8", + "resolved": "https://registry.npmjs.org/@fullcalendar/interaction/-/interaction-6.1.8.tgz", + "integrity": "sha512-r6W4E9ohaA87M2uPSlmpE2WT7Fzu7LN0u2pE6D/tThruCEaAPbN8Pw5+sqclsuyTIL09mg0eSJm/ggJekTabSA==", + "requires": {} + }, + "@fullcalendar/list": { + "version": "6.1.8", + "resolved": "https://registry.npmjs.org/@fullcalendar/list/-/list-6.1.8.tgz", + "integrity": "sha512-10N0T/vCtId1cE3JGLpnbAivWVnaWCCkVO7wmbsyr5Y+I939kr/zq4BUNwBoP/xSFVVxx59FETh3iyA+MkV8Fw==", + "requires": {} + }, + "@fullcalendar/multimonth": { + "version": "6.1.8", + "resolved": "https://registry.npmjs.org/@fullcalendar/multimonth/-/multimonth-6.1.8.tgz", + "integrity": "sha512-3F0NlncQTfeE9x5ICxh/M9DaSdY6XjgM1NazY8k+d6ukd1jthHI7vs6j7tXJI9eGUKs3DNNEyzN/LoP06SIyKw==", + "requires": { + "@fullcalendar/daygrid": "~6.1.8" + } + }, + "@fullcalendar/premium-common": { + "version": "6.1.8", + "resolved": "https://registry.npmjs.org/@fullcalendar/premium-common/-/premium-common-6.1.8.tgz", + "integrity": "sha512-r4o73uGl2xQlckcv4yoH+lv1OzkqampdMvPQUnBSTA4MYJHmzt4KEskCxwhD2Ayy+2UQNO47JRSReE84y2WJIA==", + "requires": {} + }, + "@fullcalendar/resource": { + "version": "6.1.8", + "resolved": "https://registry.npmjs.org/@fullcalendar/resource/-/resource-6.1.8.tgz", + "integrity": "sha512-xwRqPdPyJu0PRo7JwRd0OcHBYdcD7AstMczyUKe4JJ+nEpn2qrmidwX+Pk+Ceg/3c/EvcX07wtxkyBBl3LLRVg==", + "requires": { + "@fullcalendar/premium-common": "~6.1.8" + } + }, + "@fullcalendar/resource-timeline": { + "version": "6.1.8", + "resolved": "https://registry.npmjs.org/@fullcalendar/resource-timeline/-/resource-timeline-6.1.8.tgz", + "integrity": "sha512-Xqf47okpsIK+dIVsP938OTjflTICfn0Ll7w97EHnK8kuSM5vwX+rhHbSn3x2hjBubmO0h/oUkZzteoQnNBqZPA==", + "requires": { + "@fullcalendar/premium-common": "~6.1.8", + "@fullcalendar/scrollgrid": "~6.1.8", + "@fullcalendar/timeline": "~6.1.8" + } + }, + "@fullcalendar/scrollgrid": { + "version": "6.1.8", + "resolved": "https://registry.npmjs.org/@fullcalendar/scrollgrid/-/scrollgrid-6.1.8.tgz", + "integrity": "sha512-Btp5ipZ+BsDF5xOBbCN2TWU7pd9cCCLQaB1Hhgi997YKzsQ7PmwsJu+zI33UgJQkhmpxnJdg7gb73AuhTTa7kg==", + "requires": { + "@fullcalendar/premium-common": "~6.1.8" + } + }, + "@fullcalendar/timegrid": { + "version": "6.1.8", + "resolved": "https://registry.npmjs.org/@fullcalendar/timegrid/-/timegrid-6.1.8.tgz", + "integrity": "sha512-3+3KHHCoNcaLs/gQt004hAqICbY5+WAffrZ0ePv+80HFB1OVh8BQ5XXLHSOUbTvXdgtUTcfBHuw9fhO31kt5gA==", + "requires": { + "@fullcalendar/daygrid": "~6.1.8" + } + }, + "@fullcalendar/timeline": { + "version": "6.1.8", + "resolved": "https://registry.npmjs.org/@fullcalendar/timeline/-/timeline-6.1.8.tgz", + "integrity": "sha512-RyqmK+Jq4cOHzetiXGemOkGM3ipsWl62FR+iaOGqgFZgjijchVYYWbx9kRPDDbhD1j3b7MMgHbP8bVehgy2L/g==", + "requires": { + "@fullcalendar/premium-common": "~6.1.8", + "@fullcalendar/scrollgrid": "~6.1.8" + } + }, + "@fullcalendar/vue": { + "version": "6.1.8", + "resolved": "https://registry.npmjs.org/@fullcalendar/vue/-/vue-6.1.8.tgz", + "integrity": "sha512-rCfmpwsNkMQhhNiSGt2ZVW0yNmFyXC6O5dto+Rsj3MsJDVXAjI9pR2KRtg1vBh/6hgp8vHcMFcSCJZxIqfui+A==", + "requires": {} + }, + "@humanwhocodes/config-array": { + "version": "0.11.7", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.7.tgz", + "integrity": "sha512-kBbPWzN8oVMLb0hOUYXhmxggL/1cJE6ydvjDIGi9EnAGUyA7cLVKQg+d/Dsm+KZwx2czGHrCmMVLiyg8s5JPKw==", + "dev": true, + "peer": true, + "requires": { + "@humanwhocodes/object-schema": "^1.2.1", + "debug": "^4.1.1", + "minimatch": "^3.0.5" + } + }, + "@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 + }, + "@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": "29.5.0", + "resolved": "https://registry.npmjs.org/@jest/console/-/console-29.5.0.tgz", + "integrity": "sha512-NEpkObxPwyw/XxZVLPmAGKE89IQRp4puc6IQRPru6JKd1M3fW9v1xM1AnzIJE65hbCkzQAdnL8P47e9hzhiYLQ==", + "dev": true, + "requires": { + "@jest/types": "^29.5.0", + "@types/node": "*", + "chalk": "^4.0.0", + "jest-message-util": "^29.5.0", + "jest-util": "^29.5.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 + }, + "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": "29.5.0", + "resolved": "https://registry.npmjs.org/@jest/core/-/core-29.5.0.tgz", + "integrity": "sha512-28UzQc7ulUrOQw1IsN/kv1QES3q2kkbl/wGslyhAclqZ/8cMdB5M68BffkIdSJgKBUt50d3hbwJ92XESlE7LiQ==", + "dev": true, + "requires": { + "@jest/console": "^29.5.0", + "@jest/reporters": "^29.5.0", + "@jest/test-result": "^29.5.0", + "@jest/transform": "^29.5.0", + "@jest/types": "^29.5.0", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "exit": "^0.1.2", + "graceful-fs": "^4.2.9", + "jest-changed-files": "^29.5.0", + "jest-config": "^29.5.0", + "jest-haste-map": "^29.5.0", + "jest-message-util": "^29.5.0", + "jest-regex-util": "^29.4.3", + "jest-resolve": "^29.5.0", + "jest-resolve-dependencies": "^29.5.0", + "jest-runner": "^29.5.0", + "jest-runtime": "^29.5.0", + "jest-snapshot": "^29.5.0", + "jest-util": "^29.5.0", + "jest-validate": "^29.5.0", + "jest-watcher": "^29.5.0", + "micromatch": "^4.0.4", + "pretty-format": "^29.5.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" + } + }, + "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": { + "version": "29.5.0", + "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-29.5.0.tgz", + "integrity": "sha512-5FXw2+wD29YU1d4I2htpRX7jYnAyTRjP2CsXQdo9SAM8g3ifxWPSV0HnClSn71xwctr0U3oZIIH+dtbfmnbXVQ==", + "dev": true, + "requires": { + "@jest/fake-timers": "^29.5.0", + "@jest/types": "^29.5.0", + "@types/node": "*", + "jest-mock": "^29.5.0" + } + }, + "@jest/expect": { + "version": "29.5.0", + "resolved": "https://registry.npmjs.org/@jest/expect/-/expect-29.5.0.tgz", + "integrity": "sha512-PueDR2HGihN3ciUNGr4uelropW7rqUfTiOn+8u0leg/42UhblPxHkfoh0Ruu3I9Y1962P3u2DY4+h7GVTSVU6g==", + "dev": true, + "requires": { + "expect": "^29.5.0", + "jest-snapshot": "^29.5.0" + } + }, + "@jest/expect-utils": { + "version": "29.5.0", + "resolved": "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-29.5.0.tgz", + "integrity": "sha512-fmKzsidoXQT2KwnrwE0SQq3uj8Z763vzR8LnLBwC2qYWEFpjX8daRsk6rHUM1QvNlEW/UJXNXm59ztmJJWs2Mg==", + "dev": true, + "requires": { + "jest-get-type": "^29.4.3" + } + }, + "@jest/fake-timers": { + "version": "29.5.0", + "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-29.5.0.tgz", + "integrity": "sha512-9ARvuAAQcBwDAqOnglWq2zwNIRUDtk/SCkp/ToGEhFv5r86K21l+VEs0qNTaXtyiY0lEePl3kylijSYJQqdbDg==", + "dev": true, + "requires": { + "@jest/types": "^29.5.0", + "@sinonjs/fake-timers": "^10.0.2", + "@types/node": "*", + "jest-message-util": "^29.5.0", + "jest-mock": "^29.5.0", + "jest-util": "^29.5.0" + } + }, + "@jest/globals": { + "version": "29.5.0", + "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-29.5.0.tgz", + "integrity": "sha512-S02y0qMWGihdzNbUiqSAiKSpSozSuHX5UYc7QbnHP+D9Lyw8DgGGCinrN9uSuHPeKgSSzvPom2q1nAtBvUsvPQ==", + "dev": true, + "requires": { + "@jest/environment": "^29.5.0", + "@jest/expect": "^29.5.0", + "@jest/types": "^29.5.0", + "jest-mock": "^29.5.0" + } + }, + "@jest/reporters": { + "version": "29.5.0", + "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-29.5.0.tgz", + "integrity": "sha512-D05STXqj/M8bP9hQNSICtPqz97u7ffGzZu+9XLucXhkOFBqKcXe04JLZOgIekOxdb73MAoBUFnqvf7MCpKk5OA==", + "dev": true, + "requires": { + "@bcoe/v8-coverage": "^0.2.3", + "@jest/console": "^29.5.0", + "@jest/test-result": "^29.5.0", + "@jest/transform": "^29.5.0", + "@jest/types": "^29.5.0", + "@jridgewell/trace-mapping": "^0.3.15", + "@types/node": "*", + "chalk": "^4.0.0", + "collect-v8-coverage": "^1.0.0", + "exit": "^0.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-report": "^3.0.0", + "istanbul-lib-source-maps": "^4.0.0", + "istanbul-reports": "^3.1.3", + "jest-message-util": "^29.5.0", + "jest-util": "^29.5.0", + "jest-worker": "^29.5.0", + "slash": "^3.0.0", + "string-length": "^4.0.1", + "strip-ansi": "^6.0.0", + "v8-to-istanbul": "^9.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" + } + }, + "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 + }, + "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 + }, + "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, + "requires": { + "char-regex": "^1.0.2", + "strip-ansi": "^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" + } + } + } + }, + "@jest/schemas": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.4.3.tgz", + "integrity": "sha512-VLYKXQmtmuEz6IxJsrZwzG9NvtkQsWNnWMsKxqWNu3+CnfzJQhp0WDDKWLVV9hLKr0l3SLLFRqcYHjhtyuDVxg==", + "dev": true, + "requires": { + "@sinclair/typebox": "^0.25.16" + } + }, + "@jest/source-map": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-29.4.3.tgz", + "integrity": "sha512-qyt/mb6rLyd9j1jUts4EQncvS6Yy3PM9HghnNv86QBlV+zdL2inCdK1tuVlL+J+lpiw2BI67qXOrX3UurBqQ1w==", + "dev": true, + "requires": { + "@jridgewell/trace-mapping": "^0.3.15", + "callsites": "^3.0.0", + "graceful-fs": "^4.2.9" + } + }, + "@jest/test-result": { + "version": "29.5.0", + "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-29.5.0.tgz", + "integrity": "sha512-fGl4rfitnbfLsrfx1uUpDEESS7zM8JdgZgOCQuxQvL1Sn/I6ijeAVQWGfXI9zb1i9Mzo495cIpVZhA0yr60PkQ==", + "dev": true, + "requires": { + "@jest/console": "^29.5.0", + "@jest/types": "^29.5.0", + "@types/istanbul-lib-coverage": "^2.0.0", + "collect-v8-coverage": "^1.0.0" + } + }, + "@jest/test-sequencer": { + "version": "29.5.0", + "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-29.5.0.tgz", + "integrity": "sha512-yPafQEcKjkSfDXyvtgiV4pevSeyuA6MQr6ZIdVkWJly9vkqjnFfcfhRQqpD5whjoU8EORki752xQmjaqoFjzMQ==", + "dev": true, + "requires": { + "@jest/test-result": "^29.5.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^29.5.0", + "slash": "^3.0.0" + } + }, + "@jest/transform": { + "version": "29.5.0", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-29.5.0.tgz", + "integrity": "sha512-8vbeZWqLJOvHaDfeMuoHITGKSz5qWc9u04lnWrQE3VyuSw604PzQM824ZeX9XSjUCeDiE3GuxZe5UKa8J61NQw==", + "dev": true, + "requires": { + "@babel/core": "^7.11.6", + "@jest/types": "^29.5.0", + "@jridgewell/trace-mapping": "^0.3.15", + "babel-plugin-istanbul": "^6.1.1", + "chalk": "^4.0.0", + "convert-source-map": "^2.0.0", + "fast-json-stable-stringify": "^2.1.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^29.5.0", + "jest-regex-util": "^29.4.3", + "jest-util": "^29.5.0", + "micromatch": "^4.0.4", + "pirates": "^4.0.4", + "slash": "^3.0.0", + "write-file-atomic": "^4.0.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" + } + }, + "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 + }, + "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/types": { + "version": "29.5.0", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.5.0.tgz", + "integrity": "sha512-qbu7kN6czmVRc3xWFQcAN03RAUamgppVUdXrvl1Wr3jlNF93o9mJbGcDWrwGB6ht44u7efB1qCFgVQmca24Uog==", + "dev": true, + "requires": { + "@jest/schemas": "^29.4.3", + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^17.0.8", + "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.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" + } + } + } + }, + "@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, + "requires": { + "@jridgewell/set-array": "^1.0.0", + "@jridgewell/sourcemap-codec": "^1.4.10" + } + }, + "@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==" + }, + "@jridgewell/set-array": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", + "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==" + }, + "@jridgewell/source-map": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.2.tgz", + "integrity": "sha512-m7O9o2uR8k2ObDysZYzdfhb08VuEml5oWGiosa1VdaPZ/A6QyPkAJuwN0Q1lhULOf6B7MtQmHENS743hWtCrgw==", + "peer": true, + "requires": { + "@jridgewell/gen-mapping": "^0.3.0", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "dependencies": { + "@jridgewell/gen-mapping": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", + "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", + "peer": true, + "requires": { + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + } + } + } + }, + "@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==" + }, + "@jridgewell/trace-mapping": { + "version": "0.3.18", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.18.tgz", + "integrity": "sha512-w+niJYzMHdd7USdiH2U6869nqhD2nbfZXND5Yp93qIbEmnDNk7PD48o+YchRVpzMU7M6jVCbenTR7PA1FLQ9pA==", + "requires": { + "@jridgewell/resolve-uri": "3.1.0", + "@jridgewell/sourcemap-codec": "1.4.14" + } + }, + "@leichtgewicht/ip-codec": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@leichtgewicht/ip-codec/-/ip-codec-2.0.4.tgz", + "integrity": "sha512-Hcv+nVC0kZnQ3tD9GVu5xSMR4VVYOteQIr/hwFPVEvPdlXqgGEuRjiheChHgdM+JyqdgNcmzZOX/tnl0JOiI7A==", + "dev": true, + "peer": true + }, + "@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==", + "requires": { + "unist-util-visit": "^1.4.1" + }, + "dependencies": { + "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==" + }, + "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==", + "requires": { + "unist-util-visit-parents": "^2.0.0" + } + }, + "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==", + "requires": { + "unist-util-is": "^3.0.0" + } + } + } + }, + "@mdi/svg": { + "version": "7.2.96", + "resolved": "https://registry.npmjs.org/@mdi/svg/-/svg-7.2.96.tgz", + "integrity": "sha512-rxzuSL2RSt/pWWnFnUFQi5GJArm2tHMhx20Gee3Ydn+xT2bqbR4syfgdPrq2b+j+n5LjC7C8Fb1QDM6LKeF0cA==" + }, + "@nextcloud/auth": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@nextcloud/auth/-/auth-2.1.0.tgz", + "integrity": "sha512-wf5xQrWQu6fkl3MGegVdyR5mh/EdSQKJByH3m2Url2K2xbML9Y4Y7LAff9jjJAcMt2MkzzJEM463ZBbgTqs0lg==", + "requires": { + "@nextcloud/event-bus": "^3.1.0" + } + }, + "@nextcloud/axios": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/@nextcloud/axios/-/axios-2.4.0.tgz", + "integrity": "sha512-ARGzT9p45L0sjRIV3JZWGPtMbwgxd4eEMcMJNn58NA7UQIsMkTwHb5pXQjL+5elXY9zp/JMz7n/7SHTp0bkuXQ==", + "requires": { + "@nextcloud/auth": "^2.1.0", + "@nextcloud/router": "^2.1.2", + "axios": "^1.4.0" + }, + "dependencies": { + "axios": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.4.0.tgz", + "integrity": "sha512-S4XCWMEmzvo64T9GfvQDOXgYRDJ/wsSZc7Jvdgx5u1sd0JwsuPLqb3SYmusag+edF6ziyMensPVqLTSc1PiSEA==", + "requires": { + "follow-redirects": "^1.15.0", + "form-data": "^4.0.0", + "proxy-from-env": "^1.1.0" + } + } + } + }, + "@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.3.0", + "resolved": "https://registry.npmjs.org/@nextcloud/browserslist-config/-/browserslist-config-2.3.0.tgz", + "integrity": "sha512-1Tpkof2e9Q0UicHWahQnXXrubJoqyiaqsH9G52v3cjGeVeH3BCfa1FOa41eBwBSFe2/Jxj/wCH2YVLgIXpWbBg==", + "dev": true + }, + "@nextcloud/calendar-availability-vue": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@nextcloud/calendar-availability-vue/-/calendar-availability-vue-1.0.0.tgz", + "integrity": "sha512-vB1mJC/mGSo+a/7K2zw4xwR9R/GPM4qlfkGVSl1nEQtPP7Mk3el5T+3DYKWr1843JW6c/6ujTXqVLu2SIMbW5w==", + "requires": { + "@nextcloud/logger": "^2.4.0", + "ical.js": "^1.4.0", + "icalzone": "^0.0.1", + "uuid": "^9.0.0", + "vue-material-design-icons": "^5.1.2" + } + }, + "@nextcloud/calendar-js": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/@nextcloud/calendar-js/-/calendar-js-6.0.1.tgz", + "integrity": "sha512-iv6iPw20vp0CinVVrH4ptcuWPdAAx1AawMrYLqFg4vSEr0eVbwz6SW4P8GbxjzzRFJ0xqFXsmFeudiVAhvBaxA==", + "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" + }, + "dependencies": { + "@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/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": "4.2.0", + "resolved": "https://registry.npmjs.org/@nextcloud/dialogs/-/dialogs-4.2.0.tgz", + "integrity": "sha512-RILlVc/KpTONa1g7KKx3IY2ugc5ZOToOhn3vQYGzLUvjQpiNgM7vFY2jcR6vfE+4W+OSJNZDCcvabA7MHmavVw==", + "requires": { + "@mdi/svg": "^7.2.96", + "@nextcloud/files": "^3.0.0-beta.14", + "@nextcloud/l10n": "^2.2.0", + "@nextcloud/router": "^2.1.2", + "@nextcloud/typings": "^1.7.0", + "@nextcloud/vue": "^7.12.4", + "@types/toastify-js": "^1.12.1", + "@vueuse/core": "^10.4.1", + "toastify-js": "^1.12.0", + "vue-frag": "^1.4.3", + "vue-material-design-icons": "^5.2.0", + "webdav": "^5.2.3" + }, + "dependencies": { + "@vueuse/core": { + "version": "10.4.1", + "resolved": "https://registry.npmjs.org/@vueuse/core/-/core-10.4.1.tgz", + "integrity": "sha512-DkHIfMIoSIBjMgRRvdIvxsyboRZQmImofLyOHADqiVbQVilP8VVHDhBX2ZqoItOgu7dWa8oXiNnScOdPLhdEXg==", + "requires": { + "@types/web-bluetooth": "^0.0.17", + "@vueuse/metadata": "10.4.1", + "@vueuse/shared": "10.4.1", + "vue-demi": ">=0.14.5" + }, + "dependencies": { + "vue-demi": { + "version": "0.14.6", + "resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.14.6.tgz", + "integrity": "sha512-8QA7wrYSHKaYgUxDA5ZC24w+eHm3sYCbp0EzcDwKqN3p6HqtTCGR/GVsPyZW92unff4UlcSh++lmqDWN3ZIq4w==", + "requires": {} + } + } + }, + "@vueuse/metadata": { + "version": "10.4.1", + "resolved": "https://registry.npmjs.org/@vueuse/metadata/-/metadata-10.4.1.tgz", + "integrity": "sha512-2Sc8X+iVzeuMGHr6O2j4gv/zxvQGGOYETYXEc41h0iZXIRnRbJZGmY/QP8dvzqUelf8vg0p/yEA5VpCEu+WpZg==" + }, + "@vueuse/shared": { + "version": "10.4.1", + "resolved": "https://registry.npmjs.org/@vueuse/shared/-/shared-10.4.1.tgz", + "integrity": "sha512-vz5hbAM4qA0lDKmcr2y3pPdU+2EVw/yzfRsBdu+6+USGa4PxqSQRYIUC9/NcT06y+ZgaTsyURw2I9qOFaaXHAg==", + "requires": { + "vue-demi": ">=0.14.5" + }, + "dependencies": { + "vue-demi": { + "version": "0.14.6", + "resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.14.6.tgz", + "integrity": "sha512-8QA7wrYSHKaYgUxDA5ZC24w+eHm3sYCbp0EzcDwKqN3p6HqtTCGR/GVsPyZW92unff4UlcSh++lmqDWN3ZIq4w==", + "requires": {} + } + } + } + } + }, + "@nextcloud/eslint-config": { + "version": "8.2.1", + "resolved": "https://registry.npmjs.org/@nextcloud/eslint-config/-/eslint-config-8.2.1.tgz", + "integrity": "sha512-YZ4JC9ufXFyyf8l/jD612Nu2GNz1VSVLkHvMNXqjWnW+XGqkAKXBsjCfw+KNFvFkHVktUH4OSI+pdEvHQa5mCw==", + "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": "3.1.0", + "resolved": "https://registry.npmjs.org/@nextcloud/event-bus/-/event-bus-3.1.0.tgz", + "integrity": "sha512-purXQsXbhbmpcDsbDuR0i7vwUgOsqnIUa7QAD3lV/UZUkUT94SmxBM5LgQ8iV8TQBWWleEwQHy5kYfHeTGF9wg==", + "requires": { + "semver": "^7.5.1" + }, + "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.5.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.1.tgz", + "integrity": "sha512-Wvss5ivl8TMRZXXESstBA4uR5iXgEN/VC5/sOcuXdVLzcdkz4HWetIoRfG5gb5X+ij/G9rw9YoGn3QoQ8OCSpw==", + "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/files": { + "version": "3.0.0-beta.14", + "resolved": "https://registry.npmjs.org/@nextcloud/files/-/files-3.0.0-beta.14.tgz", + "integrity": "sha512-wyq+BcOE2KFjhPtpUOIkLRHLxOPVu/ZlbioII4qoD2NtjUHCx9U8RDBo28kFr45Nj3eDsQ1TFEUipocRMJ6J7g==", + "requires": { + "@nextcloud/auth": "^2.1.0", + "@nextcloud/l10n": "^2.2.0", + "@nextcloud/logger": "^2.5.0", + "@nextcloud/router": "^2.1.2", + "webdav": "^5.2.3" + } + }, + "@nextcloud/initial-state": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@nextcloud/initial-state/-/initial-state-2.1.0.tgz", + "integrity": "sha512-b92X/GvUPGQJpUQwauyG3D3dHsWowViVLnTtFPSMUc0rXtvYR5CvhkqJRfPC7O7W4VC7+V3q+FWeA+mQWMxN2Q==" + }, + "@nextcloud/l10n": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@nextcloud/l10n/-/l10n-2.2.0.tgz", + "integrity": "sha512-UAM2NJcl/NR46MANSF7Gr7q8/Up672zRyGrxLpN3k4URNmWQM9upkbRME+1K3T29wPrUyOIbQu710ZjvZafqFA==", + "requires": { + "@nextcloud/router": "^2.1.2", + "@nextcloud/typings": "^1.7.0", + "dompurify": "^3.0.3", + "escape-html": "^1.0.3", + "node-gettext": "^3.0.0" + } + }, + "@nextcloud/logger": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@nextcloud/logger/-/logger-2.5.0.tgz", + "integrity": "sha512-vJx5YxPyS9/tg3YoqA8CBN7YTZFHfuhMKJIIWFV28phxXqKhGwKVKh+/Ir8ZIPweIM5n8VNT6JOJq1JjGiMg2w==", + "requires": { + "@nextcloud/auth": "^2.0.0", + "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" + }, + "dependencies": { + "@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/router": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/@nextcloud/router/-/router-2.1.2.tgz", + "integrity": "sha512-Jj5fgjeHT1vVIgOyUGOeHfwk2KgaO77QGfqZAT6GWXvpAsN0mkqwljkg4FkHrQRouYqCE4VnJ5o8/w0DAN89tA==", + "requires": { + "@nextcloud/typings": "^1.0.0", + "core-js": "^3.6.4" + } + }, + "@nextcloud/stylelint-config": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@nextcloud/stylelint-config/-/stylelint-config-2.3.0.tgz", + "integrity": "sha512-5mtWqqwrXFXekGT0I8PtVYxJAUQXYwMF28e2MBFbsbyCv+XVzFn9rOYAn6xUG1PrsIeEnom0xlQdrrjpJc71oA==", + "dev": true, + "requires": {} + }, + "@nextcloud/typings": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/@nextcloud/typings/-/typings-1.7.0.tgz", + "integrity": "sha512-fK1i09FYTfSUBdXswyiCr8ng5MwdWjEWOF7hRvNvq5i+XFUSmGjSsRmpQZFM2AONroHqGGQBkvQqpONUshFBJQ==", + "requires": { + "@types/jquery": "3.5.16", + "vue": "^2.7.14", + "vue-router": "<4" + } + }, + "@nextcloud/vue": { + "version": "7.12.4", + "resolved": "https://registry.npmjs.org/@nextcloud/vue/-/vue-7.12.4.tgz", + "integrity": "sha512-ZW3DtIhD+aoaj9S4EB+X/kXCfIKgKXXMKKbECHkxl/CqtIvASmtxCNpt9DAlIETYKHwfuT3GWduxSnFCuLe1bQ==", + "requires": { + "@floating-ui/dom": "^1.1.0", + "@nextcloud/auth": "^2.0.0", + "@nextcloud/axios": "^2.0.0", + "@nextcloud/browser-storage": "^0.2.0", + "@nextcloud/calendar-js": "^6.0.0", + "@nextcloud/capabilities": "^1.0.4", + "@nextcloud/dialogs": "^4.0.0", + "@nextcloud/event-bus": "^3.0.0", + "@nextcloud/initial-state": "^2.0.0", + "@nextcloud/l10n": "^2.0.1", + "@nextcloud/logger": "^2.2.1", + "@nextcloud/router": "^2.0.0", + "@nextcloud/vue-select": "^3.21.2", + "@skjnldsv/sanitize-svg": "^1.0.2", + "@vueuse/components": "^10.0.2", + "clone": "^2.1.2", + "debounce": "1.2.1", + "emoji-mart-vue-fast": "^12.0.1", + "escape-html": "^1.0.3", + "floating-vue": "^1.0.0-beta.19", + "focus-trap": "^7.4.3", + "hammerjs": "^2.0.8", + "linkify-string": "^4.0.0", + "md5": "^2.3.0", + "node-polyfill-webpack-plugin": "^2.0.1", + "rehype-react": "^7.1.2", + "remark-breaks": "^3.0.2", + "remark-external-links": "^9.0.1", + "remark-parse": "^10.0.1", + "remark-rehype": "^10.1.0", + "splitpanes": "^2.4.1", + "string-length": "^5.0.1", + "striptags": "^3.2.0", + "tributejs": "^5.1.3", + "unified": "^10.1.2", + "unist-builder": "^3.0.1", + "unist-util-visit": "^4.1.2", + "vue": "^2.7.14", + "vue-color": "^2.8.1", + "vue-frag": "^1.4.3", + "vue-material-design-icons": "^5.1.2", + "vue-multiselect": "^2.1.6", + "vue2-datepicker": "^3.11.0" + }, + "dependencies": { + "@floating-ui/core": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-1.4.1.tgz", + "integrity": "sha512-jk3WqquEJRlcyu7997NtR5PibI+y5bi+LS3hPmguVClypenMsCY3CBa3LAQnozRCtCrYWSEtAdiskpamuJRFOQ==", + "requires": { + "@floating-ui/utils": "^0.1.1" + } + }, + "@floating-ui/dom": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.5.1.tgz", + "integrity": "sha512-KwvVcPSXg6mQygvA1TjbN/gh///36kKtllIF8SUm0qpFj8+rvYrpvlYdL1JoA71SHpDqgSSdGOSoQ0Mp3uY5aw==", + "requires": { + "@floating-ui/core": "^1.4.1", + "@floating-ui/utils": "^0.1.1" + } + }, + "@nextcloud/browser-storage": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/@nextcloud/browser-storage/-/browser-storage-0.2.0.tgz", + "integrity": "sha512-qRetNoCMHzfJyuQ7uvlwUXNwXlm5eSy4h8hI0Oa9HKbej57WGBYxRqsHElFzipSPh7mBUdFnz5clGpzIQx8+HQ==", + "requires": { + "core-js": "3.25.5" + } + }, + "core-js": { + "version": "3.25.5", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.25.5.tgz", + "integrity": "sha512-nbm6eZSjm+ZuBQxCUPQKQCoUEfFOXjUZ8dTTyikyKaWrTYmAVbykQfwsKE5dBK88u3QCkCrzsx/PPlKfhsvgpw==" + } + } + }, + "@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": { + "@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==" + } + } + }, + "@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" + } + }, + "@nextcloud/axios": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/@nextcloud/axios/-/axios-1.11.0.tgz", + "integrity": "sha512-NyaiSC2GX2CPaH/MUGGMTTTza/TW9ZqWNGWq6LJ+pLER8nqZ9BQkwJ5kXUYGo+i3cka68PO+9WhcDv4fSABpuQ==", + "requires": { + "@nextcloud/auth": "^1.3.0", + "axios": "^0.27.1", + "core-js": "^3.6.4" + } + }, + "@nextcloud/dialogs": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/@nextcloud/dialogs/-/dialogs-3.2.0.tgz", + "integrity": "sha512-notaHF8LXPJINBbILCbRe+dgXnJPe7NQTIrN1vwfaGUSG9GUfEf+v367yyg2brCgV6ulE/HmNhYjTQwW5AqSJA==", + "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.6.0", + "resolved": "https://registry.npmjs.org/@nextcloud/typings/-/typings-1.6.0.tgz", + "integrity": "sha512-5uIsteFy9Z9/ZaNGE8w8SDgJp+FK8/LeRLgfnakC2pU8eNKTPlQfkiYR163oEI5Xu5YzwdIzf6/roIXdNinhrw==", + "requires": { + "@types/jquery": "2.0.60" + } + }, + "@types/jquery": { + "version": "2.0.60", + "resolved": "https://registry.npmjs.org/@types/jquery/-/jquery-2.0.60.tgz", + "integrity": "sha512-izi6OBEVrAwaHiqWITjOPBbVtcKZKAXTocJqPZsAKA2lvmbpFEyPSAxgcqmisbiMYj9EvrooUEPLHQeQqVMWAg==" + } + } + }, + "@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/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/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/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": "3.10.2", + "resolved": "https://registry.npmjs.org/@nextcloud/vue/-/vue-3.10.2.tgz", + "integrity": "sha512-/8r2fE8V7nw9erjm06x3nCALC+6o9q2CzNSL0eDRfsKXCVySFoZ4bYX+zziQUStienisKDRXRhxh7RUAwkS2+w==", + "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" + } + }, + "@types/jquery": { + "version": "2.0.54", + "resolved": "https://registry.npmjs.org/@types/jquery/-/jquery-2.0.54.tgz", + "integrity": "sha512-D/PomKwNkDfSKD13DEVQT/pq2TUjN54c6uB341fEZanIzkjfGe7UaFuuaLZbpEiS5j7Wk2MUHAZqZIoECw29lg==" + }, + "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==" + }, + "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" + } + }, + "linkifyjs": { + "version": "2.1.9", + "resolved": "https://registry.npmjs.org/linkifyjs/-/linkifyjs-2.1.9.tgz", + "integrity": "sha512-74ivurkK6WHvHFozVaGtQWV38FzBwSTGNmJolEgFp7QgR2bl6ArUWlvT4GcHKbPe1z3nWYi+VUdDZk16zDOVug==", + "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==", + "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.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "requires": { + "lru-cache": "^6.0.0" + } + }, + "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" + } + }, + "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/vue-select": { + "version": "3.23.0", + "resolved": "https://registry.npmjs.org/@nextcloud/vue-select/-/vue-select-3.23.0.tgz", + "integrity": "sha512-TerpWxDtbdwda32xtrLcqN8CjcQwVwCrEdHIHIAPQ2y3Ktl/dcjQxGn0onRZqk9+4ZxPGMYdX7LIWRKCHUlrmQ==", + "requires": {} + }, + "@nextcloud/webpack-vue-config": { + "version": "5.5.1", + "resolved": "https://registry.npmjs.org/@nextcloud/webpack-vue-config/-/webpack-vue-config-5.5.1.tgz", + "integrity": "sha512-2Q3kPnsvkKeENG3rruTjAE1oz/9w0u5QMKO8oh9arL2TIO2aswkDKBtkmu6q7Po3tE+3B2f+ggHq1PNkhtwu6w==", + "dev": true, + "requires": {} + }, + "@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, + "requires": { + "eslint-scope": "5.1.1" + } + }, + "@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.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, + "requires": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + } + }, + "@sinclair/typebox": { + "version": "0.25.23", + "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.25.23.tgz", + "integrity": "sha512-VEB8ygeP42CFLWyAJhN5OklpxUliqdNEUcXb4xZ/CINqtYGTjL5ukluKdKzQ0iWdUxyQ7B0539PAUhHKrCNWSQ==", + "dev": true + }, + "@sinonjs/commons": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-2.0.0.tgz", + "integrity": "sha512-uLa0j859mMrg2slwQYdO/AkrOfmH+X6LTVmNTS9CqexuE2IvVORIkSpJLqePAbEnKJ77aMmCwr1NUZ57120Xcg==", + "dev": true, + "requires": { + "type-detect": "4.0.8" + } + }, + "@sinonjs/fake-timers": { + "version": "10.0.2", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-10.0.2.tgz", + "integrity": "sha512-SwUDyjWnah1AaNl7kxsa7cfLhlTYoiyhDAIgyh+El30YvXs/o7OLXpYH88Zdhyx9JExKrmHDJ+10bwIcY80Jmw==", + "dev": true, + "requires": { + "@sinonjs/commons": "^2.0.0" + } + }, + "@skjnldsv/sanitize-svg": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@skjnldsv/sanitize-svg/-/sanitize-svg-1.0.2.tgz", + "integrity": "sha512-blfdQZ9jr4K9IOhifF0FVhKf9LCFH0L8wWR/vEgdA53q8DGNEbjUGMNo4VU1QugglaoQdFy65O2abODRFflsSg==", + "requires": { + "is-svg": "^4.3.2" + } + }, + "@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 + }, + "@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, + "requires": { + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7", + "@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.18.2", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.18.2.tgz", + "integrity": "sha512-FcFaxOr2V5KZCviw1TnutEMVUVsGt4D2hP1TAfXZAMKuHYW3xQhe3jTxNPWutgCJ3/X1c5yX8ZoGVEItxKbwBg==", + "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/debug": { + "version": "4.1.7", + "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.7.tgz", + "integrity": "sha512-9AonUzyTjXXhEOa0DnqpzZi6VHlqKMswga9EXjpXnnqxwLtdvPPtlO8evrI5D9S6asFRCQ6v+wpiUKbw+vKqyg==", + "requires": { + "@types/ms": "*" + } + }, + "@types/eslint": { + "version": "8.4.6", + "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.4.6.tgz", + "integrity": "sha512-/fqTbjxyFUaYNO7VcW5g+4npmqVACz1bB7RTHYuLj+PRjw9hrCwrUXVQFpChUS0JsyEFvMZ7U/PfmvWgxJhI9g==", + "peer": true, + "requires": { + "@types/estree": "*", + "@types/json-schema": "*" + } + }, + "@types/eslint-scope": { + "version": "3.7.4", + "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.4.tgz", + "integrity": "sha512-9K4zoImiZc3HlIp6AVUDE4CWYx22a+lhSZMYNpbjW04+YF0KWj4pJXnEMjdnFTiQibFFmElcsasJXDbdI/EPhA==", + "peer": true, + "requires": { + "@types/eslint": "*", + "@types/estree": "*" + } + }, + "@types/estree": { + "version": "0.0.51", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.51.tgz", + "integrity": "sha512-CuPgU6f3eT/XgKKPqKd/gLZV1Xmvf1a2R5POBOGQa6uv82xpls89HU5zKeVoyR8XzHd1RGNOlQlvUe3CFkjWNQ==", + "peer": true + }, + "@types/express": { + "version": "4.17.14", + "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.14.tgz", + "integrity": "sha512-TEbt+vaPFQ+xpxFLFssxUDXj5cWCxZJjIcB7Yg0k0GMHGtgtQgpvx/MUQUeAkNbA9AAGrwkAsoeItdTgS7FMyg==", + "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.31", + "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.31.tgz", + "integrity": "sha512-DxMhY+NAsTwMMFHBTtJFNp5qiHKJ7TeqOo23zVEM9alT1Ml27Q3xcTH0xwxn7Q0BbMcVEJOs/7aQtUWupUQN3Q==", + "dev": true, + "peer": true, + "requires": { + "@types/node": "*", + "@types/qs": "*", + "@types/range-parser": "*" + } + }, + "@types/graceful-fs": { + "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, + "requires": { + "@types/node": "*" + } + }, + "@types/hast": { + "version": "2.3.4", + "resolved": "https://registry.npmjs.org/@types/hast/-/hast-2.3.4.tgz", + "integrity": "sha512-wLEm0QvaoawEDoTRwzTXp4b4jpwiJDvR5KMnFnVodm3scufTlBOWRD6N1OBf9TZMhjlNsSfcO5V+7AF4+Vy+9g==", + "requires": { + "@types/unist": "*" + } + }, + "@types/http-proxy": { + "version": "1.17.9", + "resolved": "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.9.tgz", + "integrity": "sha512-QsbSjA/fSk7xB+UXlCT3wHBy5ai9wOcNDWwZAtud+jXhwOM3l+EYZh8Lng4+/6n8uar0J7xILzqftJdJ/Wdfkw==", + "dev": true, + "peer": true, + "requires": { + "@types/node": "*" + } + }, + "@types/istanbul-lib-coverage": { + "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 + }, + "@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": "3.5.16", + "resolved": "https://registry.npmjs.org/@types/jquery/-/jquery-3.5.16.tgz", + "integrity": "sha512-bsI7y4ZgeMkmpG9OM710RRzDFp+w4P1RGiIt30C1mSBT+ExCleeh4HObwgArnDFELmRrOpXgSYN9VF1hj+f1lw==", + "requires": { + "@types/sizzle": "*" + } + }, + "@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, + "requires": { + "@types/node": "*", + "@types/tough-cookie": "*", + "parse5": "^7.0.0" + } + }, + "@types/json-schema": { + "version": "7.0.11", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz", + "integrity": "sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==" + }, + "@types/json5": { + "version": "0.0.29", + "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", + "integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==", + "dev": true, + "peer": true + }, + "@types/mdast": { + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.10.tgz", + "integrity": "sha512-W864tg/Osz1+9f4lrGTZpCSO5/z4608eUp19tbozkq2HJK6i3z1kT0H9tlADXuYIb1YYOBByU4Jsqkk75q48qA==", + "requires": { + "@types/unist": "*" + } + }, + "@types/mime": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@types/mime/-/mime-3.0.1.tgz", + "integrity": "sha512-Y4XFY5VJAuw0FgAqPNd6NNoV44jbq9Bz2L7Rh/J6jLTiHBSBJa9fxqQIvkIld4GsoDOcCbvzOUAbLPsSKKg+uA==", + "dev": true, + "peer": true + }, + "@types/minimist": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.2.tgz", + "integrity": "sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ==", + "dev": true, + "peer": true + }, + "@types/ms": { + "version": "0.7.31", + "resolved": "https://registry.npmjs.org/@types/ms/-/ms-0.7.31.tgz", + "integrity": "sha512-iiUgKzV9AuaEkZqkOLDIvlQiL6ltuZd9tGcW3gwpnX8JbuiuhFlEGmmFXEXkN50Cvq7Os88IY2v0dkDqXYWVgA==" + }, + "@types/node": { + "version": "18.8.4", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.8.4.tgz", + "integrity": "sha512-WdlVphvfR/GJCLEMbNA8lJ0lhFNBj4SW3O+O5/cEGw9oYrv0al9zTwuQsq+myDUXgNx2jgBynoVgZ2MMJ6pbow==" + }, + "@types/normalize-package-data": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.1.tgz", + "integrity": "sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw==", + "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.7.2", + "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-2.7.2.tgz", + "integrity": "sha512-KufADq8uQqo1pYKVIYzfKbJfBAc0sOeXqGbFaSpv8MRmC/zXgowNZmFcbngndGk922QDmOASEXUZCaY48gs4cg==", + "dev": true + }, + "@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 + }, + "@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/react": { + "version": "18.0.28", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.0.28.tgz", + "integrity": "sha512-RD0ivG1kEztNBdoAK7lekI9M+azSnitIn85h4iOiaLjaTrMjzslhaqCGaI4IyCJ1RljWiLCEu4jyrLLgqxBTew==", + "peer": true, + "requires": { + "@types/prop-types": "*", + "@types/scheduler": "*", + "csstype": "^3.0.2" + } + }, + "@types/retry": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/@types/retry/-/retry-0.12.0.tgz", + "integrity": "sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==", + "dev": true, + "peer": true + }, + "@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 + }, + "@types/semver": { + "version": "7.3.12", + "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.3.12.tgz", + "integrity": "sha512-WwA1MW0++RfXmCr12xeYOOC5baSC9mSb0ZqCquFzKhcoF4TvHu5MKOuXsncgZcpVFhB1pXd5hZmM0ryAoCp12A==" + }, + "@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.15.0", + "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.0.tgz", + "integrity": "sha512-z5xyF6uh8CbjAu9760KDKsH2FcDxZ2tFCsA4HIMWE6IkiYMXfVoa+4f9KX+FN0ZLsaMw1WNG2ETLA6N+/YA+cg==", + "dev": true, + "peer": true, + "requires": { + "@types/mime": "*", + "@types/node": "*" + } + }, + "@types/sizzle": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/@types/sizzle/-/sizzle-2.3.3.tgz", + "integrity": "sha512-JYM8x9EGF163bEyhdJBpR2QX1R5naCJHC8ucJylJ3w9/CVBaskdQ8WqBf8MmQrd1kRvp/a4TS8HJ+bxzR7ZJYQ==" + }, + "@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": "sha512-xevGOReSYGM7g/kUBZzPqCrR/KYAo+F0yiPc85WFTJa0MSLtyFTVTU6cJu/aV4mid7IffDIWqo69THF2o4JiEQ==", + "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/toastify-js": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@types/toastify-js/-/toastify-js-1.12.1.tgz", + "integrity": "sha512-9CTM+LKFmS0+Ii+RH55XPKcmNxCjLticj8kxeCxa7PnSVCZPQurb9XtKQtoMl/fv7WaqUpRezDcFuY8n92CtUg==" + }, + "@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 + }, + "@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==" + }, + "@types/web-bluetooth": { + "version": "0.0.17", + "resolved": "https://registry.npmjs.org/@types/web-bluetooth/-/web-bluetooth-0.0.17.tgz", + "integrity": "sha512-4p9vcSmxAayx72yn70joFoL44c9MO/0+iVEBIQXe3v2h2SiAsEIo/G5v6ObFWvNKRFjbrVadNf9LqEEZeQPzdA==" + }, + "@types/ws": { + "version": "8.5.3", + "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.3.tgz", + "integrity": "sha512-6YOoWjruKj1uLf3INHH7D3qTXwFfEsg1kf3c0uDdSBJwfa/llkwIjrAGV7j7mVgGNbzTQ3HiHKKDXl6bJPD97w==", + "dev": true, + "peer": true, + "requires": { + "@types/node": "*" + } + }, + "@types/yargs": { + "version": "17.0.13", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.13.tgz", + "integrity": "sha512-9sWaruZk2JGxIQU+IhI1fhPYRcQ0UuTNuKuCW9bR5fp7qi2Llf7WDzNa17Cy7TKnh3cdxDOiyTu6gaLS0eDatg==", + "dev": true, + "requires": { + "@types/yargs-parser": "*" + } + }, + "@types/yargs-parser": { + "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 + }, + "@typescript-eslint/eslint-plugin": { + "version": "5.48.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.48.1.tgz", + "integrity": "sha512-9nY5K1Rp2ppmpb9s9S2aBiF3xo5uExCehMDmYmmFqqyxgenbHJ3qbarcLt4ITgaD6r/2ypdlcFRdcuVPnks+fQ==", + "dev": true, + "peer": true, + "requires": { + "@typescript-eslint/scope-manager": "5.48.1", + "@typescript-eslint/type-utils": "5.48.1", + "@typescript-eslint/utils": "5.48.1", + "debug": "^4.3.4", + "ignore": "^5.2.0", + "natural-compare-lite": "^1.4.0", + "regexpp": "^3.2.0", + "semver": "^7.3.7", + "tsutils": "^3.21.0" + }, + "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==", + "dev": true, + "peer": true, + "requires": { + "yallist": "^4.0.0" + } + }, + "semver": { + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "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 + } + } + }, + "@typescript-eslint/parser": { + "version": "5.48.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.48.1.tgz", + "integrity": "sha512-4yg+FJR/V1M9Xoq56SF9Iygqm+r5LMXvheo6DQ7/yUWynQ4YfCRnsKuRgqH4EQ5Ya76rVwlEpw4Xu+TgWQUcdA==", + "dev": true, + "peer": true, + "requires": { + "@typescript-eslint/scope-manager": "5.48.1", + "@typescript-eslint/types": "5.48.1", + "@typescript-eslint/typescript-estree": "5.48.1", + "debug": "^4.3.4" + } + }, + "@typescript-eslint/scope-manager": { + "version": "5.48.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.48.1.tgz", + "integrity": "sha512-S035ueRrbxRMKvSTv9vJKIWgr86BD8s3RqoRZmsSh/s8HhIs90g6UlK8ZabUSjUZQkhVxt7nmZ63VJ9dcZhtDQ==", + "dev": true, + "peer": true, + "requires": { + "@typescript-eslint/types": "5.48.1", + "@typescript-eslint/visitor-keys": "5.48.1" + } + }, + "@typescript-eslint/type-utils": { + "version": "5.48.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.48.1.tgz", + "integrity": "sha512-Hyr8HU8Alcuva1ppmqSYtM/Gp0q4JOp1F+/JH5D1IZm/bUBrV0edoewQZiEc1r6I8L4JL21broddxK8HAcZiqQ==", + "dev": true, + "peer": true, + "requires": { + "@typescript-eslint/typescript-estree": "5.48.1", + "@typescript-eslint/utils": "5.48.1", + "debug": "^4.3.4", + "tsutils": "^3.21.0" + } + }, + "@typescript-eslint/types": { + "version": "5.48.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.48.1.tgz", + "integrity": "sha512-xHyDLU6MSuEEdIlzrrAerCGS3T7AA/L8Hggd0RCYBi0w3JMvGYxlLlXHeg50JI9Tfg5MrtsfuNxbS/3zF1/ATg==", + "dev": true, + "peer": true + }, + "@typescript-eslint/typescript-estree": { + "version": "5.48.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.48.1.tgz", + "integrity": "sha512-Hut+Osk5FYr+sgFh8J/FHjqX6HFcDzTlWLrFqGoK5kVUN3VBHF/QzZmAsIXCQ8T/W9nQNBTqalxi1P3LSqWnRA==", + "dev": true, + "peer": true, + "requires": { + "@typescript-eslint/types": "5.48.1", + "@typescript-eslint/visitor-keys": "5.48.1", + "debug": "^4.3.4", + "globby": "^11.1.0", + "is-glob": "^4.0.3", + "semver": "^7.3.7", + "tsutils": "^3.21.0" + }, + "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==", + "dev": true, + "peer": true, + "requires": { + "yallist": "^4.0.0" + } + }, + "semver": { + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "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 + } + } + }, + "@typescript-eslint/utils": { + "version": "5.48.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.48.1.tgz", + "integrity": "sha512-SmQuSrCGUOdmGMwivW14Z0Lj8dxG1mOFZ7soeJ0TQZEJcs3n5Ndgkg0A4bcMFzBELqLJ6GTHnEU+iIoaD6hFGA==", + "dev": true, + "peer": true, + "requires": { + "@types/json-schema": "^7.0.9", + "@types/semver": "^7.3.12", + "@typescript-eslint/scope-manager": "5.48.1", + "@typescript-eslint/types": "5.48.1", + "@typescript-eslint/typescript-estree": "5.48.1", + "eslint-scope": "^5.1.1", + "eslint-utils": "^3.0.0", + "semver": "^7.3.7" + }, + "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==", + "dev": true, + "peer": true, + "requires": { + "yallist": "^4.0.0" + } + }, + "semver": { + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "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 + } + } + }, + "@typescript-eslint/visitor-keys": { + "version": "5.48.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.48.1.tgz", + "integrity": "sha512-Ns0XBwmfuX7ZknznfXozgnydyR8F6ev/KEGePP4i74uL3ArsKbEhJ7raeKr1JSa997DBDwol/4a0Y+At82c9dA==", + "dev": true, + "peer": true, + "requires": { + "@typescript-eslint/types": "5.48.1", + "eslint-visitor-keys": "^3.3.0" + }, + "dependencies": { + "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 + } + } + }, + "@vue/compiler-sfc": { + "version": "2.7.14", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-2.7.14.tgz", + "integrity": "sha512-aNmNHyLPsw+sVvlQFQ2/8sjNuLtK54TC6cuKnVzAY93ks4ZBrvwQSnkkIh7bsbNhum5hJBS00wSDipQ937f5DA==", + "requires": { + "@babel/parser": "^7.18.4", + "postcss": "^8.4.14", + "source-map": "^0.6.1" + } + }, + "@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, + "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": { + "picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "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, + "requires": { + "picocolors": "^0.2.1", + "source-map": "^0.6.1" + } + } + } + }, + "@vue/eslint-config-typescript": { + "version": "11.0.2", + "resolved": "https://registry.npmjs.org/@vue/eslint-config-typescript/-/eslint-config-typescript-11.0.2.tgz", + "integrity": "sha512-EiKud1NqlWmSapBFkeSrE994qpKx7/27uCGnhdqzllYDpQZroyX/O6bwjEpeuyKamvLbsGdO6PMR2faIf+zFnw==", + "dev": true, + "peer": true, + "requires": { + "@typescript-eslint/eslint-plugin": "^5.0.0", + "@typescript-eslint/parser": "^5.0.0", + "vue-eslint-parser": "^9.0.0" + } + }, + "@vue/test-utils": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/@vue/test-utils/-/test-utils-1.3.5.tgz", + "integrity": "sha512-ezdlDNoxi5m/eP5Chg34AjnmNplrik4fyzB2DB9Yqa32OpywV8IvHqK9eCf+nIVsHFBejjV00agPFYRH2/D3Hg==", + "dev": true, + "requires": { + "dom-event-types": "^1.0.0", + "lodash": "^4.17.15", + "pretty": "^2.0.0" + } + }, + "@vue/vue2-jest": { + "version": "29.2.4", + "resolved": "https://registry.npmjs.org/@vue/vue2-jest/-/vue2-jest-29.2.4.tgz", + "integrity": "sha512-oU/Ai4sufLlrhsj8GqRqfhMr6Ud4rehmwYP358/SjKcvUqOCoKa2lOBndDzG4uZVMNnQqQbKWIg7wqL3aRYPBA==", + "dev": true, + "requires": { + "@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" + }, + "dependencies": { + "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 + } + } + }, + "@vueuse/components": { + "version": "10.1.2", + "resolved": "https://registry.npmjs.org/@vueuse/components/-/components-10.1.2.tgz", + "integrity": "sha512-HlYFYCg3twMhnQgPS4/muz8XIYKViFVKnpL0Xtw5+9ib2gtWvu1Qu7hj6kDMDtOIw1CnNRsUbMLiNI+LXkxSSQ==", + "requires": { + "@vueuse/core": "10.1.2", + "@vueuse/shared": "10.1.2", + "vue-demi": ">=0.14.0" + }, + "dependencies": { + "vue-demi": { + "version": "0.14.0", + "resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.14.0.tgz", + "integrity": "sha512-gt58r2ogsNQeVoQ3EhoUAvUsH9xviydl0dWJj7dabBC/2L4uBId7ujtCwDRD0JhkGsV1i0CtfLAeyYKBht9oWg==", + "requires": {} + } + } + }, + "@vueuse/core": { + "version": "10.1.2", + "resolved": "https://registry.npmjs.org/@vueuse/core/-/core-10.1.2.tgz", + "integrity": "sha512-roNn8WuerI56A5uiTyF/TEYX0Y+VKlhZAF94unUfdhbDUI+NfwQMn4FUnUscIRUhv3344qvAghopU4bzLPNFlA==", + "requires": { + "@types/web-bluetooth": "^0.0.17", + "@vueuse/metadata": "10.1.2", + "@vueuse/shared": "10.1.2", + "vue-demi": ">=0.14.0" + }, + "dependencies": { + "vue-demi": { + "version": "0.14.0", + "resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.14.0.tgz", + "integrity": "sha512-gt58r2ogsNQeVoQ3EhoUAvUsH9xviydl0dWJj7dabBC/2L4uBId7ujtCwDRD0JhkGsV1i0CtfLAeyYKBht9oWg==", + "requires": {} + } + } + }, + "@vueuse/metadata": { + "version": "10.1.2", + "resolved": "https://registry.npmjs.org/@vueuse/metadata/-/metadata-10.1.2.tgz", + "integrity": "sha512-3mc5BqN9aU2SqBeBuWE7ne4OtXHoHKggNgxZR2K+zIW4YLsy6xoZ4/9vErQs6tvoKDX6QAqm3lvsrv0mczAwIQ==" + }, + "@vueuse/shared": { + "version": "10.1.2", + "resolved": "https://registry.npmjs.org/@vueuse/shared/-/shared-10.1.2.tgz", + "integrity": "sha512-1uoUTPBlgyscK9v6ScGeVYDDzlPSFXBlxuK7SfrDGyUTBiznb3mNceqhwvZHjtDRELZEN79V5uWPTF1VDV8svA==", + "requires": { + "vue-demi": ">=0.14.0" + }, + "dependencies": { + "vue-demi": { + "version": "0.14.0", + "resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.14.0.tgz", + "integrity": "sha512-gt58r2ogsNQeVoQ3EhoUAvUsH9xviydl0dWJj7dabBC/2L4uBId7ujtCwDRD0JhkGsV1i0CtfLAeyYKBht9oWg==", + "requires": {} + } + } + }, + "@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": "2.0.1", + "resolved": "https://registry.npmjs.org/@webpack-cli/configtest/-/configtest-2.0.1.tgz", + "integrity": "sha512-njsdJXJSiS2iNbQVS0eT8A/KPnmyH4pv1APj2K0d1wrZcBLw+yppxOy4CGqa0OxDJkzfL/XELDhD8rocnIwB5A==", + "dev": true, + "peer": true, + "requires": {} + }, + "@webpack-cli/info": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@webpack-cli/info/-/info-2.0.1.tgz", + "integrity": "sha512-fE1UEWTwsAxRhrJNikE7v4EotYflkEhBL7EbajfkPlf6E37/2QshOy/D48Mw8G5XMFlQtS6YV42vtbG9zBpIQA==", + "dev": true, + "peer": true, + "requires": {} + }, + "@webpack-cli/serve": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@webpack-cli/serve/-/serve-2.0.1.tgz", + "integrity": "sha512-0G7tNyS+yW8TdgHwZKlDWYXFA6OJQnoLCQvYKkQP0Q2X205PSQ6RNUj0M+1OB/9gRQaUZ/ccYfaxd0nhaWKfjw==", + "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.6", + "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz", + "integrity": "sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==", + "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==", + "requires": { + "event-target-shim": "^5.0.0" + } + }, + "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, + "peer": true, + "requires": { + "mime-types": "~2.1.34", + "negotiator": "0.6.3" + } + }, + "acorn": { + "version": "8.8.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.0.tgz", + "integrity": "sha512-QOxyigPVrpZ2GXT+PFyZTl6TtOFc5egxHIP9IlQ+RbupQuX4RkT/Bee4/kQuC02Xkzg84JcT7oLYtDIQxp+v7w==" + }, + "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, + "requires": { + "acorn": "^8.1.0", + "acorn-walk": "^8.0.2" + } + }, + "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": {} + }, + "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, + "requires": {} + }, + "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 + }, + "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" + } + }, + "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" + } + }, + "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.11.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.11.0.tgz", + "integrity": "sha512-wGgprdCvMalC0BztXvitD2hC04YffAvtsUn93JbGXYLAtCUO4xd17mCCZQxUOItiBwZvJScWo8NIvQMQ71rdpg==", + "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": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true + } + } + }, + "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" + } + }, + "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.5", + "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.5.tgz", + "integrity": "sha512-iSDYZMMyTPkiFasVqfuAQnWAYcvO/SeBSCGKePoEthjp4LEMTe4uLc7b025o4jAZpHhihh8xPo99TNWUWWkGDQ==", + "dev": true, + "peer": true, + "requires": { + "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" + } + }, + "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.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, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "es-abstract": "^1.19.2", + "es-shim-unscopables": "^1.0.0" + } + }, + "arrify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", + "integrity": "sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA==", + "dev": true, + "peer": true + }, + "asn1.js": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-5.4.1.tgz", + "integrity": "sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA==", + "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==" + } + } + }, + "assert": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/assert/-/assert-2.0.0.tgz", + "integrity": "sha512-se5Cd+js9dXJnu6Ag2JFc00t+HmHOen+8Q+L7O9zI0PqQXr20uk2J0XQqMxZEeo5U50o8Nvmmx7dZrl+Ufr35A==", + "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 + }, + "asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" + }, + "autosize": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/autosize/-/autosize-6.0.1.tgz", + "integrity": "sha512-f86EjiUKE6Xvczc4ioP1JBlWG7FKrE13qe/DxBCpe8GCipCq2nFw73aO8QEBKHfSbYGDN5eB9jXWKen7tspDqQ==" + }, + "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==" + }, + "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" + } + }, + "babel-jest": { + "version": "29.5.0", + "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-29.5.0.tgz", + "integrity": "sha512-mA4eCDh5mSo2EcA9xQjVTpmbbNk32Zb3Q3QFQsNhaK56Q+yoXowzFodLux30HRgyOho5rsQ6B0P9QpMkvvnJ0Q==", + "dev": true, + "requires": { + "@jest/transform": "^29.5.0", + "@types/babel__core": "^7.1.14", + "babel-plugin-istanbul": "^6.1.1", + "babel-preset-jest": "^29.5.0", + "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.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" + } + } + } + }, + "babel-loader": { + "version": "9.1.2", + "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-9.1.2.tgz", + "integrity": "sha512-mN14niXW43tddohGl8HPu5yfQq70iUThvFL/4QzESA7GcZoC0eVOhvWdQ8+3UlSjaDE9MVtsW9mxDY07W7VpVA==", + "dev": true, + "peer": true, + "requires": { + "find-cache-dir": "^3.3.2", + "schema-utils": "^4.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-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": "29.5.0", + "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-29.5.0.tgz", + "integrity": "sha512-zSuuuAlTMT4mzLj2nPnUm6fsE6270vdOfnpbJ+RmruU75UhLFvL0N2NgI7xpeS7NaB6hGqmd5pVpGTDYvi4Q3w==", + "dev": true, + "requires": { + "@babel/template": "^7.3.3", + "@babel/types": "^7.3.3", + "@types/babel__core": "^7.1.14", + "@types/babel__traverse": "^7.0.6" + } + }, + "babel-plugin-polyfill-corejs2": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.3.tgz", + "integrity": "sha512-bM3gHc337Dta490gg+/AseNB9L4YLHxq1nGKZZSHbhXv4aTYU2MD2cjza1Ru4S6975YLTaL1K8uJf6ukJhhmtw==", + "dev": true, + "requires": { + "@babel/compat-data": "^7.17.7", + "@babel/helper-define-polyfill-provider": "^0.4.0", + "semver": "^6.1.1" + } + }, + "babel-plugin-polyfill-corejs3": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.8.1.tgz", + "integrity": "sha512-ikFrZITKg1xH6pLND8zT14UPgjKHiGLqex7rGEZCH2EvhsneJaJPemmpQaIZV5AL03II+lXylw3UmddDK8RU5Q==", + "dev": true, + "requires": { + "@babel/helper-define-polyfill-provider": "^0.4.0", + "core-js-compat": "^3.30.1" + } + }, + "babel-plugin-polyfill-regenerator": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.5.0.tgz", + "integrity": "sha512-hDJtKjMLVa7Z+LwnTCxoDLQj6wdc+B8dun7ayF2fYieI6OzfuvcLMB32ihJZ4UhCBwNYGl5bg/x/P9cMdnkc2g==", + "dev": true, + "requires": { + "@babel/helper-define-polyfill-provider": "^0.4.0" + } + }, + "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": "29.5.0", + "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-29.5.0.tgz", + "integrity": "sha512-JOMloxOqdiBSxMAzjRaH023/vvcaSaec49zvg+2LmNsktC7ei39LTJGw02J+9uUtTZUq6xbLyJ4dxe9sSmIuAg==", + "dev": true, + "requires": { + "babel-plugin-jest-hoist": "^29.5.0", + "babel-preset-current-node-syntax": "^1.0.0" + } + }, + "bail": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/bail/-/bail-2.0.2.tgz", + "integrity": "sha512-0xO6mYd7JB2YesxDKplafRpsiOzPt9V02ddPCLbY1xYGPOX24NTyN50qnUxgCPcSoYMhKpAuBTjQoRZCAkUDRw==" + }, + "balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" + }, + "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==" + }, + "base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==" + }, + "batch": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", + "integrity": "sha512-x+VAiMRL6UPkx+kudNvxTl6hB2XNNCG2r+7wixVfIYwu/2HKRXimwQyaumLjMveWvT2Hkd/cAJw+QBMfJ/EKVw==", + "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==" + }, + "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 + }, + "bluebird": { + "version": "3.7.2", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", + "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==", + "dev": 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==" + }, + "body-parser": { + "version": "1.20.1", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.1.tgz", + "integrity": "sha512-jWi7abTbYwajOytWCQc37VulmWiRae5RyTpaCyDcS5/lMdtwSz5lOpDE67srw/HYe35f1z3fDQw+3txg7gNtWw==", + "dev": true, + "peer": true, + "requires": { + "bytes": "3.1.2", + "content-type": "~1.0.4", + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "on-finished": "2.4.1", + "qs": "6.11.0", + "raw-body": "2.5.1", + "type-is": "~1.6.18", + "unpipe": "1.0.0" + }, + "dependencies": { + "bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", + "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": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true, + "peer": true + } + } + }, + "bonjour-service": { + "version": "1.0.14", + "resolved": "https://registry.npmjs.org/bonjour-service/-/bonjour-service-1.0.14.tgz", + "integrity": "sha512-HIMbgLnk1Vqvs6B4Wq5ep7mxvj9sGz5d1JJyDNSGNIdA/w2MCz6GTjWTdjqOJV1bEPj+6IkxDvWNFKEBxNt4kQ==", + "dev": true, + "peer": true, + "requires": { + "array-flatten": "^2.1.2", + "dns-equal": "^1.0.0", + "fast-deep-equal": "^3.1.3", + "multicast-dns": "^7.2.5" + } + }, + "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 + }, + "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" + } + }, + "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" + } + }, + "brorand": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", + "integrity": "sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==" + }, + "browserify-aes": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", + "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", + "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==", + "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==", + "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==", + "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==", + "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": { + "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==", + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + } + } + }, + "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==", + "requires": { + "pako": "~1.0.5" + } + }, + "browserslist": { + "version": "4.21.7", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.7.tgz", + "integrity": "sha512-BauCXrQ7I2ftSqd2mvKHGo85XR0u7Ru3C/Hxsy/0TkfCtjrmAbPdzLGasmoiBxplpDXlPvdjX9u7srIMfgasNA==", + "requires": { + "caniuse-lite": "^1.0.30001489", + "electron-to-chromium": "^1.4.411", + "node-releases": "^2.0.12", + "update-browserslist-db": "^1.0.11" + } + }, + "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==", + "requires": { + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" + } + }, + "buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==" + }, + "buffer-xor": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", + "integrity": "sha512-571s0T7nZWK6vB67HI5dyUF7wXiNcfaPPPTl6zYCNApANjIvYJTg7hlud/+cJpdAhS7dVzqMLmfhfHR3rAcOjQ==" + }, + "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==" + }, + "builtins": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/builtins/-/builtins-5.0.1.tgz", + "integrity": "sha512-qwVpFEHNfhYJIzNRBvd2C1kyo6jz3ZSMPyyuR47OPdiKWlbYnZNyDWuyR175qDnAJLiCo5fBBqPb3RiXgWlkOQ==", + "dev": true, + "peer": true, + "requires": { + "semver": "^7.0.0" + }, + "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==", + "dev": true, + "peer": true, + "requires": { + "yallist": "^4.0.0" + } + }, + "semver": { + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "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 + } + } + }, + "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==" + }, + "bytes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", + "integrity": "sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==", + "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==", + "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.30001492", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001492.tgz", + "integrity": "sha512-2efF8SAZwgAX1FJr87KWhvuJxnGJKOnctQa8xLOskAXNXq8oiuqgl6u1kk3fFpsp3GgvzlRjiK1sl63hNtFADw==" + }, + "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": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true + } + } + }, + "char-regex": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/char-regex/-/char-regex-2.0.1.tgz", + "integrity": "sha512-oSvEeo6ZUD7NepqAat3RqoucZ5SeqLJgOvVIwkafu6IP3V0pO38s/ypdVUmDDK6qIIHNlYHJAKX9E7R7HoKElw==" + }, + "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==" + }, + "charenc": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/charenc/-/charenc-0.0.2.tgz", + "integrity": "sha512-yrLQ/yVUFXkzg7EDQsPieE/53+0RlaWTs+wBrvW36cyilJ2SaDWfl4Yj7MtLTXleV9uEKefbAGUPv2/iWSooRA==" + }, + "chokidar": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", + "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "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": { + "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" + } + } + } + }, + "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.5.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.5.0.tgz", + "integrity": "sha512-yH4RezKOGlOhxkmhbeNuC4eYZKAUsEaGtBuBzDDP1eFUKiccDWzBABxBfOx31IDwDIXMTxWuwAxUGModvkbuVw==", + "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==", + "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": "sha512-kgMuFyE78OC6Dyu3Dy7vcx4uy97EIbVxJB/B0eJ3bUNAkwdNcxYzgKltnyADiYwsR7SEqkkUPsEUT//OVS6XMA==" + }, + "cliui": { + "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, + "requires": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" + } + }, + "clone": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", + "integrity": "sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w==" + }, + "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": { + "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" + } + }, + "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 + } + } + }, + "co": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", + "integrity": "sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==", + "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": "1.9.1", + "resolved": "https://registry.npmjs.org/color-string/-/color-string-1.9.1.tgz", + "integrity": "sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==", + "requires": { + "color-name": "^1.0.0", + "simple-swizzle": "^0.2.2" + } + }, + "colord": { + "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 + }, + "colorette": { + "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 + }, + "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" + } + }, + "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==" + }, + "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==" + }, + "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": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==", + "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": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true, + "peer": true + }, + "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, + "peer": true + } + } + }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "dev": true + }, + "condense-newlines": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/condense-newlines/-/condense-newlines-0.2.1.tgz", + "integrity": "sha512-P7X+QL9Hb9B/c8HI5BFFKmjgBu2XpQuF98WZ9XkO+dBGgk5XgwiQz7o1SmpglNWId3581UcS0SFAWfoIhMHPfg==", + "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": "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, + "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==" + }, + "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, + "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==" + }, + "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" + } + }, + "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.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 + }, + "cookie": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz", + "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==", + "dev": true, + "peer": true + }, + "cookie-signature": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==", + "dev": true, + "peer": true + }, + "core-js": { + "version": "3.32.2", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.32.2.tgz", + "integrity": "sha512-pxXSw1mYZPDGvTQqEc5vgIb83jGQKFGYWY76z4a7weZXUolw3G+OvpZqSRcfYOoOVUQJYEPsWeQK8pKEnUtWxQ==" + }, + "core-js-compat": { + "version": "3.30.2", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.30.2.tgz", + "integrity": "sha512-nriW1nuJjUgvkEjIot1Spwakz52V9YkYHZAQG6A1eCgC8AA1p0zngrQEP9R0+V6hji5XilWKG1Bd0YRppmGimA==", + "dev": true, + "requires": { + "browserslist": "^4.21.5" + } + }, + "core-util-is": { + "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 + }, + "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" + } + }, + "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==", + "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==" + } + } + }, + "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==", + "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==", + "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": "sha512-mCxBlsHFYh9C+HVpiEacem8FEBnMXgU9gy4zmNC+SXAZNB/1idgp/aulFJ4FgCi7GPEVbfyng092GqL2k2rmow==" + }, + "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==", + "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-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-functions-list": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/css-functions-list/-/css-functions-list-3.1.0.tgz", + "integrity": "sha512-/9lCvYZaUbBGvYUgYGFJ4dcYiyqdhSjG7IPVluoV8A1ILjkF7ilmhp1OGUz8n+nmBcu0RNrQAzgD8B6FJbrt2w==", + "dev": true, + "peer": true + }, + "css-loader": { + "version": "6.7.1", + "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-6.7.1.tgz", + "integrity": "sha512-yB5CNFa14MbPJcomwNh3wLThtkZgcNyI2bNMRt8iE5Z8Vwl7f8vQXFAzn2HDOJvtDq2NTZBUGMSUNNyrv3/+cw==", + "dev": true, + "peer": true, + "requires": { + "icss-utils": "^5.1.0", + "postcss": "^8.4.7", + "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.2.0", + "semver": "^7.3.5" + }, + "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==", + "dev": true, + "peer": true, + "requires": { + "yallist": "^4.0.0" + } + }, + "semver": { + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "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 + } + } + }, + "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, + "requires": { + "mdn-data": "2.0.30", + "source-map-js": "^1.0.1" + } + }, + "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 + }, + "cssom": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.5.0.tgz", + "integrity": "sha512-iKuQcq+NdHqlAcwUY0o/HL69XQrUaQdMjmStJ8JFmUaiiQErlhrmuigkg/CU4E2J0IyUKUrMAgl36TvN67MqTw==", + "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.1", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.1.tgz", + "integrity": "sha512-DJR/VvkAvSZW9bTouZue2sSxDwdTN92uHjqeKVm+0dAqdfNykRzQ95tay8aXMBAAPpUiq4Qcug2L7neoRh2Egw==" + }, + "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-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==", + "optional": true + }, + "data-urls": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-3.0.2.tgz", + "integrity": "sha512-Jy/tj3ldjZJo63sVAvg6LHt2mHvl4V6AgRAmNDtLdm7faqtsx+aJG42rsyCo9JCoRVKwPFzKlIPx3DIibwSIaQ==", + "dev": true, + "requires": { + "abab": "^2.0.6", + "whatwg-mimetype": "^3.0.0", + "whatwg-url": "^11.0.0" + } + }, + "date-format-parse": { + "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==" + }, + "de-indent": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/de-indent/-/de-indent-1.0.2.tgz", + "integrity": "sha512-e/1zu3xH5MQryN2zdVaF0OrdNLUbvWxzMbi+iNA6Bky7l1RoP8a2fIbRocyHclXt/arDrrR6lL3TqFD9pMQTsg==", + "dev": true + }, + "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==", + "requires": { + "ms": "2.1.2" + } + }, + "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 + }, + "decamelize-keys": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.0.tgz", + "integrity": "sha512-ocLWuYzRPoS9bfiSdDd3cxvrzovVMZnRDVEzAs+hWIVXGDbHxWMECij2OBuyB/An0FFW/nLuq6Kv1i/YC5Qfzg==", + "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": "sha512-7N/q3lyZ+LVCp7PzuxrJr4KMbBE2hW7BT7YNia330OFxIf4d3r5zVpicP2650l7CPN6RM9zOJRl3NGpqSiw3Eg==", + "dev": true, + "peer": true + } + } + }, + "decimal.js": { + "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 + }, + "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==", + "requires": { + "character-entities": "^2.0.0" + } + }, + "dedent": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz", + "integrity": "sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA==", + "dev": true + }, + "deep-is": { + "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 + }, + "deepmerge": { + "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 + }, + "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==", + "requires": { + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" + } + }, + "delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==" + }, + "depd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", + "dev": true, + "peer": true + }, + "dequal": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/dequal/-/dequal-2.0.3.tgz", + "integrity": "sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==" + }, + "des.js": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.1.tgz", + "integrity": "sha512-Q0I4pfFrv2VPd34/vfLrFOoRmlYj3OV50i7fskps1jZWK1kApMWWT9G6RRUeYedLcBDIhnSDaUvJMb3AhUlaEA==", + "requires": { + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0" + } + }, + "destroy": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", + "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", + "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": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/diff/-/diff-5.1.0.tgz", + "integrity": "sha512-D+mk+qE8VC/PAUrlAU34N+VfXev0ghe5ywmpqrawphmVZc1bEfn56uo9qpyGp1p4xpzOHkSW4ztBd6L7Xx4ACw==" + }, + "diff-sequences": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-29.4.3.tgz", + "integrity": "sha512-ofrBgwpPhCD85kMKtE9RYFFq6OC1A89oW2vvgWZNCwxrUpRUILopY7lsYyMDSjc8g6U6aiO0Qubg6r4Wgt5ZnA==", + "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==", + "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==" + } + } + }, + "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" + } + }, + "dns-equal": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/dns-equal/-/dns-equal-1.0.0.tgz", + "integrity": "sha512-z+paD6YUQsk+AbGCEM4PrOXSss5gd66QfcVBFTKR/HpFL9jCqikS94HYwKww6fQyO7IxrIIyUu+g0Ka9tUS2Cg==", + "dev": true, + "peer": true + }, + "dns-packet": { + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-5.4.0.tgz", + "integrity": "sha512-EgqGeaBB8hLiHLZtp/IbaDQTL8pZ0+IvwzSHA6d7VyMDM+B9hgddEMa9xjK5oYnw0ci0JQ6g2XCD7/f6cafU6g==", + "dev": true, + "peer": true, + "requires": { + "@leichtgewicht/ip-codec": "^2.0.1" + } + }, + "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.1.0", + "resolved": "https://registry.npmjs.org/dom-event-types/-/dom-event-types-1.1.0.tgz", + "integrity": "sha512-jNCX+uNJ3v38BKvPbpki6j5ItVlnSqVV6vDWGS6rExzCMjsc39frLjm1n91o6YaKK6AZl0wLloItW6C6mr61BQ==", + "dev": true + }, + "dom-serializer": { + "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, + "requires": { + "domelementtype": "^2.3.0", + "domhandler": "^5.0.2", + "entities": "^4.2.0" + } + }, + "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==" + }, + "domelementtype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", + "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", + "dev": true, + "peer": true + }, + "domexception": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/domexception/-/domexception-4.0.0.tgz", + "integrity": "sha512-A2is4PLG+eeSfoTMA95/s4pvAoSo2mKtiM5jlHkAVewmiO8ISFTFKZjH7UAM1Atli/OT/7JHOrJRJiMKUZKYBw==", + "dev": true, + "requires": { + "webidl-conversions": "^7.0.0" + } + }, + "domhandler": { + "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, + "requires": { + "domelementtype": "^2.3.0" + } + }, + "dompurify": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-3.0.3.tgz", + "integrity": "sha512-axQ9zieHLnAnHh0sfAamKYiqXMJAVwu+LM/alQ7WDagoWessyWvMSFyW65CqF3owufNu8HBcE4cM2Vflu7YWcQ==" + }, + "domutils": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.0.1.tgz", + "integrity": "sha512-z08c1l761iKhDFtfXO04C7kTdPBLi41zwOZl00WS8b5eiaebNpY00HKbztwBq+e3vyqWNwWF3mP9YLUeqIrF+Q==", + "dev": true, + "peer": true, + "requires": { + "dom-serializer": "^2.0.0", + "domelementtype": "^2.3.0", + "domhandler": "^5.0.1" + } + }, + "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": { + "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": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==", + "dev": true, + "peer": true + }, + "electron-to-chromium": { + "version": "1.4.417", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.417.tgz", + "integrity": "sha512-8rY8HdCxuSVY8wku3i/eDac4g1b4cSbruzocenrqBlzqruAZYHjQCHIjC66dLR9DXhEHTojsC4EjhZ8KmzwXqA==" + }, + "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==", + "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==" + } + } + }, + "emittery": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.13.1.tgz", + "integrity": "sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ==", + "dev": true + }, + "emoji-mart-vue-fast": { + "version": "12.0.1", + "resolved": "https://registry.npmjs.org/emoji-mart-vue-fast/-/emoji-mart-vue-fast-12.0.1.tgz", + "integrity": "sha512-qO8F9aduHwPGEU2U1YobOH3lRXEMvrjej6KdhGMnSoMJ+OFSmNf+pUal/MbrEn0RUy+Uqc7U9sPopA+3ipK4+g==", + "requires": { + "@babel/runtime": "^7.18.6", + "core-js": "^3.23.5" + } + }, + "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": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", + "dev": true, + "peer": true + }, + "enhanced-resolve": { + "version": "5.10.0", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.10.0.tgz", + "integrity": "sha512-T0yTFjdpldGY8PmuXXR0PyQ1ufZpEGiHVrp7zHKB7jdR4qlmZHhONVM5AQOAWXuF/w3dnHbEQVrNptJgt7F+cQ==", + "peer": true, + "requires": { + "graceful-fs": "^4.2.4", + "tapable": "^2.2.0" + } + }, + "entities": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.4.0.tgz", + "integrity": "sha512-oYp7156SP8LkeGD0GF85ad1X9Ai79WtRsZ2gxJqtBuzH+98YUV6jkHEKlZkMbcrjJjIVJNIDP/3WL9wQkoPbWA==", + "dev": 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.4", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.20.4.tgz", + "integrity": "sha512-0UtvRN79eMe2L+UNEF1BwRe364sj/DXhQ/k5FmivgoSdpM90b8Jc0mDzKMGo7QS0BVbOP/bTwBKNnDc9rNzaPA==", + "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.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.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.2", + "object-keys": "^1.1.1", + "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" + } + }, + "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-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, + "requires": { + "has": "^1.0.3" + } + }, + "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==", + "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==" + }, + "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": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==" + }, + "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": { + "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": "sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA==", + "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": "sha512-ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w==", + "dev": true + }, + "type-check": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", + "integrity": "sha512-ZCmOJdvOWDBYJlzAoFkC+Q0+bUyEOS1ltgp1MGU03fqHG+dbi9tBFU2Rd9QKiDZFAYrhPh2JUf7rZRIuHRKtOg==", + "dev": true, + "requires": { + "prelude-ls": "~1.1.2" + } + } + } + }, + "eslint": { + "version": "8.28.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.28.0.tgz", + "integrity": "sha512-S27Di+EVyMxcHiwDrFzk8dJYAaD+/5SoWKxL1ri/71CRHsnJnRDPNt2Kzj24+MT9FDupf4aqqyqPrvI8MvQ4VQ==", + "dev": true, + "peer": true, + "requires": { + "@eslint/eslintrc": "^1.3.3", + "@humanwhocodes/config-array": "^0.11.6", + "@humanwhocodes/module-importer": "^1.0.1", + "@nodelib/fs.walk": "^1.2.8", + "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.4.0", + "esquery": "^1.4.0", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^6.0.1", + "find-up": "^5.0.0", + "glob-parent": "^6.0.2", + "globals": "^13.15.0", + "grapheme-splitter": "^1.0.4", + "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-sdsl": "^4.1.4", + "js-yaml": "^4.1.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.4.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.1.2", + "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" + }, + "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.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "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-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 + }, + "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, + "requires": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + } + }, + "globals": { + "version": "13.17.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.17.0.tgz", + "integrity": "sha512-1C+6nQRb1GwGMKm2dH/E7enFAMxGTmGI7/dEdhy/DNelv85w9B72t3uc5frtMNXIbzrarJJ/lTCjcaZwbLJmyw==", + "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" + } + }, + "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, + "requires": { + "p-locate": "^5.0.0" + } + }, + "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, + "requires": { + "yocto-queue": "^0.1.0" + } + }, + "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, + "requires": { + "p-limit": "^3.0.2" + } + }, + "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 + }, + "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 + } + } + }, + "eslint-config-standard": { + "version": "17.0.0", + "resolved": "https://registry.npmjs.org/eslint-config-standard/-/eslint-config-standard-17.0.0.tgz", + "integrity": "sha512-/2ks1GKyqSOkH7JFvXJicu0iMpoojkwB+f5Du/1SC0PtBL+s8v30k9njRZ21pm2drKYm2342jFnGWzttxPmZVg==", + "dev": true, + "peer": true, + "requires": {} + }, + "eslint-import-resolver-exports": { + "version": "1.0.0-beta.4", + "resolved": "https://registry.npmjs.org/eslint-import-resolver-exports/-/eslint-import-resolver-exports-1.0.0-beta.4.tgz", + "integrity": "sha512-aN/vmABEJI9gXk881f2wmflfvdVskGvguFXtcSx2ym35ETWPNj/tp+9KNCTe/4AbA7LkgN88GD8IKHneYXWxqQ==", + "dev": true, + "peer": true, + "requires": { + "resolve.exports": "^1.1.1" + }, + "dependencies": { + "resolve.exports": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-1.1.1.tgz", + "integrity": "sha512-/NtpHNDN7jWhAaQ9BvBUYZ6YTXsRBgfqWFWP7BZBaoMJO/I3G5OFzvTuWNlZC3aPjins1F+TNrLKsGbH4rfsRQ==", + "dev": true, + "peer": true + } + } + }, + "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.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, + "requires": { + "debug": "^3.2.7" + }, + "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-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" + }, + "dependencies": { + "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" + } + }, + "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-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, + "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.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" + }, + "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": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true, + "peer": true + } + } + }, + "eslint-plugin-jsdoc": { + "version": "39.6.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-39.6.2.tgz", + "integrity": "sha512-dvgY/W7eUFoAIIiaWHERIMI61ZWqcz9YFjEeyTzdPlrZc3TY/3aZm5aB91NUoTLWYZmO/vFlYSuQi15tF7uE5A==", + "dev": true, + "peer": true, + "requires": { + "@es-joy/jsdoccomment": "~0.36.0", + "comment-parser": "1.3.1", + "debug": "^4.3.4", + "escape-string-regexp": "^4.0.0", + "esquery": "^1.4.0", + "semver": "^7.3.8", + "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.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "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": "15.5.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-n/-/eslint-plugin-n-15.5.1.tgz", + "integrity": "sha512-kAd+xhZm7brHoFLzKLB7/FGRFJNg/srmv67mqb7tto22rpr4wv/LV6RuXzAfv3jbab7+k1wi42PsIhGviywaaw==", + "dev": true, + "peer": true, + "requires": { + "builtins": "^5.0.1", + "eslint-plugin-es": "^4.1.0", + "eslint-utils": "^3.0.0", + "ignore": "^5.1.1", + "is-core-module": "^2.11.0", + "minimatch": "^3.1.2", + "resolve": "^1.22.1", + "semver": "^7.3.8" + }, + "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==", + "dev": true, + "peer": true, + "requires": { + "yallist": "^4.0.0" + } + }, + "semver": { + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "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-promise": { + "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, + "requires": {} + }, + "eslint-plugin-vue": { + "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, + "requires": { + "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": "^9.0.1", + "xml-name-validator": "^4.0.0" + }, + "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==", + "dev": true, + "peer": true, + "requires": { + "yallist": "^4.0.0" + } + }, + "semver": { + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "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": "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-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.4.0", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.4.0.tgz", + "integrity": "sha512-DQmnRpLj7f6TgN/NYb0MTzJXL+vJF9h3pHy4JhCIs3zwcgez8xmGg3sXHcEO97BrmO2OSvCwMdfdlyl+E9KjOw==", + "dev": true, + "peer": true, + "requires": { + "acorn": "^8.8.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^3.3.0" + }, + "dependencies": { + "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": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "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.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "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.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "peer": true + } + } + }, + "estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "peer": true + }, + "esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true + }, + "etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", + "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==" + }, + "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==" + }, + "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==", + "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" + } + }, + "exit": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", + "integrity": "sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==", + "dev": true + }, + "expect": { + "version": "29.5.0", + "resolved": "https://registry.npmjs.org/expect/-/expect-29.5.0.tgz", + "integrity": "sha512-yM7xqUrCO2JdpFo4XpM82t+PJBFybdqoQuJLDGeDX2ij8NZzqRHyu3Hp188/JX7SWqud+7t4MUdvcgGBICMHZg==", + "dev": true, + "requires": { + "@jest/expect-utils": "^29.5.0", + "jest-get-type": "^29.4.3", + "jest-matcher-utils": "^29.5.0", + "jest-message-util": "^29.5.0", + "jest-util": "^29.5.0" + } + }, + "express": { + "version": "4.18.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.18.2.tgz", + "integrity": "sha512-5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ==", + "dev": true, + "peer": true, + "requires": { + "accepts": "~1.3.8", + "array-flatten": "1.1.1", + "body-parser": "1.20.1", + "content-disposition": "0.5.4", + "content-type": "~1.0.4", + "cookie": "0.5.0", + "cookie-signature": "1.0.6", + "debug": "2.6.9", + "depd": "2.0.0", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "finalhandler": "1.2.0", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "merge-descriptors": "1.0.1", + "methods": "~1.1.2", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "path-to-regexp": "0.1.7", + "proxy-addr": "~2.0.7", + "qs": "6.11.0", + "range-parser": "~1.2.1", + "safe-buffer": "5.2.1", + "send": "0.18.0", + "serve-static": "1.15.0", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "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": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==", + "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": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true, + "peer": true + } + } + }, + "extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", + "dev": true, + "requires": { + "is-extendable": "^0.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.12", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.12.tgz", + "integrity": "sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==", + "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": { + "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" + } + } + } + }, + "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": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", + "dev": true + }, + "fast-xml-parser": { + "version": "4.2.5", + "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-4.2.5.tgz", + "integrity": "sha512-B9/wizE4WngqQftFPmdaMYlXoJlJOYxGQOanC77fq9k8+Z0v5dDSVh+3glErdIROP//s/jgb7ZuxKfB8nVyo0g==", + "requires": { + "strnum": "^1.0.5" + } + }, + "fastest-levenshtein": { + "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 + }, + "fastq": { + "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, + "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.2", + "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.2.tgz", + "integrity": "sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==", + "dev": true, + "requires": { + "bser": "2.1.1" + } + }, + "fetch-blob": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/fetch-blob/-/fetch-blob-3.2.0.tgz", + "integrity": "sha512-7yAQpD2UMJzLi1Dqv7qFYnPbaPx7ZfFK6PiIxQ4PfkGPyNyl2Ugx+a/umUonmKqjhM4DnfbMvdX6otXq83soQQ==", + "optional": true, + "requires": { + "node-domexception": "^1.0.0", + "web-streams-polyfill": "^3.0.3" + } + }, + "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" + } + }, + "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" + } + }, + "filter-obj": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/filter-obj/-/filter-obj-2.0.2.tgz", + "integrity": "sha512-lO3ttPjHZRfjMcxWKb1j1eDhTFsu4meeR3lnMcnBFhk6RuLhvEiuALu2TlfL310ph4lCYYwgF/ElIjdP739tdg==" + }, + "finalhandler": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", + "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", + "dev": true, + "peer": true, + "requires": { + "debug": "2.6.9", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "statuses": "2.0.1", + "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": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true, + "peer": 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" + } + }, + "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.2.7", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz", + "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==", + "dev": true, + "peer": true + }, + "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==", + "requires": { + "@floating-ui/dom": "^0.1.10", + "vue-resize": "^1.0.0" + } + }, + "focus-trap": { + "version": "7.5.2", + "resolved": "https://registry.npmjs.org/focus-trap/-/focus-trap-7.5.2.tgz", + "integrity": "sha512-p6vGNNWLDGwJCiEjkSK6oERj/hEyI9ITsSwIUICBoKLlWiTWXJRfQibCwcoi50rTZdbi87qDtUlMCmQwsGSgPw==", + "requires": { + "tabbable": "^6.2.0" + } + }, + "follow-redirects": { + "version": "1.15.2", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.2.tgz", + "integrity": "sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==" + }, + "for-each": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", + "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", + "requires": { + "is-callable": "^1.1.3" + } + }, + "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" + } + }, + "formdata-polyfill": { + "version": "4.0.10", + "resolved": "https://registry.npmjs.org/formdata-polyfill/-/formdata-polyfill-4.0.10.tgz", + "integrity": "sha512-buewHzMvYL29jdeQTVILecSaZKnt/RJWjoZCF5OW60Z67/GmSLBkOFM7qh1PI3zFNtJbaZL5eQu1vLfazOwj4g==", + "optional": true, + "requires": { + "fetch-blob": "^3.1.2" + } + }, + "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": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", + "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": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "dev": true + }, + "fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "optional": true + }, + "function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" + }, + "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==", + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "es-abstract": "^1.19.0", + "functions-have-names": "^1.2.2" + } + }, + "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==" + }, + "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 + }, + "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.3", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.3.tgz", + "integrity": "sha512-QJVz1Tj7MS099PevUG5jvnt9tSkXN8K14dxQlikJuPt4uD9hHAHjLyLBiLR5zELelBdD9QNRAXZzsJx0WaDL9A==", + "requires": { + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.3" + } + }, + "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-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==", + "requires": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.1" + } + }, + "glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "dev": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "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" + } + }, + "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.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", + "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", + "dev": true, + "peer": true, + "requires": { + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.2.9", + "ignore": "^5.2.0", + "merge2": "^1.4.1", + "slash": "^3.0.0" + } + }, + "globjoin": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/globjoin/-/globjoin-0.1.4.tgz", + "integrity": "sha512-xYfnw62CKG8nLkZBfWbhWwDw02CHty86jfPcc2cr3ZfeuK9ysoVPPEUxf21bAD/rWAgk52SuBrLJlefNy8mvFg==", + "dev": true, + "peer": true + }, + "graceful-fs": { + "version": "4.2.10", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", + "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==" + }, + "grapheme-splitter": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz", + "integrity": "sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==", + "dev": true, + "peer": true + }, + "hammerjs": { + "version": "2.0.8", + "resolved": "https://registry.npmjs.org/hammerjs/-/hammerjs-2.0.8.tgz", + "integrity": "sha512-tSQXBXS/MWQOn/RKckawJ61vvsDpCom87JgxiYdGwHdOa0ht0vzUWDlfioofFCRU0L+6NGDt6XzbgoJvZkMeRQ==" + }, + "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==", + "requires": { + "function-bind": "^1.1.1" + } + }, + "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==" + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "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==", + "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==" + }, + "has-tostringtag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", + "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", + "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==", + "requires": { + "inherits": "^2.0.4", + "readable-stream": "^3.6.0", + "safe-buffer": "^5.2.0" + }, + "dependencies": { + "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==", + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + } + } + }, + "hash-sum": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/hash-sum/-/hash-sum-1.0.2.tgz", + "integrity": "sha512-fUs4B4L+mlt8/XAtSOGMUO1TXmAelItBPtJG7CyHJfYTdDjwisntGO2JQz7oUsatOY9o68+57eziUVNw/mRHmA==", + "dev": 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==", + "requires": { + "inherits": "^2.0.3", + "minimalistic-assert": "^1.0.1" + } + }, + "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==", + "requires": { + "@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" + } + }, + "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==" + }, + "he": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", + "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==" + }, + "hmac-drbg": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", + "integrity": "sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg==", + "requires": { + "hash.js": "^1.0.3", + "minimalistic-assert": "^1.0.0", + "minimalistic-crypto-utils": "^1.0.1" + } + }, + "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, + "requires": { + "lru-cache": "^6.0.0" + }, + "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==", + "dev": true, + "peer": true, + "requires": { + "yallist": "^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, + "peer": true + } + } + }, + "hot-patcher": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/hot-patcher/-/hot-patcher-2.0.0.tgz", + "integrity": "sha512-rwJ0ZqSFgm+5oD0KiGBVinyPWRJESRSsHlEWDzZjyOe/OfhD9tynHqUyUIGX2fWuV+BihW4nXxeoZRJVHid64w==" + }, + "hpack.js": { + "version": "2.1.6", + "resolved": "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz", + "integrity": "sha512-zJxVehUdMGIKsRaNt7apO2Gqp0BdqW5yaiGHXXmbpvxgBYVZnAql+BJb4RO5ad2MgpbZKn5G6nMnegrH1FcNYQ==", + "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" + } + }, + "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, + "peer": true + }, + "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": "3.0.0", + "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-3.0.0.tgz", + "integrity": "sha512-oWv4T4yJ52iKrufjnyZPkrN0CH3QnrUqdB6In1g5Fe1mia8GmF36gnfNySxoZtxD5+NmYw1EElVXiBk93UeskA==", + "dev": true, + "requires": { + "whatwg-encoding": "^2.0.0" + } + }, + "html-entities": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-2.3.3.tgz", + "integrity": "sha512-DV5Ln36z34NNTDgnz0EWGBLZENelNAtkiFA4kyNOG2tDI6Mz1uSWiq1wAKdyjnJwyDiDO7Fa2SO1CTxPXL8VxA==", + "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.2.0", + "resolved": "https://registry.npmjs.org/html-tags/-/html-tags-3.2.0.tgz", + "integrity": "sha512-vy7ClnArOZwCnqZgvv+ddgHgJiAFXe3Ge9ML5/mBctVJoUoYPCdxVucOywjDARn6CVoh3dRSFdPHy2sX80L0Wg==", + "dev": true, + "peer": true + }, + "htmlparser2": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-8.0.1.tgz", + "integrity": "sha512-4lVbmc1diZC7GUJQtRQ5yBAeUCL1exyMwmForWkRLnwyzWBFxN633SALPMGYaWZvKe9j1pRZJpauvmxENSp/EA==", + "dev": true, + "peer": true, + "requires": { + "domelementtype": "^2.3.0", + "domhandler": "^5.0.2", + "domutils": "^3.0.1", + "entities": "^4.3.0" + } + }, + "http-deceiver": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz", + "integrity": "sha512-LmpOGxTfbpgtGVxJrj5k7asXHCgNZp5nLfp+hWc8QQRqtb7fUy6kRY3BO1h9ddF6yIPYUARgxGOwB42DnxIaNw==", + "dev": true, + "peer": true + }, + "http-errors": { + "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, + "peer": true, + "requires": { + "depd": "2.0.0", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "toidentifier": "1.0.1" + } + }, + "http-parser-js": { + "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, + "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": "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, + "requires": { + "@tootallnate/once": "2", + "agent-base": "6", + "debug": "4" + } + }, + "http-proxy-middleware": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-2.0.6.tgz", + "integrity": "sha512-ya/UeJ6HVBYxrgYotAZo1KvPWlgB48kUJLDePFeneHsVujFaW5WNj2NgWCAE//B1Dl02BIfYlpNgBy8Kf8Rjmw==", + "dev": true, + "peer": true, + "requires": { + "@types/http-proxy": "^1.17.8", + "http-proxy": "^1.18.1", + "is-glob": "^4.0.1", + "is-plain-obj": "^3.0.0", + "micromatch": "^4.0.2" + }, + "dependencies": { + "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 + } + } + }, + "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==" + }, + "https-proxy-agent": { + "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, + "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==" + }, + "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, + "peer": true, + "requires": { + "safer-buffer": ">= 2.1.2 < 3" + } + }, + "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": {} + }, + "ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==" + }, + "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.1.0", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz", + "integrity": "sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==", + "dev": true, + "requires": { + "pkg-dir": "^4.2.0", + "resolve-cwd": "^3.0.0" + } + }, + "imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "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": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "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==" + }, + "ini": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", + "dev": true + }, + "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==" + }, + "internal-slot": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.3.tgz", + "integrity": "sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==", + "requires": { + "get-intrinsic": "^1.1.0", + "has": "^1.0.3", + "side-channel": "^1.0.4" + } + }, + "interpret": { + "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 + }, + "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-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==" + }, + "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==", + "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": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", + "dev": true + }, + "is-bigint": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", + "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", + "requires": { + "has-bigints": "^1.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-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==", + "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.7", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", + "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==" + }, + "is-core-module": { + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.11.0.tgz", + "integrity": "sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==", + "dev": true, + "requires": { + "has": "^1.0.3" + } + }, + "is-date-object": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", + "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", + "requires": { + "has-tostringtag": "^1.0.0" + } + }, + "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": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", + "dev": true + }, + "is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "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==", + "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==", + "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==" + }, + "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 + }, + "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==", + "requires": { + "has-tostringtag": "^1.0.0" + } + }, + "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": "sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg==", + "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 + }, + "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==", + "requires": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + } + }, + "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==", + "requires": { + "call-bind": "^1.0.2" + } + }, + "is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "dev": true + }, + "is-string": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", + "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", + "requires": { + "has-tostringtag": "^1.0.0" + } + }, + "is-svg": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/is-svg/-/is-svg-4.4.0.tgz", + "integrity": "sha512-v+AgVwiK5DsGtT9ng+m4mClp6zDAmwrW8nZi6Gg15qzvBnRWWdfWA1TGaXyCDnWq5g5asofIgMVl3PjKxvk1ug==", + "requires": { + "fast-xml-parser": "^4.1.3" + } + }, + "is-symbol": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", + "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", + "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==", + "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-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==", + "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": "sha512-RydPhl4S6JwAyj0JJjshWJEFG6hNye3pZFBRZaTUfZFwGHxzppNaNOVgQuS/E/SlhrApuMXrpnK1EEIXfdo3Dg==", + "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": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", + "dev": true, + "peer": true + }, + "isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", + "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.2.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz", + "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==", + "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 + }, + "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" + } + }, + "istanbul-reports": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.5.tgz", + "integrity": "sha512-nUsEMa9pBt/NOHqbcbeJEgqIlY/K7rVWUX6Lql2orY5e9roQOthbR3vtY4zzf2orPELg80fnxxk9zUyPlgwD1w==", + "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": "sha512-z35ZSEcXHxLW4yumw0dF6L464NT36vmx3wxJw8MDpraBcWuNVgUPZgPJKcu1HekNgwlMFNqol7i/IpSbjhqwqA==" + }, + "jest": { + "version": "29.5.0", + "resolved": "https://registry.npmjs.org/jest/-/jest-29.5.0.tgz", + "integrity": "sha512-juMg3he2uru1QoXX078zTa7pO85QyB9xajZc6bU+d9yEGwrKX6+vGmJQ3UdVZsvTEUARIdObzH68QItim6OSSQ==", + "dev": true, + "requires": { + "@jest/core": "^29.5.0", + "@jest/types": "^29.5.0", + "import-local": "^3.0.2", + "jest-cli": "^29.5.0" + } + }, + "jest-changed-files": { + "version": "29.5.0", + "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-29.5.0.tgz", + "integrity": "sha512-IFG34IUMUaNBIxjQXF/iu7g6EcdMrGRRxaUSw92I/2g2YC6vCdTltl4nHvt7Ci5nSJwXIkCu8Ka1DKF+X7Z1Ag==", + "dev": true, + "requires": { + "execa": "^5.0.0", + "p-limit": "^3.1.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==", + "dev": true, + "requires": { + "yocto-queue": "^0.1.0" + } + }, + "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 + } + } + }, + "jest-circus": { + "version": "29.5.0", + "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-29.5.0.tgz", + "integrity": "sha512-gq/ongqeQKAplVxqJmbeUOJJKkW3dDNPY8PjhJ5G0lBRvu0e3EWGxGy5cI4LAGA7gV2UHCtWBI4EMXK8c9nQKA==", + "dev": true, + "requires": { + "@jest/environment": "^29.5.0", + "@jest/expect": "^29.5.0", + "@jest/test-result": "^29.5.0", + "@jest/types": "^29.5.0", + "@types/node": "*", + "chalk": "^4.0.0", + "co": "^4.6.0", + "dedent": "^0.7.0", + "is-generator-fn": "^2.0.0", + "jest-each": "^29.5.0", + "jest-matcher-utils": "^29.5.0", + "jest-message-util": "^29.5.0", + "jest-runtime": "^29.5.0", + "jest-snapshot": "^29.5.0", + "jest-util": "^29.5.0", + "p-limit": "^3.1.0", + "pretty-format": "^29.5.0", + "pure-rand": "^6.0.0", + "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" + } + }, + "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 + }, + "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, + "requires": { + "yocto-queue": "^0.1.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" + } + }, + "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 + } + } + }, + "jest-cli": { + "version": "29.5.0", + "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-29.5.0.tgz", + "integrity": "sha512-L1KcP1l4HtfwdxXNFCL5bmUbLQiKrakMUriBEcc1Vfz6gx31ORKdreuWvmQVBit+1ss9NNR3yxjwfwzZNdQXJw==", + "dev": true, + "requires": { + "@jest/core": "^29.5.0", + "@jest/test-result": "^29.5.0", + "@jest/types": "^29.5.0", + "chalk": "^4.0.0", + "exit": "^0.1.2", + "graceful-fs": "^4.2.9", + "import-local": "^3.0.2", + "jest-config": "^29.5.0", + "jest-util": "^29.5.0", + "jest-validate": "^29.5.0", + "prompts": "^2.0.1", + "yargs": "^17.3.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-config": { + "version": "29.5.0", + "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-29.5.0.tgz", + "integrity": "sha512-kvDUKBnNJPNBmFFOhDbm59iu1Fii1Q6SxyhXfvylq3UTHbg6o7j/g8k2dZyXWLvfdKB1vAPxNZnMgtKJcmu3kA==", + "dev": true, + "requires": { + "@babel/core": "^7.11.6", + "@jest/test-sequencer": "^29.5.0", + "@jest/types": "^29.5.0", + "babel-jest": "^29.5.0", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "deepmerge": "^4.2.2", + "glob": "^7.1.3", + "graceful-fs": "^4.2.9", + "jest-circus": "^29.5.0", + "jest-environment-node": "^29.5.0", + "jest-get-type": "^29.4.3", + "jest-regex-util": "^29.4.3", + "jest-resolve": "^29.5.0", + "jest-runner": "^29.5.0", + "jest-util": "^29.5.0", + "jest-validate": "^29.5.0", + "micromatch": "^4.0.4", + "parse-json": "^5.2.0", + "pretty-format": "^29.5.0", + "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" + } + }, + "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-diff": { + "version": "29.5.0", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-29.5.0.tgz", + "integrity": "sha512-LtxijLLZBduXnHSniy0WMdaHjmQnt3g5sa16W4p0HqukYTTsyTW3GD1q41TyGl5YFXj/5B2U6dlh5FM1LIMgxw==", + "dev": true, + "requires": { + "chalk": "^4.0.0", + "diff-sequences": "^29.4.3", + "jest-get-type": "^29.4.3", + "pretty-format": "^29.5.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-docblock": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-29.4.3.tgz", + "integrity": "sha512-fzdTftThczeSD9nZ3fzA/4KkHtnmllawWrXO69vtI+L9WjEIuXWs4AmyME7lN5hU7dB0sHhuPfcKofRsUb/2Fg==", + "dev": true, + "requires": { + "detect-newline": "^3.0.0" + } + }, + "jest-each": { + "version": "29.5.0", + "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-29.5.0.tgz", + "integrity": "sha512-HM5kIJ1BTnVt+DQZ2ALp3rzXEl+g726csObrW/jpEGl+CDSSQpOJJX2KE/vEg8cxcMXdyEPu6U4QX5eruQv5hA==", + "dev": true, + "requires": { + "@jest/types": "^29.5.0", + "chalk": "^4.0.0", + "jest-get-type": "^29.4.3", + "jest-util": "^29.5.0", + "pretty-format": "^29.5.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-environment-jsdom": { + "version": "29.5.0", + "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-29.5.0.tgz", + "integrity": "sha512-/KG8yEK4aN8ak56yFVdqFDzKNHgF4BAymCx2LbPNPsUshUlfAl0eX402Xm1pt+eoG9SLZEUVifqXtX8SK74KCw==", + "dev": true, + "requires": { + "@jest/environment": "^29.5.0", + "@jest/fake-timers": "^29.5.0", + "@jest/types": "^29.5.0", + "@types/jsdom": "^20.0.0", + "@types/node": "*", + "jest-mock": "^29.5.0", + "jest-util": "^29.5.0", + "jsdom": "^20.0.0" + } + }, + "jest-environment-node": { + "version": "29.5.0", + "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-29.5.0.tgz", + "integrity": "sha512-ExxuIK/+yQ+6PRGaHkKewYtg6hto2uGCgvKdb2nfJfKXgZ17DfXjvbZ+jA1Qt9A8EQSfPnt5FKIfnOO3u1h9qw==", + "dev": true, + "requires": { + "@jest/environment": "^29.5.0", + "@jest/fake-timers": "^29.5.0", + "@jest/types": "^29.5.0", + "@types/node": "*", + "jest-mock": "^29.5.0", + "jest-util": "^29.5.0" + } + }, + "jest-get-type": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-29.4.3.tgz", + "integrity": "sha512-J5Xez4nRRMjk8emnTpWrlkyb9pfRQQanDrvWHhsR1+VUfbwxi30eVcZFlcdGInRibU4G5LwHXpI7IRHU0CY+gg==", + "dev": true + }, + "jest-haste-map": { + "version": "29.5.0", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-29.5.0.tgz", + "integrity": "sha512-IspOPnnBro8YfVYSw6yDRKh/TiCdRngjxeacCps1cQ9cgVN6+10JUcuJ1EabrgYLOATsIAigxA0rLR9x/YlrSA==", + "dev": true, + "requires": { + "@jest/types": "^29.5.0", + "@types/graceful-fs": "^4.1.3", + "@types/node": "*", + "anymatch": "^3.0.3", + "fb-watchman": "^2.0.0", + "fsevents": "^2.3.2", + "graceful-fs": "^4.2.9", + "jest-regex-util": "^29.4.3", + "jest-util": "^29.5.0", + "jest-worker": "^29.5.0", + "micromatch": "^4.0.4", + "walker": "^1.0.8" + } + }, + "jest-leak-detector": { + "version": "29.5.0", + "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-29.5.0.tgz", + "integrity": "sha512-u9YdeeVnghBUtpN5mVxjID7KbkKE1QU4f6uUwuxiY0vYRi9BUCLKlPEZfDGR67ofdFmDz9oPAy2G92Ujrntmow==", + "dev": true, + "requires": { + "jest-get-type": "^29.4.3", + "pretty-format": "^29.5.0" + } + }, + "jest-matcher-utils": { + "version": "29.5.0", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-29.5.0.tgz", + "integrity": "sha512-lecRtgm/rjIK0CQ7LPQwzCs2VwW6WAahA55YBuI+xqmhm7LAaxokSB8C97yJeYyT+HvQkH741StzpU41wohhWw==", + "dev": true, + "requires": { + "chalk": "^4.0.0", + "jest-diff": "^29.5.0", + "jest-get-type": "^29.4.3", + "pretty-format": "^29.5.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-message-util": { + "version": "29.5.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.5.0.tgz", + "integrity": "sha512-Kijeg9Dag6CKtIDA7O21zNTACqD5MD/8HfIV8pdD94vFyFuer52SigdC3IQMhab3vACxXMiFk+yMHNdbqtyTGA==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.12.13", + "@jest/types": "^29.5.0", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^29.5.0", + "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" + } + }, + "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-mock": { + "version": "29.5.0", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-29.5.0.tgz", + "integrity": "sha512-GqOzvdWDE4fAV2bWQLQCkujxYWL7RxjCnj71b5VhDAGOevB3qj3Ovg26A5NI84ZpODxyzaozXLOh2NCgkbvyaw==", + "dev": true, + "requires": { + "@jest/types": "^29.5.0", + "@types/node": "*", + "jest-util": "^29.5.0" + } + }, + "jest-pnp-resolver": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz", + "integrity": "sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==", + "dev": true, + "requires": {} + }, + "jest-regex-util": { + "version": "29.4.3", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-29.4.3.tgz", + "integrity": "sha512-O4FglZaMmWXbGHSQInfXewIsd1LMn9p3ZXB/6r4FOkyhX2/iP/soMG98jGvk/A3HAN78+5VWcBGO0BJAPRh4kg==", + "dev": true + }, + "jest-resolve": { + "version": "29.5.0", + "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-29.5.0.tgz", + "integrity": "sha512-1TzxJ37FQq7J10jPtQjcc+MkCkE3GBpBecsSUWJ0qZNJpmg6m0D9/7II03yJulm3H/fvVjgqLh/k2eYg+ui52w==", + "dev": true, + "requires": { + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^29.5.0", + "jest-pnp-resolver": "^1.2.2", + "jest-util": "^29.5.0", + "jest-validate": "^29.5.0", + "resolve": "^1.20.0", + "resolve.exports": "^2.0.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 + }, + "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": "29.5.0", + "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-29.5.0.tgz", + "integrity": "sha512-sjV3GFr0hDJMBpYeUuGduP+YeCRbd7S/ck6IvL3kQ9cpySYKqcqhdLLC2rFwrcL7tz5vYibomBrsFYWkIGGjOg==", + "dev": true, + "requires": { + "jest-regex-util": "^29.4.3", + "jest-snapshot": "^29.5.0" + } + }, + "jest-runner": { + "version": "29.5.0", + "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-29.5.0.tgz", + "integrity": "sha512-m7b6ypERhFghJsslMLhydaXBiLf7+jXy8FwGRHO3BGV1mcQpPbwiqiKUR2zU2NJuNeMenJmlFZCsIqzJCTeGLQ==", + "dev": true, + "requires": { + "@jest/console": "^29.5.0", + "@jest/environment": "^29.5.0", + "@jest/test-result": "^29.5.0", + "@jest/transform": "^29.5.0", + "@jest/types": "^29.5.0", + "@types/node": "*", + "chalk": "^4.0.0", + "emittery": "^0.13.1", + "graceful-fs": "^4.2.9", + "jest-docblock": "^29.4.3", + "jest-environment-node": "^29.5.0", + "jest-haste-map": "^29.5.0", + "jest-leak-detector": "^29.5.0", + "jest-message-util": "^29.5.0", + "jest-resolve": "^29.5.0", + "jest-runtime": "^29.5.0", + "jest-util": "^29.5.0", + "jest-watcher": "^29.5.0", + "jest-worker": "^29.5.0", + "p-limit": "^3.1.0", + "source-map-support": "0.5.13" + }, + "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 + }, + "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, + "requires": { + "yocto-queue": "^0.1.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" + } + }, + "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 + } + } + }, + "jest-runtime": { + "version": "29.5.0", + "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-29.5.0.tgz", + "integrity": "sha512-1Hr6Hh7bAgXQP+pln3homOiEZtCDZFqwmle7Ew2j8OlbkIu6uE3Y/etJQG8MLQs3Zy90xrp2C0BRrtPHG4zryw==", + "dev": true, + "requires": { + "@jest/environment": "^29.5.0", + "@jest/fake-timers": "^29.5.0", + "@jest/globals": "^29.5.0", + "@jest/source-map": "^29.4.3", + "@jest/test-result": "^29.5.0", + "@jest/transform": "^29.5.0", + "@jest/types": "^29.5.0", + "@types/node": "*", + "chalk": "^4.0.0", + "cjs-module-lexer": "^1.0.0", + "collect-v8-coverage": "^1.0.0", + "glob": "^7.1.3", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^29.5.0", + "jest-message-util": "^29.5.0", + "jest-mock": "^29.5.0", + "jest-regex-util": "^29.4.3", + "jest-resolve": "^29.5.0", + "jest-snapshot": "^29.5.0", + "jest-util": "^29.5.0", + "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 + }, + "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-vue": { + "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, + "requires": { + "pretty": "2.0.0" + } + }, + "jest-snapshot": { + "version": "29.5.0", + "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-29.5.0.tgz", + "integrity": "sha512-x7Wolra5V0tt3wRs3/ts3S6ciSQVypgGQlJpz2rsdQYoUKxMxPNaoHMGJN6qAuPJqS+2iQ1ZUn5kl7HCyls84g==", + "dev": true, + "requires": { + "@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.3.3", + "@jest/expect-utils": "^29.5.0", + "@jest/transform": "^29.5.0", + "@jest/types": "^29.5.0", + "@types/babel__traverse": "^7.0.6", + "@types/prettier": "^2.1.5", + "babel-preset-current-node-syntax": "^1.0.0", + "chalk": "^4.0.0", + "expect": "^29.5.0", + "graceful-fs": "^4.2.9", + "jest-diff": "^29.5.0", + "jest-get-type": "^29.4.3", + "jest-matcher-utils": "^29.5.0", + "jest-message-util": "^29.5.0", + "jest-util": "^29.5.0", + "natural-compare": "^1.4.0", + "pretty-format": "^29.5.0", + "semver": "^7.3.5" + }, + "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.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "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": "29.5.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.5.0.tgz", + "integrity": "sha512-RYMgG/MTadOr5t8KdhejfvUU82MxsCu5MF6KuDUHl+NuwzUt+Sm6jJWxTJVrDR1j5M/gJVCPKQEpWXY+yIQ6lQ==", + "dev": true, + "requires": { + "@jest/types": "^29.5.0", + "@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": "29.5.0", + "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-29.5.0.tgz", + "integrity": "sha512-pC26etNIi+y3HV8A+tUGr/lph9B18GnzSRAkPaaZJIE1eFdiYm6/CewuiJQ8/RlfHd1u/8Ioi8/sJ+CmbA+zAQ==", + "dev": true, + "requires": { + "@jest/types": "^29.5.0", + "camelcase": "^6.2.0", + "chalk": "^4.0.0", + "jest-get-type": "^29.4.3", + "leven": "^3.1.0", + "pretty-format": "^29.5.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" + } + }, + "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": "29.5.0", + "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-29.5.0.tgz", + "integrity": "sha512-KmTojKcapuqYrKDpRwfqcQ3zjMlwu27SYext9pt4GlF5FUgB+7XE1mcCnSm6a4uUpFyQIkb6ZhzZvHl+jiBCiA==", + "dev": true, + "requires": { + "@jest/test-result": "^29.5.0", + "@jest/types": "^29.5.0", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "emittery": "^0.13.1", + "jest-util": "^29.5.0", + "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" + } + }, + "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 + }, + "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 + }, + "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, + "requires": { + "char-regex": "^1.0.2", + "strip-ansi": "^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" + } + } + } + }, + "jest-worker": { + "version": "29.5.0", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-29.5.0.tgz", + "integrity": "sha512-NcrQnevGoSp4b5kg+akIpthoAFHxPBcb5P6mYPY0fUNT+sSvmtu6jlkEle3anczUKIKEbMxFimk9oTP/tpIPgA==", + "dev": true, + "requires": { + "@types/node": "*", + "jest-util": "^29.5.0", + "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==", + "dev": true + }, + "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, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, + "jquery": { + "version": "3.6.1", + "resolved": "https://registry.npmjs.org/jquery/-/jquery-3.6.1.tgz", + "integrity": "sha512-opJeO4nCucVnsjiXOE+/PcCgYw9Gwpvs/a6B1LL/lQhwWwpbVEVYDZ1FokFr8PRc7ghYlrFPuyHuiiDNTQxmcw==", + "peer": true + }, + "js-beautify": { + "version": "1.14.6", + "resolved": "https://registry.npmjs.org/js-beautify/-/js-beautify-1.14.6.tgz", + "integrity": "sha512-GfofQY5zDp+cuHc+gsEXKPpNw2KbPddreEo35O6jT6i0RVK6LhsoYBhq5TvK4/n74wnA0QbK8gGd+jUZwTMKJw==", + "dev": true, + "requires": { + "config-chain": "^1.1.13", + "editorconfig": "^0.15.3", + "glob": "^8.0.3", + "nopt": "^6.0.0" + }, + "dependencies": { + "brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "requires": { + "balanced-match": "^1.0.0" + } + }, + "glob": { + "version": "8.0.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-8.0.3.tgz", + "integrity": "sha512-ull455NHSHI/Y1FqGaaYFaLGkNMMJbavMrEGFXG/PGrg6y7sutWHUHrz6gy6WEBH6akM1M414dWKCNs+IhKdiQ==", + "dev": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^5.0.1", + "once": "^1.3.0" + } + }, + "minimatch": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.0.tgz", + "integrity": "sha512-9TPBGGak4nHfGZsPBohm9AWg6NoT7QTCehS3BIJABslyZbzxfV78QM2Y6+i741OPZIafFAaiiEMh5OyIrJPgtg==", + "dev": true, + "requires": { + "brace-expansion": "^2.0.1" + } + } + } + }, + "js-sdsl": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/js-sdsl/-/js-sdsl-4.1.5.tgz", + "integrity": "sha512-08bOAKweV2NUC1wqTtf3qZlnpOX/R2DU9ikpjOHs0H+ibQv3zpncVQg6um4uYtRtrwIX8M4Nh3ytK4HGlYAq7Q==", + "dev": true, + "peer": true + }, + "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" + } + }, + "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": "20.0.1", + "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-20.0.1.tgz", + "integrity": "sha512-pksjj7Rqoa+wdpkKcLzQRHhJCEE42qQhl/xLMUKHgoSejaKOdaXEAnqs6uDNwMl/fciHTzKeR8Wm8cw7N+g98A==", + "dev": true, + "requires": { + "abab": "^2.0.6", + "acorn": "^8.8.0", + "acorn-globals": "^7.0.0", + "cssom": "^0.5.0", + "cssstyle": "^2.3.0", + "data-urls": "^3.0.2", + "decimal.js": "^10.4.1", + "domexception": "^4.0.0", + "escodegen": "^2.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.2", + "parse5": "^7.1.1", + "saxes": "^6.0.0", + "symbol-tree": "^3.2.4", + "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" + } + }, + "jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "dev": 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==" + }, + "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": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", + "dev": true, + "peer": true + }, + "json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==" + }, + "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": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "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.25.0", + "resolved": "https://registry.npmjs.org/known-css-properties/-/known-css-properties-0.25.0.tgz", + "integrity": "sha512-b0/9J1O9Jcyik1GC6KC42hJ41jKwdO/Mq8Mdo5sYN+IuRTXs2YFHZC3kZSx6ueusqa95x3wLYe/ytKjbAfGixA==", + "dev": true, + "peer": true + }, + "layerr": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/layerr/-/layerr-2.0.1.tgz", + "integrity": "sha512-z0730CwG/JO24evdORnyDkwG1Q7b7mF2Tp1qRQ0YvrMMARbt1DFG694SOv439Gm7hYKolyZyaB49YIrYIfZBdg==" + }, + "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.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", + "dev": true + }, + "linkify-string": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/linkify-string/-/linkify-string-4.0.2.tgz", + "integrity": "sha512-+HoBme50rPaKxh5TrEJqRLq4gphks1zj3cz6gMBKIHwJCFYVwHig8ii9aCzqGUz8DxF2otbq+Z3AJmKUnfOtKg==", + "requires": {} + }, + "linkifyjs": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/linkifyjs/-/linkifyjs-4.1.1.tgz", + "integrity": "sha512-zFN/CTVmbcVef+WaDXT63dNzzkfRBKT1j464NJQkV7iSgJU0sLBus9W0HBwnXK13/hf168pbrx/V/bjEHOXNHA==" + }, + "loader-runner": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz", + "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==", + "peer": true + }, + "loader-utils": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.4.tgz", + "integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==", + "requires": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^2.1.2" + } + }, + "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": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==", + "dev": true + }, + "lodash.get": { + "version": "4.4.2", + "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", + "integrity": "sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ==" + }, + "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": "sha512-wIkUCfVKpVsWo3JSZlc+8MB5it+2AN5W8J7YVMST30UrvcQNZ1Okbj+rbVniijTWE6FGYy4XJq/rHkas8qJMLQ==" + }, + "lodash.truncate": { + "version": "4.4.2", + "resolved": "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz", + "integrity": "sha512-jttmRe7bRse52OsWIMDLaXxWqRAmtIUccAQ3garviCqJjafXOfNMO0yMfNpdD6zbGaTU0P5Nz7e7gAT6cKmJRw==", + "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==", + "peer": true, + "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" + } + }, + "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" + } + }, + "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.3.0", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-4.3.0.tgz", + "integrity": "sha512-hdN1wVrZbb29eBGiGjJbeP8JbKjq1urkHJ/LIP/NY48MZ1QVXUsQBV1G1zvYFHn1XE06cwjBsOI2K3Ulnj1YXQ==", + "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==", + "requires": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "mdast-util-definitions": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/mdast-util-definitions/-/mdast-util-definitions-5.1.2.tgz", + "integrity": "sha512-8SVPMuHqlPME/z3gqVwWY4zVXn8lqKv/pAhC57FuJ40ImXyBpmO5ukh98zB2v7Blql2FiHjHv9LVztSIqjY+MA==", + "requires": { + "@types/mdast": "^3.0.0", + "@types/unist": "^2.0.0", + "unist-util-visit": "^4.0.0" + } + }, + "mdast-util-from-markdown": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/mdast-util-from-markdown/-/mdast-util-from-markdown-1.3.0.tgz", + "integrity": "sha512-HN3W1gRIuN/ZW295c7zi7g9lVBllMgZE40RxCX37wrTPWXCWtpvOZdfnuK+1WNpvZje6XuJeI3Wnb4TJEUem+g==", + "requires": { + "@types/mdast": "^3.0.0", + "@types/unist": "^2.0.0", + "decode-named-character-reference": "^1.0.0", + "mdast-util-to-string": "^3.1.0", + "micromark": "^3.0.0", + "micromark-util-decode-numeric-character-reference": "^1.0.0", + "micromark-util-decode-string": "^1.0.0", + "micromark-util-normalize-identifier": "^1.0.0", + "micromark-util-symbol": "^1.0.0", + "micromark-util-types": "^1.0.0", + "unist-util-stringify-position": "^3.0.0", + "uvu": "^0.5.0" + } + }, + "mdast-util-to-hast": { + "version": "12.3.0", + "resolved": "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-12.3.0.tgz", + "integrity": "sha512-pits93r8PhnIoU4Vy9bjW39M2jJ6/tdHyja9rrot9uujkN7UTU9SDnE6WNJz/IGyQk3XHX6yNNtrBH6cQzm8Hw==", + "requires": { + "@types/hast": "^2.0.0", + "@types/mdast": "^3.0.0", + "mdast-util-definitions": "^5.0.0", + "micromark-util-sanitize-uri": "^1.1.0", + "trim-lines": "^3.0.0", + "unist-util-generated": "^2.0.0", + "unist-util-position": "^4.0.0", + "unist-util-visit": "^4.0.0" + } + }, + "mdast-util-to-string": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-3.1.1.tgz", + "integrity": "sha512-tGvhT94e+cVnQt8JWE9/b3cUQZWS732TJxXHktvP+BYo62PpYD53Ls/6cC60rW21dW+txxiM4zMdc6abASvZKA==", + "requires": { + "@types/mdast": "^3.0.0" + } + }, + "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 + }, + "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, + "peer": true + }, + "memfs": { + "version": "3.4.7", + "resolved": "https://registry.npmjs.org/memfs/-/memfs-3.4.7.tgz", + "integrity": "sha512-ygaiUSNalBX85388uskeCyhSAoOSgzBbtVCr9jA2RROssFL9Q19/ZXFqS+2Th2sr1ewNIWgFdLzLC3Yl1Zv+lw==", + "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": { + "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 + } + } + }, + "merge-descriptors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", + "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==", + "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, + "requires": { + "source-map": "^0.6.1" + } + }, + "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": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==", + "dev": true, + "peer": true + }, + "micromark": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/micromark/-/micromark-3.1.0.tgz", + "integrity": "sha512-6Mj0yHLdUZjHnOPgr5xfWIMqMWS12zDN6iws9SLuSz76W8jTtAv24MN4/CL7gJrl5vtxGInkkqDv/JIoRsQOvA==", + "requires": { + "@types/debug": "^4.0.0", + "debug": "^4.0.0", + "decode-named-character-reference": "^1.0.0", + "micromark-core-commonmark": "^1.0.1", + "micromark-factory-space": "^1.0.0", + "micromark-util-character": "^1.0.0", + "micromark-util-chunked": "^1.0.0", + "micromark-util-combine-extensions": "^1.0.0", + "micromark-util-decode-numeric-character-reference": "^1.0.0", + "micromark-util-encode": "^1.0.0", + "micromark-util-normalize-identifier": "^1.0.0", + "micromark-util-resolve-all": "^1.0.0", + "micromark-util-sanitize-uri": "^1.0.0", + "micromark-util-subtokenize": "^1.0.0", + "micromark-util-symbol": "^1.0.0", + "micromark-util-types": "^1.0.1", + "uvu": "^0.5.0" + } + }, + "micromark-core-commonmark": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/micromark-core-commonmark/-/micromark-core-commonmark-1.0.6.tgz", + "integrity": "sha512-K+PkJTxqjFfSNkfAhp4GB+cZPfQd6dxtTXnf+RjZOV7T4EEXnvgzOcnp+eSTmpGk9d1S9sL6/lqrgSNn/s0HZA==", + "requires": { + "decode-named-character-reference": "^1.0.0", + "micromark-factory-destination": "^1.0.0", + "micromark-factory-label": "^1.0.0", + "micromark-factory-space": "^1.0.0", + "micromark-factory-title": "^1.0.0", + "micromark-factory-whitespace": "^1.0.0", + "micromark-util-character": "^1.0.0", + "micromark-util-chunked": "^1.0.0", + "micromark-util-classify-character": "^1.0.0", + "micromark-util-html-tag-name": "^1.0.0", + "micromark-util-normalize-identifier": "^1.0.0", + "micromark-util-resolve-all": "^1.0.0", + "micromark-util-subtokenize": "^1.0.0", + "micromark-util-symbol": "^1.0.0", + "micromark-util-types": "^1.0.1", + "uvu": "^0.5.0" + } + }, + "micromark-factory-destination": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/micromark-factory-destination/-/micromark-factory-destination-1.0.0.tgz", + "integrity": "sha512-eUBA7Rs1/xtTVun9TmV3gjfPz2wEwgK5R5xcbIM5ZYAtvGF6JkyaDsj0agx8urXnO31tEO6Ug83iVH3tdedLnw==", + "requires": { + "micromark-util-character": "^1.0.0", + "micromark-util-symbol": "^1.0.0", + "micromark-util-types": "^1.0.0" + } + }, + "micromark-factory-label": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/micromark-factory-label/-/micromark-factory-label-1.0.2.tgz", + "integrity": "sha512-CTIwxlOnU7dEshXDQ+dsr2n+yxpP0+fn271pu0bwDIS8uqfFcumXpj5mLn3hSC8iw2MUr6Gx8EcKng1dD7i6hg==", + "requires": { + "micromark-util-character": "^1.0.0", + "micromark-util-symbol": "^1.0.0", + "micromark-util-types": "^1.0.0", + "uvu": "^0.5.0" + } + }, + "micromark-factory-space": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/micromark-factory-space/-/micromark-factory-space-1.0.0.tgz", + "integrity": "sha512-qUmqs4kj9a5yBnk3JMLyjtWYN6Mzfcx8uJfi5XAveBniDevmZasdGBba5b4QsvRcAkmvGo5ACmSUmyGiKTLZew==", + "requires": { + "micromark-util-character": "^1.0.0", + "micromark-util-types": "^1.0.0" + } + }, + "micromark-factory-title": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/micromark-factory-title/-/micromark-factory-title-1.0.2.tgz", + "integrity": "sha512-zily+Nr4yFqgMGRKLpTVsNl5L4PMu485fGFDOQJQBl2NFpjGte1e86zC0da93wf97jrc4+2G2GQudFMHn3IX+A==", + "requires": { + "micromark-factory-space": "^1.0.0", + "micromark-util-character": "^1.0.0", + "micromark-util-symbol": "^1.0.0", + "micromark-util-types": "^1.0.0", + "uvu": "^0.5.0" + } + }, + "micromark-factory-whitespace": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/micromark-factory-whitespace/-/micromark-factory-whitespace-1.0.0.tgz", + "integrity": "sha512-Qx7uEyahU1lt1RnsECBiuEbfr9INjQTGa6Err+gF3g0Tx4YEviPbqqGKNv/NrBaE7dVHdn1bVZKM/n5I/Bak7A==", + "requires": { + "micromark-factory-space": "^1.0.0", + "micromark-util-character": "^1.0.0", + "micromark-util-symbol": "^1.0.0", + "micromark-util-types": "^1.0.0" + } + }, + "micromark-util-character": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-character/-/micromark-util-character-1.1.0.tgz", + "integrity": "sha512-agJ5B3unGNJ9rJvADMJ5ZiYjBRyDpzKAOk01Kpi1TKhlT1APx3XZk6eN7RtSz1erbWHC2L8T3xLZ81wdtGRZzg==", + "requires": { + "micromark-util-symbol": "^1.0.0", + "micromark-util-types": "^1.0.0" + } + }, + "micromark-util-chunked": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-chunked/-/micromark-util-chunked-1.0.0.tgz", + "integrity": "sha512-5e8xTis5tEZKgesfbQMKRCyzvffRRUX+lK/y+DvsMFdabAicPkkZV6gO+FEWi9RfuKKoxxPwNL+dFF0SMImc1g==", + "requires": { + "micromark-util-symbol": "^1.0.0" + } + }, + "micromark-util-classify-character": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-classify-character/-/micromark-util-classify-character-1.0.0.tgz", + "integrity": "sha512-F8oW2KKrQRb3vS5ud5HIqBVkCqQi224Nm55o5wYLzY/9PwHGXC01tr3d7+TqHHz6zrKQ72Okwtvm/xQm6OVNZA==", + "requires": { + "micromark-util-character": "^1.0.0", + "micromark-util-symbol": "^1.0.0", + "micromark-util-types": "^1.0.0" + } + }, + "micromark-util-combine-extensions": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-combine-extensions/-/micromark-util-combine-extensions-1.0.0.tgz", + "integrity": "sha512-J8H058vFBdo/6+AsjHp2NF7AJ02SZtWaVUjsayNFeAiydTxUwViQPxN0Hf8dp4FmCQi0UUFovFsEyRSUmFH3MA==", + "requires": { + "micromark-util-chunked": "^1.0.0", + "micromark-util-types": "^1.0.0" + } + }, + "micromark-util-decode-numeric-character-reference": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-decode-numeric-character-reference/-/micromark-util-decode-numeric-character-reference-1.0.0.tgz", + "integrity": "sha512-OzO9AI5VUtrTD7KSdagf4MWgHMtET17Ua1fIpXTpuhclCqD8egFWo85GxSGvxgkGS74bEahvtM0WP0HjvV0e4w==", + "requires": { + "micromark-util-symbol": "^1.0.0" + } + }, + "micromark-util-decode-string": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/micromark-util-decode-string/-/micromark-util-decode-string-1.0.2.tgz", + "integrity": "sha512-DLT5Ho02qr6QWVNYbRZ3RYOSSWWFuH3tJexd3dgN1odEuPNxCngTCXJum7+ViRAd9BbdxCvMToPOD/IvVhzG6Q==", + "requires": { + "decode-named-character-reference": "^1.0.0", + "micromark-util-character": "^1.0.0", + "micromark-util-decode-numeric-character-reference": "^1.0.0", + "micromark-util-symbol": "^1.0.0" + } + }, + "micromark-util-encode": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/micromark-util-encode/-/micromark-util-encode-1.0.1.tgz", + "integrity": "sha512-U2s5YdnAYexjKDel31SVMPbfi+eF8y1U4pfiRW/Y8EFVCy/vgxk/2wWTxzcqE71LHtCuCzlBDRU2a5CQ5j+mQA==" + }, + "micromark-util-html-tag-name": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-html-tag-name/-/micromark-util-html-tag-name-1.1.0.tgz", + "integrity": "sha512-BKlClMmYROy9UiV03SwNmckkjn8QHVaWkqoAqzivabvdGcwNGMMMH/5szAnywmsTBUzDsU57/mFi0sp4BQO6dA==" + }, + "micromark-util-normalize-identifier": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-normalize-identifier/-/micromark-util-normalize-identifier-1.0.0.tgz", + "integrity": "sha512-yg+zrL14bBTFrQ7n35CmByWUTFsgst5JhA4gJYoty4Dqzj4Z4Fr/DHekSS5aLfH9bdlfnSvKAWsAgJhIbogyBg==", + "requires": { + "micromark-util-symbol": "^1.0.0" + } + }, + "micromark-util-resolve-all": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-resolve-all/-/micromark-util-resolve-all-1.0.0.tgz", + "integrity": "sha512-CB/AGk98u50k42kvgaMM94wzBqozSzDDaonKU7P7jwQIuH2RU0TeBqGYJz2WY1UdihhjweivStrJ2JdkdEmcfw==", + "requires": { + "micromark-util-types": "^1.0.0" + } + }, + "micromark-util-sanitize-uri": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-sanitize-uri/-/micromark-util-sanitize-uri-1.1.0.tgz", + "integrity": "sha512-RoxtuSCX6sUNtxhbmsEFQfWzs8VN7cTctmBPvYivo98xb/kDEoTCtJQX5wyzIYEmk/lvNFTat4hL8oW0KndFpg==", + "requires": { + "micromark-util-character": "^1.0.0", + "micromark-util-encode": "^1.0.0", + "micromark-util-symbol": "^1.0.0" + } + }, + "micromark-util-subtokenize": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/micromark-util-subtokenize/-/micromark-util-subtokenize-1.0.2.tgz", + "integrity": "sha512-d90uqCnXp/cy4G881Ub4psE57Sf8YD0pim9QdjCRNjfas2M1u6Lbt+XZK9gnHL2XFhnozZiEdCa9CNfXSfQ6xA==", + "requires": { + "micromark-util-chunked": "^1.0.0", + "micromark-util-symbol": "^1.0.0", + "micromark-util-types": "^1.0.0", + "uvu": "^0.5.0" + } + }, + "micromark-util-symbol": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-1.0.1.tgz", + "integrity": "sha512-oKDEMK2u5qqAptasDAwWDXq0tG9AssVwAx3E9bBF3t/shRIGsWIRG+cGafs2p/SnDSOecnt6hZPCE2o6lHfFmQ==" + }, + "micromark-util-types": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/micromark-util-types/-/micromark-util-types-1.0.2.tgz", + "integrity": "sha512-DCfg/T8fcrhrRKTPjRrw/5LLvdGV7BHySf/1LOZx7TzWZdYRjogNtyNq885z3nNallwr3QUKARjqvHqX1/7t+w==" + }, + "micromatch": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", + "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", + "dev": true, + "requires": { + "braces": "^3.0.2", + "picomatch": "^2.3.1" + } + }, + "miller-rabin": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", + "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", + "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==" + } + } + }, + "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.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==" + }, + "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==", + "requires": { + "mime-db": "1.52.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==" + }, + "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==" + }, + "minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "minimist": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.7.tgz", + "integrity": "sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g==", + "dev": true, + "peer": true + }, + "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": { + "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 + } + } + }, + "moment": { + "version": "2.29.4", + "resolved": "https://registry.npmjs.org/moment/-/moment-2.29.4.tgz", + "integrity": "sha512-5LC9SOxjSc2HF6vO2CyuTDNivEdoz2IvyJJGj6X8DJ0eFyfszE0QiEd+iXmBvUP3WHxSjFH/vIsA0EN00cgr8w==" + }, + "mri": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/mri/-/mri-1.2.0.tgz", + "integrity": "sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==" + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + }, + "multicast-dns": { + "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, + "peer": true, + "requires": { + "dns-packet": "^5.2.2", + "thunky": "^1.0.2" + } + }, + "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": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", + "dev": true + }, + "natural-compare-lite": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz", + "integrity": "sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==", + "dev": true, + "peer": true + }, + "negotiator": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", + "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", + "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 + }, + "nested-property": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/nested-property/-/nested-property-4.0.0.tgz", + "integrity": "sha512-yFehXNWRs4cM0+dz7QxCd06hTbWbSkV0ISsqBfkntU6TOY4Qm3Q88fRRLOddkGh2Qq6dZvnKVAahfhjcUvLnyA==" + }, + "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==", + "optional": true + }, + "node-fetch": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-3.3.1.tgz", + "integrity": "sha512-cRVc/kyto/7E5shrWca1Wsea4y6tL9iYJE5FBCius3JQfb/4P4I295PfhgbJQBLTx6lATE4z+wK0rPM4VS2uow==", + "optional": true, + "requires": { + "data-uri-to-buffer": "^4.0.0", + "fetch-blob": "^3.1.4", + "formdata-polyfill": "^4.0.10" + } + }, + "node-forge": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.3.1.tgz", + "integrity": "sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==", + "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": "sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==", + "dev": true + }, + "node-polyfill-webpack-plugin": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/node-polyfill-webpack-plugin/-/node-polyfill-webpack-plugin-2.0.1.tgz", + "integrity": "sha512-ZUMiCnZkP1LF0Th2caY6J/eKKoA0TefpoVa68m/LQU1I/mE8rGt4fNYGgNuCcK+aG8P8P43nbeJ2RqJMOL/Y1A==", + "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": { + "type-fest": { + "version": "2.19.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-2.19.0.tgz", + "integrity": "sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==" + } + } + }, + "node-releases": { + "version": "2.0.12", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.12.tgz", + "integrity": "sha512-QzsYKWhXTWx8h1kIvqfnC++o0pEmpRQA/aenALsL2F4pqNVr7YzcdMlDij5WBnwftRbJCNJL/O7zdKaxKPHqgQ==" + }, + "nopt": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-6.0.0.tgz", + "integrity": "sha512-ZwLpbTgdhuZUnZzjd7nb1ZV+4DoiC6/sfiVKok72ym/4Tlf+DFdlHYmT2JPmcNNWV6Pi3SDf1kT+A4r9RTuT9g==", + "dev": true, + "requires": { + "abbrev": "^1.0.0" + } + }, + "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, + "requires": { + "hosted-git-info": "^4.0.1", + "is-core-module": "^2.5.0", + "semver": "^7.3.4", + "validate-npm-package-license": "^3.0.1" + }, + "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==", + "dev": true, + "peer": true, + "requires": { + "yallist": "^4.0.0" + } + }, + "semver": { + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "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 + } + } + }, + "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 + }, + "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" + } + }, + "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, + "requires": { + "boolbase": "^1.0.0" + } + }, + "nwsapi": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.2.tgz", + "integrity": "sha512-90yv+6538zuvUMnN+zCr8LuV6bPFdq50304114vJYJ8RDyK8D5O9Phpbd6SZWgI7PwzmmfN1upeOJlvybDSgCw==", + "dev": true + }, + "object-inspect": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.2.tgz", + "integrity": "sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ==" + }, + "object-is": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.5.tgz", + "integrity": "sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw==", + "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==" + }, + "object.assign": { + "version": "4.1.4", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz", + "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==", + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "has-symbols": "^1.0.3", + "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.4.1", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", + "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", + "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": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "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==" + }, + "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-retry": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/p-retry/-/p-retry-4.6.2.tgz", + "integrity": "sha512-312Id396EbJdvRONlngUx0NydfrIQ5lsYu0znKVUzVvArzEIt08V1qhtyESbGVd1FGX7UKtiFp5uwKZdM8wIuQ==", + "dev": true, + "peer": true, + "requires": { + "@types/retry": "0.12.0", + "retry": "^0.13.1" + } + }, + "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 + }, + "pako": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", + "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==" + }, + "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==", + "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" + } + }, + "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" + } + }, + "parse5": { + "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, + "requires": { + "entities": "^4.4.0" + } + }, + "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==" + }, + "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": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "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-posix": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/path-posix/-/path-posix-1.0.0.tgz", + "integrity": "sha512-1gJ0WpNIiYcQydgg3Ed8KzvIqTsDpNwq+cjBCssvBtuTWjEqY1AW+i+OepiEMqDCzyro9B2sLAe4RBPajMYFiA==" + }, + "path-to-regexp": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", + "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==", + "dev": true, + "peer": true + }, + "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 + }, + "pbkdf2": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.2.tgz", + "integrity": "sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==", + "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.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true + }, + "pirates": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.5.tgz", + "integrity": "sha512-8V9+HQPupnaXMA23c5hvl69zXvTwTzyAYasnkb0Tts4XvO4CliqONMOnvlq26rkhLC3nWDFBJf73LU1e1VZLaQ==", + "dev": true + }, + "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" + } + }, + "popper.js": { + "version": "1.16.1", + "resolved": "https://registry.npmjs.org/popper.js/-/popper.js-1.16.1.tgz", + "integrity": "sha512-Wb4p1J4zyFTbM+u6WuO4XstYx4Ky9Cewe4DWrel7B0w6VVICvPwdOpotjzcf6eD8TsckVnIMNONQyPIUFOUbCQ==" + }, + "postcss": { + "version": "8.4.17", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.17.tgz", + "integrity": "sha512-UNxNOLQydcOFi41yHNMcKRZ39NeXlr8AxGuZJsdub8vIb12fHzcq37DTU/QtbI6WLxNg2gF9Z+8qtRwTj1UI1Q==", + "requires": { + "nanoid": "^3.3.4", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2" + } + }, + "postcss-html": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/postcss-html/-/postcss-html-1.5.0.tgz", + "integrity": "sha512-kCMRWJRHKicpA166kc2lAVUGxDZL324bkj/pVOb6RhjB0Z5Krl7mN0AsVkBhVIRZZirY0lyQXG38HCVaoKVNoA==", + "dev": true, + "peer": true, + "requires": { + "htmlparser2": "^8.0.0", + "js-tokens": "^8.0.0", + "postcss": "^8.4.0", + "postcss-safe-parser": "^6.0.0" + }, + "dependencies": { + "js-tokens": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-8.0.0.tgz", + "integrity": "sha512-PC7MzqInq9OqKyTXfIvQNcjMkODJYC8A17kAaQgeW79yfhqTWSOfjHYQ2mDDcwJ96Iibtwkfh0C7R/OvqPlgVA==", + "dev": true, + "peer": true + } + } + }, + "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 + }, + "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" + } + }, + "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 + }, + "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-scss": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/postcss-scss/-/postcss-scss-4.0.5.tgz", + "integrity": "sha512-F7xpB6TrXyqUh3GKdyB4Gkp3QL3DDW1+uI+gxx/oJnUt/qXI4trj5OGlp9rOKdoABGULuqtqeG+3HEVQk4DjmA==", + "dev": true, + "peer": true, + "requires": {} + }, + "postcss-selector-parser": { + "version": "6.0.10", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.10.tgz", + "integrity": "sha512-IQ7TZdoaqbT+LCpShg46jnZVlhWD2w6iQYAcYXfHARZ7X1t/UGhhceQDs5X0cGqKvYlHNOuv7Oa1xmb0oQuA3w==", + "dev": true, + "requires": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + } + }, + "postcss-value-parser": { + "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 + }, + "preact": { + "version": "10.12.1", + "resolved": "https://registry.npmjs.org/preact/-/preact-10.12.1.tgz", + "integrity": "sha512-l8386ixSsBdbreOAkqtrwqHwdvR35ID8c3rKPa8lCWuO86dBi32QWHV4vfsZK1utLLFMvw+Z5Ad4XLkZzchscg==" + }, + "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.7.1", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.7.1.tgz", + "integrity": "sha512-ujppO+MkdPqoVINuDFDRLClm7D78qbDt0/NR+wp5FqEZOoTNAjPHWj17QRhu7geIHJfcNhRk1XVQmF8Bp3ye+g==", + "dev": true, + "optional": true + }, + "pretty": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/pretty/-/pretty-2.0.0.tgz", + "integrity": "sha512-G9xUchgTEiNpormdYBl+Pha50gOUovT18IvAe7EYMZ1/f9W/WWMPRn+xI68yXNMUk3QXHDwo/1wV/4NejVNe1w==", + "dev": true, + "requires": { + "condense-newlines": "^0.2.1", + "extend-shallow": "^2.0.1", + "js-beautify": "^1.6.12" + } + }, + "pretty-format": { + "version": "29.5.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.5.0.tgz", + "integrity": "sha512-V2mGkI31qdttvTFX7Mt4efOqHXqJWMu4/r66Xh3Z3BwZaPfPJgp6/gbwoujRpPUtfEF6AUUWx3Jim3GCw5g/Qw==", + "dev": true, + "requires": { + "@jest/schemas": "^29.4.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "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==" + }, + "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" + } + }, + "property-information": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/property-information/-/property-information-6.2.0.tgz", + "integrity": "sha512-kma4U7AFCTwpqq5twzC1YVIDXSqg6qQK6JN0smOw8fgRy1OkMi0CYSzFmsy6dnqSenamAtj0CyXMUJ1Mf6oROg==" + }, + "proto-list": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/proto-list/-/proto-list-1.2.4.tgz", + "integrity": "sha512-vtK/94akxsTMhe0/cbfpR+syPuszcuwhqVjJq26CuNDgFGj682oRBXOP5MJpv2r7JtE8MsiepGIqvvOTBwn2vA==", + "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 + } + } + }, + "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==" + }, + "pseudomap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", + "integrity": "sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ==", + "dev": true + }, + "psl": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz", + "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==", + "dev": true + }, + "public-encrypt": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz", + "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==", + "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==" + } + } + }, + "punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==" + }, + "pure-rand": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/pure-rand/-/pure-rand-6.0.1.tgz", + "integrity": "sha512-t+x1zEHDjBwkDGY5v5ApnZ/utcd4XYDiJsaQQoptTXgUXX95sDg1elCdJghzicm7n2mbCBJ3uYWr6M22SO19rg==", + "dev": true + }, + "qs": { + "version": "6.11.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", + "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", + "dev": true, + "peer": true, + "requires": { + "side-channel": "^1.0.4" + } + }, + "querystring": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", + "integrity": "sha512-X/xY82scca2tau62i9mDyU9K+I+djTMUsvwf7xnUX5GLvVzgJybOJf4Y6o9Zx3oJK/LSXg5tTZBjwzqVPaPO2g==" + }, + "querystring-es3": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz", + "integrity": "sha512-773xhDQnZBMFobEiztv8LIl70ch5MSF/jUQVlhwFyBILqq96anmoctVIYz+ZRp0qbCKATTn6ev02M3r7Ga5vqA==" + }, + "querystringify": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz", + "integrity": "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==" + }, + "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==", + "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==", + "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.5.1", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz", + "integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==", + "dev": true, + "peer": true, + "requires": { + "bytes": "3.1.2", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "unpipe": "1.0.0" + }, + "dependencies": { + "bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", + "dev": true, + "peer": true + } + } + }, + "react": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react/-/react-18.2.0.tgz", + "integrity": "sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==", + "peer": true, + "requires": { + "loose-envify": "^1.1.0" + } + }, + "react-dom": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.2.0.tgz", + "integrity": "sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==", + "peer": true, + "requires": { + "loose-envify": "^1.1.0", + "scheduler": "^0.23.0" + } + }, + "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 + }, + "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 + } + } + }, + "readable-stream": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-4.2.0.tgz", + "integrity": "sha512-gJrBHsaI3lgBoGMW/jHZsQ/o/TIWiu5ENCJG1BB7fuCKzpFM8GaS2UoBVt9NO+oI+3FcrBNbUkl3ilDe09aY4A==", + "requires": { + "abort-controller": "^3.0.0", + "buffer": "^6.0.3", + "events": "^3.3.0", + "process": "^0.11.10" + } + }, + "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" + } + }, + "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, + "requires": { + "resolve": "^1.20.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 + }, + "regenerate-unicode-properties": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.1.0.tgz", + "integrity": "sha512-d1VudCLoIGitcU/hEg2QqvyGZQmdC0Lf8BqdOMXGFSvJP4bNV1+XqbPQeHHLD51Jh4QJJ225dlIFvY4Ly6MXmQ==", + "dev": true, + "requires": { + "regenerate": "^1.4.2" + } + }, + "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.15.1", + "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.1.tgz", + "integrity": "sha512-knzmNAcuyxV+gQCufkYcvOqX/qIIfHLv0u5x79kRxuGojfYVky1f15TzZEu2Avte8QGepvUNTnLskf8E6X6Vyg==", + "dev": true, + "requires": { + "@babel/runtime": "^7.8.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==", + "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": "5.3.2", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.3.2.tgz", + "integrity": "sha512-RAM5FlZz+Lhmo7db9L298p2vHP5ZywrVXmVXpmAD9GuL5MPH6t9ROw1iA/wfHkQ76Qe7AaPF0nGuim96/IrQMQ==", + "dev": true, + "requires": { + "@babel/regjsgen": "^0.8.0", + "regenerate": "^1.4.2", + "regenerate-unicode-properties": "^10.1.0", + "regjsparser": "^0.9.1", + "unicode-match-property-ecmascript": "^2.0.0", + "unicode-match-property-value-ecmascript": "^2.1.0" + } + }, + "regjsparser": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.9.1.tgz", + "integrity": "sha512-dQUtn90WanSNl+7mQKcXAgZxvUe7Z0SqXlgzv0za4LwiUhyzBC58yQO3liFoUgu8GiJVInAhJjkj1N0EtQ5nkQ==", + "dev": true, + "requires": { + "jsesc": "~0.5.0" + }, + "dependencies": { + "jsesc": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", + "integrity": "sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==", + "dev": true + } + } + }, + "rehype-react": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/rehype-react/-/rehype-react-7.1.2.tgz", + "integrity": "sha512-IWsFMS2M4NTbvWzumBBKhdb39ElV+r5YQHA2HafDDRrH84bEryJA2YPPNbF9he4QzAFOssaMJ9buSC6cDcJTLw==", + "requires": { + "@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" + } + }, + "remark-breaks": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/remark-breaks/-/remark-breaks-3.0.2.tgz", + "integrity": "sha512-x96YDJ9X+Ry0/JNZFKfr1hpcAKvGYWfUTszxY9RbxKEqq6uzPPoLCuHdZsLPZZUdAv3nCROyc7FPrQLWr2rxyw==", + "requires": { + "@types/mdast": "^3.0.0", + "unified": "^10.0.0", + "unist-util-visit": "^4.0.0" + } + }, + "remark-external-links": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/remark-external-links/-/remark-external-links-9.0.1.tgz", + "integrity": "sha512-EYw+p8Zqy5oT5+W8iSKzInfRLY+zeKWHCf0ut+Q5SwnaSIDGXd2zzvp4SWqyAuVbinNmZ0zjMrDKaExWZnTYqQ==", + "requires": { + "@types/hast": "^2.3.2", + "@types/mdast": "^3.0.0", + "extend": "^3.0.0", + "is-absolute-url": "^4.0.0", + "mdast-util-definitions": "^5.0.0", + "space-separated-tokens": "^2.0.0", + "unified": "^10.0.0", + "unist-util-visit": "^4.0.0" + } + }, + "remark-parse": { + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-10.0.1.tgz", + "integrity": "sha512-1fUyHr2jLsVOkhbvPRBJ5zTKZZyD6yZzYaWCS6BPBdQ8vEMBCH+9zNCDA6tET/zHCi/jLqjCWtlJZUPk+DbnFw==", + "requires": { + "@types/mdast": "^3.0.0", + "mdast-util-from-markdown": "^1.0.0", + "unified": "^10.0.0" + } + }, + "remark-rehype": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/remark-rehype/-/remark-rehype-10.1.0.tgz", + "integrity": "sha512-EFmR5zppdBp0WQeDVZ/b66CWJipB2q2VLNFMabzDSGR66Z2fQii83G5gTBbgGEnEEA0QRussvrFHxk1HWGJskw==", + "requires": { + "@types/hast": "^2.0.0", + "@types/mdast": "^3.0.0", + "mdast-util-to-hast": "^12.1.0", + "unified": "^10.0.0" + } + }, + "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 + }, + "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": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==" + }, + "resolve": { + "version": "1.22.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", + "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", + "dev": true, + "requires": { + "is-core-module": "^2.9.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + } + }, + "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-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" + } + }, + "resolve.exports": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-2.0.1.tgz", + "integrity": "sha512-OEJWVeimw8mgQuj3HfkNl4KqRevH7lzeQNaWRPfx0PPse7Jk6ozcsG4FKVgtzDsC1KUF+YlTHh17NcgHOPykLw==", + "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, + "peer": 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==", + "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" + } + }, + "sade": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/sade/-/sade-1.8.1.tgz", + "integrity": "sha512-xal3CZX1Xlo/k4ApwCFrHVACi9fBqJ7V+mwhBsuf/1IOKbBy098Fex+Wa/5QMubw09pSZ/u8EY8PWgevJsXp1A==", + "requires": { + "mri": "^1.1.0" + } + }, + "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==" + }, + "safe-regex-test": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.0.tgz", + "integrity": "sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==", + "requires": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.3", + "is-regex": "^1.1.4" + } + }, + "safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" + }, + "sass": { + "version": "1.55.0", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.55.0.tgz", + "integrity": "sha512-Pk+PMy7OGLs9WaxZGJMn7S96dvlyVBwwtToX895WmCpAOr5YiJYEUJfiJidMuKb613z2xNWcXCHEuOvjZbqC6A==", + "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.1.0", + "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-13.1.0.tgz", + "integrity": "sha512-tZS1RJQ2n2+QNyf3CCAo1H562WjL/5AM6Gi8YcPVVoNxQX8d19mx8E+8fRrMWsyc93ZL6Q8vZDSM0FHVTJaVnQ==", + "dev": true, + "peer": true, + "requires": { + "klona": "^2.0.4", + "neo-async": "^2.6.2" + } + }, + "saxes": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/saxes/-/saxes-6.0.0.tgz", + "integrity": "sha512-xAg7SOnEhrm5zI3puOOKyy1OMcMlIJZYNJY7xLBwSze0UjhPLnWfj2GF2EpT0jmzaJKIWKHLsaSSajf35bcYnA==", + "dev": true, + "requires": { + "xmlchars": "^2.2.0" + } + }, + "scheduler": { + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.0.tgz", + "integrity": "sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw==", + "peer": true, + "requires": { + "loose-envify": "^1.1.0" + } + }, + "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" + }, + "dependencies": { + "ajv": { + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", + "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", + "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 + } + } + }, + "scrollparent": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/scrollparent/-/scrollparent-2.0.1.tgz", + "integrity": "sha512-HSdN78VMvFCSGCkh0oYX/tY4R3P1DW61f8+TeZZ4j2VLgfwvw0bpRSOv4PCVKisktIwbzHCfZsx+rLbbDBqIBA==" + }, + "select-hose": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz", + "integrity": "sha512-mEugaLK+YfkijB4fx0e6kImuJdCIt2LxCRcbEYPqRGCs4F2ogyfZU5IAZRdjCP8JPq2AtdNoC/Dux63d9Kiryg==", + "dev": true, + "peer": true + }, + "selfsigned": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-2.1.1.tgz", + "integrity": "sha512-GSL3aowiF7wa/WtSFwnUrludWFoNhftq8bUkH9pkzjpN2XSPOAYEgg6e0sS9s0rZwgJzJiQRPU18A6clnoW5wQ==", + "dev": true, + "peer": true, + "requires": { + "node-forge": "^1" + } + }, + "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.18.0", + "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", + "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", + "dev": true, + "peer": true, + "requires": { + "debug": "2.6.9", + "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": "2.0.0", + "mime": "1.6.0", + "ms": "2.1.3", + "on-finished": "2.4.1", + "range-parser": "~1.2.1", + "statuses": "2.0.1" + }, + "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": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "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": "6.0.0", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.0.tgz", + "integrity": "sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag==", + "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": "sha512-pXHfKNP4qujrtteMrSBb0rc8HJ9Ms/GrXwcUtUtD5s4ewDJI8bT3Cz2zTVRMKtri49pLx2e0Ya8ziP5Ya2pZZw==", + "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" + } + }, + "depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", + "dev": true, + "peer": true + }, + "http-errors": { + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", + "integrity": "sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A==", + "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": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==", + "dev": true, + "peer": true + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "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 + }, + "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, + "peer": true + } + } + }, + "serve-static": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", + "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", + "dev": true, + "peer": true, + "requires": { + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "parseurl": "~1.3.3", + "send": "0.18.0" + } + }, + "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==" + }, + "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==", + "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==", + "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": "sha512-fCvEXfh6NWpm+YSuY2bpXb/VIihqWA6hLsgboC+0nl71Q7N7o2eaCW8mJa/NLvQhs6jpd3VZV4UiUQlV6+lc8g==", + "dev": true + }, + "signal-exit": { + "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 + }, + "simple-swizzle": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.2.tgz", + "integrity": "sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==", + "requires": { + "is-arrayish": "^0.3.1" + }, + "dependencies": { + "is-arrayish": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.2.tgz", + "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==" + } + } + }, + "sisteransi": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", + "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==", + "dev": true + }, + "slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "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" + }, + "dependencies": { + "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, + "peer": true + } + } + }, + "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.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" + }, + "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-support": { + "version": "0.5.13", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.13.tgz", + "integrity": "sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w==", + "dev": true, + "requires": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "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==" + }, + "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.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 + }, + "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" + }, + "dependencies": { + "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, + "peer": true, + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + } + } + }, + "splitpanes": { + "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==" + }, + "sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", + "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": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", + "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==", + "requires": { + "inherits": "~2.0.4", + "readable-stream": "^3.5.0" + }, + "dependencies": { + "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==", + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + } + } + }, + "stream-http": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-3.2.0.tgz", + "integrity": "sha512-Oq1bLqisTyK3TSCXpPbT4sdeYNdmyZJv1LxpEm2vu1ZhK89kSE5YXwZc3cWk0MagGaKriBh9mCFbVGtO+vY29A==", + "requires": { + "builtin-status-codes": "^3.0.0", + "inherits": "^2.0.4", + "readable-stream": "^3.6.0", + "xtend": "^4.0.2" + }, + "dependencies": { + "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==", + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + } + } + }, + "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==", + "requires": { + "safe-buffer": "~5.2.0" + } + }, + "string-length": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/string-length/-/string-length-5.0.1.tgz", + "integrity": "sha512-9Ep08KAMUn0OadnVaBuRdE2l615CQ508kr0XMadjClfYpdCyvrbFp6Taebo8yyxokQ4viUd/xPPUA4FGgUa0ow==", + "requires": { + "char-regex": "^2.0.0", + "strip-ansi": "^7.0.1" + }, + "dependencies": { + "ansi-regex": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", + "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==" + }, + "strip-ansi": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.0.1.tgz", + "integrity": "sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw==", + "requires": { + "ansi-regex": "^6.0.1" + } + } + } + }, + "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.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==", + "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==", + "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==" + }, + "strnum": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/strnum/-/strnum-1.0.5.tgz", + "integrity": "sha512-J8bbNyKKXl5qYcR36TIO8W3mVGVHrmmxsd5PAItGkmyzwJvybiw2IVq5nqd0i4LSNSkB/sx9VHllbfFdr9k1JA==" + }, + "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==", + "dev": true, + "peer": true, + "requires": {} + }, + "style-search": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/style-search/-/style-search-0.1.0.tgz", + "integrity": "sha512-Dj1Okke1C3uKKwQcetra4jSuk0DqbzbYtXipzFlFMZtowbF1x7BKJwB9AayVMyFARvU8EDrZdcax4At/452cAg==", + "dev": true, + "peer": true + }, + "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==", + "requires": { + "inline-style-parser": "0.1.1" + } + }, + "stylelint": { + "version": "14.13.0", + "resolved": "https://registry.npmjs.org/stylelint/-/stylelint-14.13.0.tgz", + "integrity": "sha512-NJSAdloiAB/jgVJKxMR90mWlctvmeBFGFVUvyKngi9+j/qPSJ5ZB+u8jOmGbLTnS7OHrII9NFGehPRyar8U5vg==", + "dev": true, + "peer": true, + "requires": { + "@csstools/selector-specificity": "^2.0.2", + "balanced-match": "^2.0.0", + "colord": "^2.9.3", + "cosmiconfig": "^7.0.1", + "css-functions-list": "^3.1.0", + "debug": "^4.3.4", + "fast-glob": "^3.2.12", + "fastest-levenshtein": "^1.0.16", + "file-entry-cache": "^6.0.1", + "global-modules": "^2.0.0", + "globby": "^11.1.0", + "globjoin": "^0.1.4", + "html-tags": "^3.2.0", + "ignore": "^5.2.0", + "import-lazy": "^4.0.0", + "imurmurhash": "^0.1.4", + "is-plain-object": "^5.0.0", + "known-css-properties": "^0.25.0", + "mathml-tag-names": "^2.1.3", + "meow": "^9.0.0", + "micromatch": "^4.0.5", + "normalize-path": "^3.0.0", + "picocolors": "^1.0.0", + "postcss": "^8.4.16", + "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.10", + "postcss-value-parser": "^4.2.0", + "resolve-from": "^5.0.0", + "string-width": "^4.2.3", + "strip-ansi": "^6.0.1", + "style-search": "^0.1.0", + "supports-hyperlinks": "^2.3.0", + "svg-tags": "^1.0.0", + "table": "^6.8.0", + "v8-compile-cache": "^2.3.0", + "write-file-atomic": "^4.0.2" + }, + "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 + } + } + }, + "stylelint-config-html": { + "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, + "requires": {} + }, + "stylelint-config-recommended": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/stylelint-config-recommended/-/stylelint-config-recommended-8.0.0.tgz", + "integrity": "sha512-IK6dWvE000+xBv9jbnHOnBq01gt6HGVB2ZTsot+QsMpe82doDQ9hvplxfv4YnpEuUwVGGd9y6nbaAnhrjcxhZQ==", + "dev": true, + "peer": true, + "requires": {} + }, + "stylelint-config-recommended-scss": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/stylelint-config-recommended-scss/-/stylelint-config-recommended-scss-7.0.0.tgz", + "integrity": "sha512-rGz1J4rMAyJkvoJW4hZasuQBB7y9KIrShb20l9DVEKKZSEi1HAy0vuNlR8HyCKy/jveb/BdaQFcoiYnmx4HoiA==", + "dev": true, + "peer": true, + "requires": { + "postcss-scss": "^4.0.2", + "stylelint-config-recommended": "^8.0.0", + "stylelint-scss": "^4.0.0" + } + }, + "stylelint-config-recommended-vue": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/stylelint-config-recommended-vue/-/stylelint-config-recommended-vue-1.4.0.tgz", + "integrity": "sha512-DVJqyX2KvMCn9U0+keL12r7xlsH26K4Vg8NrIZuq5MoF7g82DpMp326Om4E0Q+Il1o+bTHuUyejf2XAI0iD04Q==", + "dev": true, + "peer": true, + "requires": { + "semver": "^7.3.5", + "stylelint-config-html": ">=1.0.0", + "stylelint-config-recommended": ">=6.0.0" + }, + "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==", + "dev": true, + "peer": true, + "requires": { + "yallist": "^4.0.0" + } + }, + "semver": { + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "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 + } + } + }, + "stylelint-scss": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/stylelint-scss/-/stylelint-scss-4.3.0.tgz", + "integrity": "sha512-GvSaKCA3tipzZHoz+nNO7S02ZqOsdBzMiCx9poSmLlb3tdJlGddEX/8QzCOD8O7GQan9bjsvLMsO5xiw6IhhIQ==", + "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.3.0", + "resolved": "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-2.3.0.tgz", + "integrity": "sha512-RpsAZlpWcDwOPQA22aCH4J0t7L8JmAvsCxfOSEwm7cQs3LshN36QaTkwd70DnBOXDWGssw2eUoc8CaRWT0XunA==", + "dev": true, + "peer": 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, + "peer": 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, + "peer": true, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, + "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 + }, + "svg-tags": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/svg-tags/-/svg-tags-1.0.0.tgz", + "integrity": "sha512-ovssysQTa+luh7A5Weu3Rta6FJlFBBbInjOh722LIt6klpU2/HtdUbszju/G4devcvk8PGt7FCLv5wftu3THUA==", + "dev": true, + "peer": 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 + }, + "tabbable": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/tabbable/-/tabbable-6.2.0.tgz", + "integrity": "sha512-Cat63mxsVJlzYvN51JmVXIgNoUokrIaT2zLclCXjRd8boZ0004U4KCs/sToJ75C6sdlByWxpYnb5Boif1VSFew==" + }, + "table": { + "version": "6.8.0", + "resolved": "https://registry.npmjs.org/table/-/table-6.8.0.tgz", + "integrity": "sha512-s/fitrbVeEyHKFa7mFdkuQMWlH1Wgw/yEXMt5xACT4ZpzWFluehAxRtUUQKPuWhaLAWhFcVx6w3oC8VKaUfPGA==", + "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.11.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.11.0.tgz", + "integrity": "sha512-wGgprdCvMalC0BztXvitD2hC04YffAvtsUn93JbGXYLAtCUO4xd17mCCZQxUOItiBwZvJScWo8NIvQMQ71rdpg==", + "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 + }, + "terser": { + "version": "5.15.1", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.15.1.tgz", + "integrity": "sha512-K1faMUvpm/FBxjBXud0LWVAGxmvoPbZbfTCYbSgaaYQaIXI3/TdI7a7ZGA73Zrou6Q8Zmz3oeUTsp/dj+ag2Xw==", + "peer": true, + "requires": { + "@jridgewell/source-map": "^0.3.2", + "acorn": "^8.5.0", + "commander": "^2.20.0", + "source-map-support": "~0.5.20" + }, + "dependencies": { + "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==", + "peer": true, + "requires": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + } + } + }, + "terser-webpack-plugin": { + "version": "5.3.6", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.6.tgz", + "integrity": "sha512-kfLFk+PoLUQIbLmB1+PZDMRSZS99Mp+/MHqDNmMA6tOItzRt+Npe3E+fsMs5mfcM0wCtrrdU387UnV+vnSffXQ==", + "peer": true, + "requires": { + "@jridgewell/trace-mapping": "^0.3.14", + "jest-worker": "^27.4.5", + "schema-utils": "^3.1.1", + "serialize-javascript": "^6.0.0", + "terser": "^5.14.1" + }, + "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==", + "peer": true + }, + "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==", + "peer": true, + "requires": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.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==", + "peer": true, + "requires": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + } + }, + "supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "peer": true, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, + "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": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", + "dev": true, + "peer": 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==", + "requires": { + "setimmediate": "^1.0.4" + } + }, + "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": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", + "dev": true + }, + "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" + } + }, + "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.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, + "requires": { + "psl": "^1.1.33", + "punycode": "^2.1.1", + "universalify": "^0.2.0", + "url-parse": "^1.5.3" + } + }, + "tr46": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-3.0.0.tgz", + "integrity": "sha512-l7FvfAHlcmulp8kr+flpQZmVwtu7nfRV7NZujtN0OqES8EL4O4e0qqzL0DC5gAvx/ZC/9lk6rhcUwYvkBnBnYA==", + "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-lines": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/trim-lines/-/trim-lines-3.0.1.tgz", + "integrity": "sha512-kRj8B+YHZCc9kQYdWfJB2/oUl9rA99qbowYYBtr4ui4mZyAQ2JpvVBd/6U2YloATfqBhBTSMhTpgBHtU0Mf3Rg==" + }, + "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 + }, + "trough": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/trough/-/trough-2.1.0.tgz", + "integrity": "sha512-AqTiAOLcj85xS7vQ8QkAV41hPDIJ71XJB4RCUrzo/1GM2CQwhkJGaf9Hgr7BOugMRpgGUrqRg/DrBDl4H40+8g==" + }, + "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": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", + "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": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==", + "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==", + "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.2", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", + "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", + "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": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", + "dev": true, + "peer": true + } + } + }, + "tsutils": { + "version": "3.21.0", + "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz", + "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==", + "dev": true, + "peer": true, + "requires": { + "tslib": "^1.8.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true, + "peer": true + } + } + }, + "tty-browserify": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.1.tgz", + "integrity": "sha512-C3TaO7K81YvjCgQH9Q1S3R3P3BtN3RIM8n+OvX4il1K1zgE8ZhI0op7kClgkxtutIE8hQrcrHBXvIheqKUUCxw==" + }, + "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, + "requires": { + "prelude-ls": "^1.2.1" + } + }, + "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 + }, + "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 + }, + "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, + "requires": { + "media-typer": "0.3.0", + "mime-types": "~2.1.24" + } + }, + "typescript": { + "version": "4.9.4", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.4.tgz", + "integrity": "sha512-Uz+dTXYzxXXbsFpM86Wh3dKCxrQqUcVMxwU54orwlJjOpO3ao8L7j5lH+dWfTwgCwIuM9GQ2kvVotzYJMXTBZg==", + "dev": true, + "peer": true + }, + "unbox-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", + "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", + "requires": { + "call-bind": "^1.0.2", + "has-bigints": "^1.0.2", + "has-symbols": "^1.0.3", + "which-boxed-primitive": "^1.0.2" + } + }, + "unicode-canonical-property-names-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz", + "integrity": "sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==", + "dev": true + }, + "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, + "requires": { + "unicode-canonical-property-names-ecmascript": "^2.0.0", + "unicode-property-aliases-ecmascript": "^2.0.0" + } + }, + "unicode-match-property-value-ecmascript": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.1.0.tgz", + "integrity": "sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA==", + "dev": true + }, + "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 + }, + "unified": { + "version": "10.1.2", + "resolved": "https://registry.npmjs.org/unified/-/unified-10.1.2.tgz", + "integrity": "sha512-pUSWAi/RAnVy1Pif2kAoeWNBa3JVrx0MId2LASj8G+7AiHWoKZNTomq6LG326T68U7/e263X6fTdcXIy7XnF7Q==", + "requires": { + "@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" + }, + "dependencies": { + "is-buffer": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz", + "integrity": "sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==" + }, + "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==" + } + } + }, + "unist-builder": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/unist-builder/-/unist-builder-3.0.1.tgz", + "integrity": "sha512-gnpOw7DIpCA0vpr6NqdPvTWnlPTApCTRzr+38E6hCWx3rz/cjo83SsKIlS1Z+L5ttScQ2AwutNnb8+tAvpb6qQ==", + "requires": { + "@types/unist": "^2.0.0" + } + }, + "unist-util-generated": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/unist-util-generated/-/unist-util-generated-2.0.1.tgz", + "integrity": "sha512-qF72kLmPxAw0oN2fwpWIqbXAVyEqUzDHMsbtPvOudIlUzXYFIeQIuxXQCRCFh22B7cixvU0MG7m3MW8FTq/S+A==" + }, + "unist-util-is": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-5.2.1.tgz", + "integrity": "sha512-u9njyyfEh43npf1M+yGKDGVPbY/JWEemg5nH05ncKPfi+kBbKBJoTdsogMu33uhytuLlv9y0O7GH7fEdwLdLQw==", + "requires": { + "@types/unist": "^2.0.0" + } + }, + "unist-util-position": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/unist-util-position/-/unist-util-position-4.0.4.tgz", + "integrity": "sha512-kUBE91efOWfIVBo8xzh/uZQ7p9ffYRtUbMRZBNFYwf0RK8koUMx6dGUfwylLOKmaT2cs4wSW96QoYUSXAyEtpg==", + "requires": { + "@types/unist": "^2.0.0" + } + }, + "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==", + "requires": { + "@types/unist": "^2.0.0" + } + }, + "unist-util-visit": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-4.1.2.tgz", + "integrity": "sha512-MSd8OUGISqHdVvfY9TPhyK2VdUrPgxkUtWSuMHF6XAAFuL4LokseigBnZtPnJMu+FbynTkFNnFlyjxpVKujMRg==", + "requires": { + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0", + "unist-util-visit-parents": "^5.1.1" + } + }, + "unist-util-visit-parents": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-5.1.3.tgz", + "integrity": "sha512-x6+y8g7wWMyQhL1iZfhIPhDAs7Xwbn9nRosDXl7qoPTSCy0yNxnKc+hWokFifWQIDGi154rdUqKvbCa4+1kLhg==", + "requires": { + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0" + } + }, + "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 + }, + "unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", + "dev": true, + "peer": true + }, + "update-browserslist-db": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.11.tgz", + "integrity": "sha512-dCwEFf0/oT85M1fHBg4F0jtLwJrutGoHSQXCh7u4o2t1drG+c0a9Flnqww6XUKSfQMPpJBRjU8d4RXB09qtvaA==", + "requires": { + "escalade": "^3.1.1", + "picocolors": "^1.0.0" + } + }, + "uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "requires": { + "punycode": "^2.1.0" + } + }, + "url": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", + "integrity": "sha512-kbailJa29QrtXnxgq+DdCEGlbTeYM2eJUxsz6vjZavrCYPMIFHMKQmSKYAIuUK2i7hgPm28a8piX5NTUtM/LKQ==", + "requires": { + "punycode": "1.3.2", + "querystring": "0.2.0" + }, + "dependencies": { + "punycode": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", + "integrity": "sha512-RofWgt/7fL5wP1Y7fxE7/EmTLzQVnB0ycyibJ0OOHIlJqTNzglYFxVwETOcIoJqJmpDXJ9xImDv+Fq34F/d4Dw==" + } + } + }, + "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==" + }, + "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==", + "requires": { + "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==", + "requires": { + "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": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" + }, + "utils-merge": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", + "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==", + "dev": true, + "peer": true + }, + "uuid": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.0.tgz", + "integrity": "sha512-MXcSTerfPa4uqyzStbRoTgt5XIe3x5+42+q1sDuy3R5MDk66URdLMOZe5aPX/SQd+kuYAh0FdP/pO28IkQyTeg==" + }, + "uvu": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/uvu/-/uvu-0.5.6.tgz", + "integrity": "sha512-+g8ENReyr8YsOc6fv/NVJs2vFdHBnBNdfE49rshrTzDWOlUx4Gq7KOS2GD8eqhy2j+Ejq29+SbKH8yjkAqXqoA==", + "requires": { + "dequal": "^2.0.0", + "diff": "^5.0.0", + "kleur": "^4.0.3", + "sade": "^1.7.3" + }, + "dependencies": { + "kleur": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/kleur/-/kleur-4.1.5.tgz", + "integrity": "sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==" + } + } + }, + "v-click-outside": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/v-click-outside/-/v-click-outside-3.2.0.tgz", + "integrity": "sha512-QD0bDy38SHJXQBjgnllmkI/rbdiwmq9RC+/+pvrFjYJKTn8dtp7Penf9q1lLBta280fYG2q53mgLhQ+3l3z74w==" + }, + "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": { + "@babel/runtime": "^7.13.10", + "lodash": "^4.17.21", + "popper.js": "^1.16.1", + "vue-resize": "^1.0.1" + } + }, + "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": "9.1.0", + "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-9.1.0.tgz", + "integrity": "sha512-6z3GW9x8G1gd+JIIgQQQxXuiJtCXeAjp6RaPEPLv62mH3iPHPxV6W3robxtCzNErRo6ZwTmzWhsbNvjyEBKzKA==", + "dev": true, + "requires": { + "@jridgewell/trace-mapping": "^0.3.12", + "@types/istanbul-lib-coverage": "^2.0.1", + "convert-source-map": "^1.6.0" + } + }, + "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": { + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" + } + }, + "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, + "peer": true + }, + "vfile": { + "version": "5.3.7", + "resolved": "https://registry.npmjs.org/vfile/-/vfile-5.3.7.tgz", + "integrity": "sha512-r7qlzkgErKjobAmyNIkkSpizsFPYiUPuJb5pNW1RB4JcYVZhs4lIbVqk8XPk033CV/1z8ss5pkax8SuhGpcG8g==", + "requires": { + "@types/unist": "^2.0.0", + "is-buffer": "^2.0.0", + "unist-util-stringify-position": "^3.0.0", + "vfile-message": "^3.0.0" + }, + "dependencies": { + "is-buffer": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz", + "integrity": "sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==" + } + } + }, + "vfile-message": { + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-3.1.4.tgz", + "integrity": "sha512-fa0Z6P8HUrQN4BZaX05SIVXic+7kE3b05PWAtPuYP9QLHsLKYR7/AlLW3NtOrpXRLeawpDLMsVkmk5DG0NXgWw==", + "requires": { + "@types/unist": "^2.0.0", + "unist-util-stringify-position": "^3.0.0" + } + }, + "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==" + }, + "vue": { + "version": "2.7.14", + "resolved": "https://registry.npmjs.org/vue/-/vue-2.7.14.tgz", + "integrity": "sha512-b2qkFyOM0kwqWFuQmgd4o+uHGU7T+2z3T+WQp8UBjADfEv2n4FEMffzBmCKNP0IGzOEEfYjvtcC62xaSKeQDrQ==", + "requires": { + "@vue/compiler-sfc": "2.7.14", + "csstype": "^3.1.0" + } + }, + "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-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": { + "clamp": "^1.0.1", + "lodash.throttle": "^4.0.0", + "material-colors": "^1.0.0", + "tinycolor2": "^1.1.2" + } + }, + "vue-eslint-parser": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/vue-eslint-parser/-/vue-eslint-parser-9.1.0.tgz", + "integrity": "sha512-NGn/iQy8/Wb7RrRa4aRkokyCZfOUWk19OP5HP6JEozQFX5AoS/t+Z0ZN7FY4LlmWc4FNI922V7cvX28zctN8dQ==", + "dev": true, + "peer": true, + "requires": { + "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.6" + }, + "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.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "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 + } + } + }, + "vue-frag": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/vue-frag/-/vue-frag-1.4.3.tgz", + "integrity": "sha512-pQZj03f/j9LRhzz9vKaXTCXUHVYHuAXicshFv76VFqwz4MG3bcb+sPZMAbd0wmw7THjkrTPuoM0EG9TbG8CgMQ==", + "requires": {} + }, + "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-loader": { + "version": "15.10.0", + "resolved": "https://registry.npmjs.org/vue-loader/-/vue-loader-15.10.0.tgz", + "integrity": "sha512-VU6tuO8eKajrFeBzMssFUP9SvakEeeSi1BxdTH5o3+1yUyrldp8IERkSdXlMI2t4kxF2sqYUDsQY+WJBxzBmZg==", + "dev": true, + "peer": true, + "requires": { + "@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" + }, + "dependencies": { + "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, + "requires": { + "minimist": "^1.2.0" + } + }, + "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": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^1.0.1" + } + } + } + }, + "vue-material-design-icons": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/vue-material-design-icons/-/vue-material-design-icons-5.2.0.tgz", + "integrity": "sha512-fcdcJHQ9fQw2CAytuLAzWSELcxH138sCdMItVhvmO7Lu9afIgojB/UCWv7XHt/lURsnq/n6O+muM4AQgw8yfig==" + }, + "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==" + }, + "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==" + }, + "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": { + "@babel/runtime": "^7.13.10" + } + }, + "vue-router": { + "version": "3.6.5", + "resolved": "https://registry.npmjs.org/vue-router/-/vue-router-3.6.5.tgz", + "integrity": "sha512-VYXZQLtjuvKxxcshuRAwjHnciqZVoXAjTjcqBTz4rKc8qih9g9pI3hbDjmqXaHdgL3v8pV6P8Z335XvHzESxLQ==" + }, + "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": { + "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==", + "dev": true, + "peer": true, + "requires": { + "hash-sum": "^1.0.2", + "loader-utils": "^1.0.2" + }, + "dependencies": { + "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, + "requires": { + "minimist": "^1.2.0" + } + }, + "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": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^1.0.1" + } + } + } + }, + "vue-template-compiler": { + "version": "2.7.14", + "resolved": "https://registry.npmjs.org/vue-template-compiler/-/vue-template-compiler-2.7.14.tgz", + "integrity": "sha512-zyA5Y3ArvVG0NacJDkkzJuPQDF8RFeRlzV2vLeSnhSpieO6LK2OVbdLPi5MPPs09Ii+gMO8nY4S3iKQxBxDmWQ==", + "dev": true, + "requires": { + "de-indent": "^1.0.2", + "he": "^1.2.0" + } + }, + "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.11.0", + "resolved": "https://registry.npmjs.org/vue2-datepicker/-/vue2-datepicker-3.11.0.tgz", + "integrity": "sha512-zbMkAjYwDTXZozZtkpSwqxq7nEeBt7zoHL+oQcdjEXAqzJHhmatE6sl6JSr58PMIx2WOK0c6QBXozSqT32iQAQ==", + "requires": { + "date-format-parse": "^0.2.7" + } + }, + "vuedraggable": { + "version": "2.24.3", + "resolved": "https://registry.npmjs.org/vuedraggable/-/vuedraggable-2.24.3.tgz", + "integrity": "sha512-6/HDXi92GzB+Hcs9fC6PAAozK1RLt1ewPTLjK0anTYguXLAeySDmcnqE8IC0xa7shvSzRjQXq3/+dsZ7ETGF3g==", + "requires": { + "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-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": "^4.0.0" + } + }, + "walker": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz", + "integrity": "sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==", + "dev": true, + "requires": { + "makeerror": "1.0.12" + } + }, + "watchpack": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz", + "integrity": "sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==", + "peer": true, + "requires": { + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.1.2" + } + }, + "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, + "requires": { + "minimalistic-assert": "^1.0.0" + } + }, + "web-namespaces": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/web-namespaces/-/web-namespaces-2.0.1.tgz", + "integrity": "sha512-bKr1DkiNa2krS7qxNtdrtHAmzuYGFQLiQ13TsorsdT6ULTkPLKuu5+GsFpDlg6JFjUTwX2DyhMPG2be8uPrqsQ==" + }, + "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==", + "optional": true + }, + "webdav": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/webdav/-/webdav-5.3.0.tgz", + "integrity": "sha512-xRu/URZGCxDPXmT+9Gu6tNGvlETBwjcuz69lx/6Qlq/0q3Gu2GSVyRt+mP0vTlLFfaY3xZ5O/SPTQ578tC/45Q==", + "requires": { + "@buttercup/fetch": "^0.1.1", + "base-64": "^1.0.0", + "byte-length": "^1.0.2", + "fast-xml-parser": "^4.2.4", + "he": "^1.2.0", + "hot-patcher": "^2.0.0", + "layerr": "^2.0.1", + "md5": "^2.3.0", + "minimatch": "^7.4.6", + "nested-property": "^4.0.0", + "path-posix": "^1.0.0", + "url-join": "^5.0.0", + "url-parse": "^1.5.10" + }, + "dependencies": { + "brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "requires": { + "balanced-match": "^1.0.0" + } + }, + "minimatch": { + "version": "7.4.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-7.4.6.tgz", + "integrity": "sha512-sBz8G/YjVniEz6lKPNpKxXwazJe4c19fEfV2GDMX6AjFz+MX9uDWIZW8XreVhkFW3fkIdTv/gxWr/Kks5FFAVw==", + "requires": { + "brace-expansion": "^2.0.1" + } + } + } + }, + "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 + }, + "webpack": { + "version": "5.76.1", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.76.1.tgz", + "integrity": "sha512-4+YIK4Abzv8172/SGqObnUjaIHjLEuUasz9EwQj/9xmPPkYJy2Mh03Q/lJfSD3YLzbxy5FeTq5Uw0323Oh6SJQ==", + "peer": true, + "requires": { + "@types/eslint-scope": "^3.7.3", + "@types/estree": "^0.0.51", + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/wasm-edit": "1.11.1", + "@webassemblyjs/wasm-parser": "1.11.1", + "acorn": "^8.7.1", + "acorn-import-assertions": "^1.7.6", + "browserslist": "^4.14.5", + "chrome-trace-event": "^1.0.2", + "enhanced-resolve": "^5.10.0", + "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-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", + "tapable": "^2.1.1", + "terser-webpack-plugin": "^5.1.3", + "watchpack": "^2.4.0", + "webpack-sources": "^3.2.3" + }, + "dependencies": { + "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" + } + } + } + }, + "webpack-cli": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-5.0.1.tgz", + "integrity": "sha512-S3KVAyfwUqr0Mo/ur3NzIp6jnerNpo7GUO6so51mxLi1spqsA17YcMXy0WOIJtBSnj748lthxC6XLbNKh/ZC+A==", + "dev": true, + "peer": true, + "requires": { + "@discoveryjs/json-ext": "^0.5.0", + "@webpack-cli/configtest": "^2.0.1", + "@webpack-cli/info": "^2.0.1", + "@webpack-cli/serve": "^2.0.1", + "colorette": "^2.0.14", + "commander": "^9.4.1", + "cross-spawn": "^7.0.3", + "envinfo": "^7.7.3", + "fastest-levenshtein": "^1.0.12", + "import-local": "^3.0.2", + "interpret": "^3.1.1", + "rechoir": "^0.8.0", + "webpack-merge": "^5.7.3" + }, + "dependencies": { + "commander": { + "version": "9.5.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-9.5.0.tgz", + "integrity": "sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ==", + "dev": true, + "peer": true + } + } + }, + "webpack-dev-middleware": { + "version": "5.3.3", + "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-5.3.3.tgz", + "integrity": "sha512-hj5CYrY0bZLB+eTO+x/j67Pkrquiy7kWepMHmUMoPsmcUaeEnQJqFzHJOyxgWlq746/wUuA64p9ta34Kyb01pA==", + "dev": true, + "peer": true, + "requires": { + "colorette": "^2.0.10", + "memfs": "^3.4.3", + "mime-types": "^2.1.31", + "range-parser": "^1.2.1", + "schema-utils": "^4.0.0" + } + }, + "webpack-dev-server": { + "version": "4.11.1", + "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-4.11.1.tgz", + "integrity": "sha512-lILVz9tAUy1zGFwieuaQtYiadImb5M3d+H+L1zDYalYoDl0cksAB1UNyuE5MMWJrG6zR1tXkCP2fitl7yoUJiw==", + "dev": true, + "peer": true, + "requires": { + "@types/bonjour": "^3.5.9", + "@types/connect-history-api-fallback": "^1.3.5", + "@types/express": "^4.17.13", + "@types/serve-index": "^1.9.1", + "@types/serve-static": "^1.13.10", + "@types/sockjs": "^0.3.33", + "@types/ws": "^8.5.1", + "ansi-html-community": "^0.0.8", + "bonjour-service": "^1.0.11", + "chokidar": "^3.5.3", + "colorette": "^2.0.10", + "compression": "^1.7.4", + "connect-history-api-fallback": "^2.0.0", + "default-gateway": "^6.0.3", + "express": "^4.17.3", + "graceful-fs": "^4.2.6", + "html-entities": "^2.3.2", + "http-proxy-middleware": "^2.0.3", + "ipaddr.js": "^2.0.1", + "open": "^8.0.9", + "p-retry": "^4.5.0", + "rimraf": "^3.0.2", + "schema-utils": "^4.0.0", + "selfsigned": "^2.1.1", + "serve-index": "^1.9.1", + "sockjs": "^0.3.24", + "spdy": "^4.0.2", + "webpack-dev-middleware": "^5.3.1", + "ws": "^8.4.2" + } + }, + "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": { + "clone-deep": "^4.0.1", + "wildcard": "^2.0.0" + } + }, + "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 + }, + "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, + "requires": { + "http-parser-js": ">=0.5.1", + "safe-buffer": ">=5.1.0", + "websocket-extensions": ">=0.1.1" + } + }, + "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 + }, + "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.6.3" + }, + "dependencies": { + "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, + "requires": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + } + } + } + }, + "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 + }, + "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": { + "tr46": "^3.0.0", + "webidl-conversions": "^7.0.0" + } + }, + "which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "requires": { + "isexe": "^2.0.0" + } + }, + "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==", + "requires": { + "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" + } + }, + "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==", + "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-typed-array": "^1.1.9" + } + }, + "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.4", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.4.tgz", + "integrity": "sha512-2V81OA4ugVo5pRo46hAoD2ivUJx8jXmWXfUkY4KFNw0hEptvN0QfH3K4nHiwzGeKl5rFKedV48QVoqYavy4YpA==", + "dev": true + }, + "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": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.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" + } + } + } + }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "dev": true + }, + "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": { + "imurmurhash": "^0.1.4", + "signal-exit": "^3.0.7" + } + }, + "ws": { + "version": "8.9.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.9.0.tgz", + "integrity": "sha512-Ja7nszREasGaYUYCI2k4lCKIRTt+y7XuqVoHR44YpI49TtryyqbqvDMn5eqfW7e6HzTukDRIsXqzVHScqRcafg==", + "dev": true, + "requires": {} + }, + "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 + }, + "xmlchars": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/xmlchars/-/xmlchars-2.2.0.tgz", + "integrity": "sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==", + "dev": true + }, + "xtend": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==" + }, + "y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "dev": true + }, + "yallist": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", + "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": "17.7.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.1.tgz", + "integrity": "sha512-cwiTb08Xuv5fqF4AovYacTFNxk62th7LKJ6BL9IGUpTJrWoU7/7WdQGTP2SjKf1dUNBGzDd28p/Yfs/GI6JrLw==", + "dev": true, + "requires": { + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.1.1" + }, + "dependencies": { + "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 + } + } + }, + "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, + "peer": true + }, + "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==" + } + } } diff --git a/package.json b/package.json index b25fc261ef..f5909e6eee 100644 --- a/package.json +++ b/package.json @@ -1,168 +1,151 @@ { - "name": "calendar", - "description": "A calendar app for Nextcloud. Easily sync events from various devices, share and edit them online.", - "version": "2.1.1", - "author": "Georg Ehrke ", - "contributors": [ - "Georg Ehrke ", - "Thomas Citharel " - ], - "keywords": [ - "nextcloud", - "calendars", - "vevent", - "caldav" - ], - "bugs": { - "url": "https://github.com/nextcloud/calendar/issues" - }, - "repository": { - "url": "https://github.com/nextcloud/calendar", - "type": "git" - }, - "homepage": "https://github.com/nextcloud/calendar", - "license": "agpl", - "private": true, - "scripts": { - "dev": "webpack --config webpack.dev.js", - "watch": "webpack --progress --watch --config webpack.dev.js", - "build": "webpack --progress --config webpack.prod.js", - "lint": "eslint --ext .js,.vue src", - "lint:fix": "eslint --ext .js,.vue src --fix", - "stylelint": "stylelint src css", - "stylelint:fix": "stylelint src css --fix", - "test": "jest", - "test:coverage": "jest --coverage" - }, - "dependencies": { - "@fullcalendar/core": "5.5.0", - "@fullcalendar/daygrid": "5.5.0", - "@fullcalendar/interaction": "5.5.0", - "@fullcalendar/list": "5.5.0", - "@fullcalendar/resource-timeline": "5.5.0", - "@fullcalendar/timegrid": "5.5.0", - "@fullcalendar/vue": "5.5.0", - "@nextcloud/auth": "^1.3.0", - "@nextcloud/axios": "^1.6.0", - "@nextcloud/dialogs": "^3.1.1", - "@nextcloud/event-bus": "^1.2.0", - "@nextcloud/initial-state": "^1.2.0", - "@nextcloud/l10n": "^1.4.1", - "@nextcloud/logger": "^1.1.2", - "@nextcloud/moment": "^1.1.1", - "@nextcloud/router": "^1.2.0", - "@nextcloud/vue": "^2.9.0", - "@nextcloud/vue-dashboard": "^1.0.1", - "autosize": "^4.0.2", - "calendar-js": "git+https://github.com/nextcloud/calendar-js.git", - "cdav-library": "github:nextcloud/cdav-library", - "closest-css-color": "^0.1.1", - "color-convert": "^2.0.1", - "core-js": "^3.9.0", - "css-color-names": "^1.0.1", - "debounce": "^1.2.0", - "jstz": "^2.1.1", - "linkifyjs": "^2.1.9", - "md5": "^2.3.0", - "p-limit": "^3.1.0", - "v-tooltip": "^2.1.2", - "vue": "^2.6.12", - "vue-click-outside": "^1.1.0", - "vue-clipboard2": "^0.3.1", - "vue-router": "^3.5.1", - "vue-shortkey": "^3.1.7", - "vuedraggable": "^2.24.3", - "vuex": "^3.6.2", - "vuex-router-sync": "^5.0.0" - }, - "browserslist": [ - "extends @nextcloud/browserslist-config" - ], - "engines": { - "node": ">=10.0.0" - }, - "devDependencies": { - "@babel/core": "^7.12.17", - "@babel/plugin-syntax-dynamic-import": "^7.8.3", - "@babel/preset-env": "^7.12.17", - "@nextcloud/browserslist-config": "^1.0.0", - "@nextcloud/eslint-config": "^1.2.0", - "@nextcloud/eslint-plugin": "^1.5.0", - "@vue/test-utils": "^1.1.3", - "babel-core": "^7.0.0-bridge.0", - "babel-eslint": "^10.0.3", - "babel-jest": "^26.6.3", - "babel-loader": "^8.2.2", - "css-loader": "^3.6.0", - "eslint": "^5.16.0", - "eslint-config-standard": "^12.0.0", - "eslint-friendly-formatter": "^4.0.1", - "eslint-loader": "^3.0.3", - "eslint-plugin-import": "^2.22.1", - "eslint-plugin-node": "^11.1.0", - "eslint-plugin-promise": "^4.3.1", - "eslint-plugin-standard": "^4.1.0", - "eslint-plugin-vue": "^5.2.3", - "file-loader": "^6.2.0", - "iconfont-plugin-webpack": "^1.1.4", - "jest": "^26.6.3", - "jest-serializer-vue": "^2.0.2", - "node-sass": "^5.0.0", - "prettier-eslint": "^12.0.0", - "regenerator-runtime": "^0.13.7", - "resolve-url-loader": "^3.1.2", - "sass-loader": "^10.1.1", - "stylelint": "^13.10.0", - "stylelint-bare-webpack-plugin": "^2.1.0", - "stylelint-config-recommended-scss": "^4.2.0", - "stylelint-scss": "^3.19.0", - "stylelint-webpack-plugin": "^2.1.1", - "terser-webpack-plugin": "^4.2.3", - "url-loader": "^4.1.1", - "vue-jest": "^3.0.7", - "vue-loader": "^15.9.6", - "vue-template-compiler": "^2.6.12", - "webpack": "^4.46.0", - "webpack-cli": "^4.5.0", - "webpack-merge": "^5.7.3" - }, - "optionalDependencies": { - "fsevents": "^2.3.2" - }, - "jest": { - "moduleFileExtensions": [ - "js", - "vue" - ], - "moduleNameMapper": { - "^@/(.*)$": "/src/$1" - }, - "transform": { - ".*\\.js$": "/node_modules/babel-jest", - ".*\\.(vue)$": "/node_modules/vue-jest" - }, - "snapshotSerializers": [ - "/node_modules/jest-serializer-vue" - ], - "coverageDirectory": "./coverage/", - "collectCoverage": true, - "collectCoverageFrom": [ - "/src/**/*.{js,vue}", - "!**/node_modules/**" - ], - "coverageReporters": [ - "json", - "text", - "html", - "lcov", - "clover" - ], - "transformIgnorePatterns": [ - "/node_modules/(?!(calendar-js)|(@fullcalendar)).+\\.js$" - ], - "setupFilesAfterEnv": [ - "./tests/javascript/jest.setup.js", - "./tests/assets/loadAsset.js" - ] - } + "name": "calendar", + "description": "A calendar app for Nextcloud. Easily sync events from various devices, share and edit them online.", + "version": "4.6.0-alpha.1", + "author": "Georg Ehrke ", + "contributors": [ + "Georg Ehrke ", + "Thomas Citharel " + ], + "keywords": [ + "nextcloud", + "calendars", + "vevent", + "caldav" + ], + "bugs": { + "url": "https://github.com/nextcloud/calendar/issues" + }, + "repository": { + "url": "https://github.com/nextcloud/calendar", + "type": "git" + }, + "homepage": "https://github.com/nextcloud/calendar", + "license": "agpl", + "private": true, + "scripts": { + "build": "webpack --node-env production --progress", + "dev": "webpack --node-env development --progress", + "watch": "webpack --node-env development --progress --watch", + "lint": "eslint --ext .js,.vue src", + "lint:fix": "eslint --ext .js,.vue src --fix", + "stylelint": "stylelint src css", + "stylelint:fix": "stylelint src css --fix", + "test": "jest", + "test:watch": "jest --watch", + "test:coverage": "jest --coverage" + }, + "dependencies": { + "@fullcalendar/core": "6.1.8", + "@fullcalendar/daygrid": "6.1.8", + "@fullcalendar/interaction": "6.1.8", + "@fullcalendar/list": "6.1.8", + "@fullcalendar/multimonth": "6.1.8", + "@fullcalendar/resource": "6.1.8", + "@fullcalendar/resource-timeline": "6.1.8", + "@fullcalendar/timegrid": "6.1.8", + "@fullcalendar/vue": "6.1.8", + "@nextcloud/auth": "^2.1.0", + "@nextcloud/axios": "^2.4.0", + "@nextcloud/calendar-availability-vue": "^1.0.0", + "@nextcloud/calendar-js": "^6.0.1", + "@nextcloud/cdav-library": "^1.1.0", + "@nextcloud/dialogs": "^4.2.0", + "@nextcloud/event-bus": "^3.1.0", + "@nextcloud/initial-state": "^2.1.0", + "@nextcloud/l10n": "^2.2.0", + "@nextcloud/logger": "^2.5.0", + "@nextcloud/moment": "^1.2.1", + "@nextcloud/router": "^2.1.2", + "@nextcloud/vue": "^7.12.4", + "@nextcloud/vue-dashboard": "^2.0.1", + "autosize": "^6.0.1", + "color-convert": "^2.0.1", + "color-string": "^1.9.1", + "core-js": "^3.32.2", + "css-color-names": "^1.0.1", + "debounce": "^1.2.1", + "jstz": "^2.1.1", + "linkifyjs": "^4.1.1", + "lodash": "^4.17.21", + "md5": "^2.3.0", + "p-limit": "^4.0.0", + "v-tooltip": "^2.1.3", + "vue": "^2.7.14", + "vue-click-outside": "^1.1.0", + "vue-material-design-icons": "^5.2.0", + "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.3.0" + }, + "browserslist": [ + "extends @nextcloud/browserslist-config" + ], + "engines": { + "node": "^16.0.0", + "npm": "^7.0.0 || ^8.0.0" + }, + "devDependencies": { + "@babel/core": "^7.22.1", + "@babel/preset-env": "^7.22.4", + "@nextcloud/babel-config": "^1.0.0", + "@nextcloud/browserslist-config": "^2.3.0", + "@nextcloud/eslint-config": "^8.2.1", + "@nextcloud/stylelint-config": "^2.3.0", + "@nextcloud/webpack-vue-config": "^5.5.1", + "@vue/test-utils": "^1.3.5", + "@vue/vue2-jest": "^29.2.4", + "babel-jest": "^29.5.0", + "babel-loader-exclude-node-modules-except": "^1.2.1", + "ical.js": "^1.5.0", + "jest": "^29.5.0", + "jest-environment-jsdom": "^29.5.0", + "jest-serializer-vue": "^3.1.0", + "resolve-url-loader": "^5.0.0", + "vue-template-compiler": "^2.7.14" + }, + "optionalDependencies": { + "fsevents": "^2.3.3" + }, + "jest": { + "moduleFileExtensions": [ + "js", + "vue" + ], + "moduleNameMapper": { + "^@/(.*)$": "/src/$1", + "^ical.js": "/node_modules/ical.js" + }, + "transform": { + ".*\\.js$": "/node_modules/babel-jest", + ".*\\.(vue)$": "/node_modules/@vue/vue2-jest" + }, + "snapshotSerializers": [ + "/node_modules/jest-serializer-vue" + ], + "coverageDirectory": "./coverage/", + "collectCoverage": true, + "collectCoverageFrom": [ + "/src/**/*.{js,vue}", + "!**/node_modules/**" + ], + "coverageReporters": [ + "json", + "text", + "html", + "lcov", + "clover" + ], + "transformIgnorePatterns": [ + "/node_modules/(?!(@fullcalendar|uuid)).+\\.js$" + ], + "setupFilesAfterEnv": [ + "./tests/javascript/jest.setup.js", + "./tests/assets/loadAsset.js" + ], + "testEnvironment": "jsdom" + } } diff --git a/phpunit.integration.xml b/phpunit.integration.xml new file mode 100644 index 0000000000..2be4a7bcbe --- /dev/null +++ b/phpunit.integration.xml @@ -0,0 +1,37 @@ + + + + + + ../lib + + + + + + + ./tests/php/integration + + diff --git a/psalm.xml b/psalm.xml new file mode 100644 index 0000000000..7f70f8020a --- /dev/null +++ b/psalm.xml @@ -0,0 +1,52 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/renovate.json b/renovate.json new file mode 100644 index 0000000000..a19f8d7099 --- /dev/null +++ b/renovate.json @@ -0,0 +1,134 @@ +{ + "$schema": "https://docs.renovatebot.com/renovate-schema.json", + "extends": [ + "config:base", + "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", + "stable4.4", + "stable4.3" + ], + "enabledManagers": [ + "composer", + "github-actions", + "npm" + ], + "ignoreDeps": [ + "node", + "npm", + "php", + "postcss-loader" + ], + "packageRules": [ + { + "description": "Request JavaScript reviews", + "matchManagers": ["npm"], + "reviewers": [ + "GretaD", + "st3iny" + ] + }, + { + "description": "Request PHP reviews", + "matchManagers": ["composer"], + "reviewers": [ + "ChristophWurst", + "st3iny" + ] + }, + { + "description": "Bump Github actions monthly and request reviews", + "matchManagers": ["github-actions"], + "extends": ["schedule:monthly"], + "reviewers": [ + "miaulalala", + "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/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/public_sharing.png b/screenshots/public_sharing.png deleted file mode 100644 index f49d35f2ea..0000000000 Binary files a/screenshots/public_sharing.png and /dev/null differ diff --git a/screenshots/sidebar.png b/screenshots/sidebar.png deleted file mode 100644 index 86a391950f..0000000000 Binary files a/screenshots/sidebar.png and /dev/null differ diff --git a/screenshots/sidebar_attendees.png b/screenshots/sidebar_attendees.png deleted file mode 100644 index 27d9c23cf2..0000000000 Binary files a/screenshots/sidebar_attendees.png and /dev/null differ diff --git a/screenshots/sidebar_reminders.png b/screenshots/sidebar_reminders.png deleted file mode 100644 index 2aad3daf5f..0000000000 Binary files a/screenshots/sidebar_reminders.png and /dev/null differ diff --git a/screenshots/view_week.png b/screenshots/view_week.png deleted file mode 100644 index 9516ee179e..0000000000 Binary files a/screenshots/view_week.png and /dev/null differ diff --git a/screenshots/week_new_event.png b/screenshots/week_new_event.png new file mode 100644 index 0000000000..726434b823 Binary files /dev/null and b/screenshots/week_new_event.png differ diff --git a/screenshots/week_room_suggestion.png b/screenshots/week_room_suggestion.png new file mode 100644 index 0000000000..1fcb4a6a7c Binary files /dev/null and b/screenshots/week_room_suggestion.png differ diff --git a/screenshots/week_sidebar.png b/screenshots/week_sidebar.png new file mode 100644 index 0000000000..5b2d5013fc Binary files /dev/null and b/screenshots/week_sidebar.png differ diff --git a/src/App.vue b/src/App.vue index bb03f5880d..8fbdf90397 100644 --- a/src/App.vue +++ b/src/App.vue @@ -2,7 +2,7 @@ - @copyright Copyright (c) 2019 Georg Ehrke - @author Georg Ehrke - - - @license GNU AGPL version 3 or any later version + - @license AGPL-3.0-or-later - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU Affero General Public License as diff --git a/src/appointments/main-booking.js b/src/appointments/main-booking.js new file mode 100644 index 0000000000..59719392d4 --- /dev/null +++ b/src/appointments/main-booking.js @@ -0,0 +1,61 @@ +/** + * @copyright 2021 Christoph Wurst + * + * @author 2021 Christoph Wurst + * + * @license AGPL-3.0-or-later + * + * 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 . + * + */ + +import { getRequestToken } from '@nextcloud/auth' +import { loadState } from '@nextcloud/initial-state' +import { linkTo } from '@nextcloud/router' +import { translate, translatePlural } from '@nextcloud/l10n' +import Vue from 'vue' + +import Booking from '../views/Appointments/Booking.vue' + +// CSP config for webpack dynamic chunk loading +// eslint-disable-next-line +__webpack_nonce__ = btoa(getRequestToken()) + +// Correct the root of the app for chunk loading +// OC.linkTo matches the apps folders +// OC.generateUrl ensure the index.php (or not) +// We do not want the index.php since we're loading files +// eslint-disable-next-line +__webpack_public_path__ = linkTo('calendar', 'js/') + +Vue.prototype.$t = translate +Vue.prototype.$n = translatePlural + +const config = loadState('calendar', 'config') +const userInfo = loadState('calendar', 'userInfo') +const visitorInfo = loadState('calendar', 'visitorInfo', { + displayName: '', + email: '', +}) + +export default new Vue({ + el: '#appointment-booking', + render: h => h(Booking, { + props: { + config, + userInfo, + visitorInfo, + }, + }), +}) diff --git a/src/appointments/main-confirmation.js b/src/appointments/main-confirmation.js new file mode 100644 index 0000000000..0f56ca6e7d --- /dev/null +++ b/src/appointments/main-confirmation.js @@ -0,0 +1,54 @@ +/** + * @copyright 2021 Christoph Wurst + * + * @author 2021 Christoph Wurst + * + * @license AGPL-3.0-or-later + * + * 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 . + * + */ + +import { getRequestToken } from '@nextcloud/auth' +import { loadState } from '@nextcloud/initial-state' +import { linkTo } from '@nextcloud/router' +import { translate, translatePlural } from '@nextcloud/l10n' +import Vue from 'vue' + +import Confirmation from '../views/Appointments/Confirmation.vue' + +// CSP config for webpack dynamic chunk loading +// eslint-disable-next-line +__webpack_nonce__ = btoa(getRequestToken()) + +// Correct the root of the app for chunk loading +// OC.linkTo matches the apps folders +// OC.generateUrl ensure the index.php (or not) +// We do not want the index.php since we're loading files +// eslint-disable-next-line +__webpack_public_path__ = linkTo('calendar', 'js/') + +Vue.prototype.$t = translate +Vue.prototype.$n = translatePlural + +const booking = loadState('calendar', 'booking') + +export default new Vue({ + el: '#appointment-confirmation', + render: h => h(Confirmation, { + props: { + booking, + }, + }), +}) diff --git a/src/appointments/main-conflict.js b/src/appointments/main-conflict.js new file mode 100644 index 0000000000..5f467a310f --- /dev/null +++ b/src/appointments/main-conflict.js @@ -0,0 +1,58 @@ +/** + * @copyright 2021 Christoph Wurst + * + * @author 2021 Christoph Wurst + * + * @license AGPL-3.0-or-later + * + * 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 . + * + */ + +import { getRequestToken } from '@nextcloud/auth' +import { loadState } from '@nextcloud/initial-state' +import { linkTo } from '@nextcloud/router' +import { translate, translatePlural } from '@nextcloud/l10n' +import Vue from 'vue' + +import Conflict from '../views/Appointments/Conflict.vue' + +// CSP config for webpack dynamic chunk loading +// eslint-disable-next-line +__webpack_nonce__ = btoa(getRequestToken()) + +// Correct the root of the app for chunk loading +// OC.linkTo matches the apps folders +// OC.generateUrl ensure the index.php (or not) +// We do not want the index.php since we're loading files +// eslint-disable-next-line +__webpack_public_path__ = linkTo('calendar', 'js/') + +Vue.prototype.$t = translate +Vue.prototype.$n = translatePlural + +const link = loadState('calendar', 'appointment-link') +const booking = loadState('calendar', 'booking') + +export default new Vue({ + el: '#appointment-conflict', + render: h => h(Conflict, { + props: { + link, + confirmed: booking.confirmed, + start: booking.start, + end: booking.end, + }, + }), +}) diff --git a/src/appointments/main-overview.js b/src/appointments/main-overview.js new file mode 100644 index 0000000000..08ea4feb2b --- /dev/null +++ b/src/appointments/main-overview.js @@ -0,0 +1,56 @@ +/** + * @copyright 2021 Christoph Wurst + * + * @author 2021 Christoph Wurst + * + * @license AGPL-3.0-or-later + * + * 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 . + * + */ + +import { getRequestToken } from '@nextcloud/auth' +import { loadState } from '@nextcloud/initial-state' +import { linkTo } from '@nextcloud/router' +import Vue from 'vue' +import { translate, translatePlural } from '@nextcloud/l10n' + +import Overview from '../views/Appointments/Overview.vue' + +// CSP config for webpack dynamic chunk loading +// eslint-disable-next-line +__webpack_nonce__ = btoa(getRequestToken()) + +// Correct the root of the app for chunk loading +// OC.linkTo matches the apps folders +// OC.generateUrl ensure the index.php (or not) +// We do not want the index.php since we're loading files +// eslint-disable-next-line +__webpack_public_path__ = linkTo('calendar', 'js/') + +const configs = loadState('calendar', 'appointmentConfigs') +const userInfo = loadState('calendar', 'userInfo') + +Vue.prototype.$t = translate +Vue.prototype.$n = translatePlural + +export default new Vue({ + el: '#appointments-overview', + render: h => h(Overview, { + props: { + configs, + userInfo, + }, + }), +}) diff --git a/src/assets/iconfont/README.md b/src/assets/iconfont/README.md deleted file mode 100644 index de33fa284c..0000000000 --- a/src/assets/iconfont/README.md +++ /dev/null @@ -1,24 +0,0 @@ -# Automated icons font builder - If you want to use an icon as a background on the components you need to use this tool. - - 1. Put any 16x16 icon in this folder with a proper filename - 2. On your component scss import the font scss: `@import '~Fonts/scss/iconfont-vue';` - 3. On your scss rule, use the `iconfont` mixin: - ``` scss - .icon-test { - @include iconfont('arrow-right-double'); - } - ``` - - # Results - - Your scss selector will now use the `:before` pseudo-element with the unicode content matching your icon. - ``` scss - .icon-test:before { - font-family: 'iconfont-vue'; - font-style: normal; - font-weight: 400; - content: "\EA03"; - } - ``` - - - The font will automatically be embeded on the library. diff --git a/src/assets/iconfont/checkbox-checked.svg b/src/assets/iconfont/checkbox-checked.svg deleted file mode 100644 index d117d4d0cd..0000000000 --- a/src/assets/iconfont/checkbox-checked.svg +++ /dev/null @@ -1 +0,0 @@ - diff --git a/src/assets/iconfont/checkbox.svg b/src/assets/iconfont/checkbox.svg deleted file mode 100644 index f8fa06a88b..0000000000 --- a/src/assets/iconfont/checkbox.svg +++ /dev/null @@ -1 +0,0 @@ - diff --git a/src/components/AppNavigation/AppNavigationHeader.vue b/src/components/AppNavigation/AppNavigationHeader.vue index f573f55daf..b29c3ae5a7 100644 --- a/src/components/AppNavigation/AppNavigationHeader.vue +++ b/src/components/AppNavigation/AppNavigationHeader.vue @@ -2,7 +2,7 @@ - @copyright Copyright (c) 2019 Georg Ehrke - @author Georg Ehrke - - - @license GNU AGPL version 3 or any later version + - @license AGPL-3.0-or-later - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU Affero General Public License as diff --git a/src/components/AppNavigation/AppNavigationHeader/AppNavigationHeaderDatePicker.vue b/src/components/AppNavigation/AppNavigationHeader/AppNavigationHeaderDatePicker.vue index eeaff526e6..b0eef12907 100644 --- a/src/components/AppNavigation/AppNavigationHeader/AppNavigationHeaderDatePicker.vue +++ b/src/components/AppNavigation/AppNavigationHeader/AppNavigationHeaderDatePicker.vue @@ -3,7 +3,7 @@ - - @author Georg Ehrke - - - @license GNU AGPL version 3 or any later version + - @license AGPL-3.0-or-later - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU Affero General Public License as @@ -22,36 +22,39 @@
- - +
@@ -62,18 +65,24 @@ import { modifyDate, } from '../../../utils/date.js' import { mapState } from 'vuex' -import formatDateRage from '../../../filters/dateRangeFormat.js' +import formatDateRange from '../../../filters/dateRangeFormat.js' import DatePicker from '../../Shared/DatePicker.vue' +import ChevronLeftIcon from 'vue-material-design-icons/ChevronLeft.vue' +import ChevronRightIcon from 'vue-material-design-icons/ChevronRight.vue' +import { NcButton } from '@nextcloud/vue' export default { name: 'AppNavigationHeaderDatePicker', components: { DatePicker, + ChevronLeftIcon, + ChevronRightIcon, + NcButton, }, filters: { - formatDateRage, + formatDateRange, }, - data: function() { + data() { return { isDatepickerOpen: false, } @@ -83,7 +92,7 @@ export default { locale: (state) => state.settings.momentLocale, }), selectedDate() { - return getDateFromFirstdayParam(this.$route.params.firstDay) + return getDateFromFirstdayParam(this.$route.params?.firstDay ?? 'now') }, previousShortKeyConf() { return { @@ -99,6 +108,9 @@ export default { case 'timeGridWeek': return this.$t('calendar', 'Previous week') + case 'multiMonthYear': + return this.$t('calendar', 'Previous year') + case 'dayGridMonth': default: return this.$t('calendar', 'Previous month') @@ -118,6 +130,9 @@ export default { case 'timeGridWeek': return this.$t('calendar', 'Next week') + case 'multiMonthYear': + return this.$t('calendar', 'Next year') + case 'dayGridMonth': default: return this.$t('calendar', 'Next month') @@ -150,6 +165,12 @@ export default { }) break + case 'multiMonthYear': + newDate = modifyDate(this.selectedDate, { + year: factor, + }) + break + case 'dayGridMonth': case 'listMonth': default: { diff --git a/src/components/AppNavigation/AppNavigationHeader/AppNavigationHeaderNewEvent.vue b/src/components/AppNavigation/AppNavigationHeader/AppNavigationHeaderNewEvent.vue index 1e6f505df9..aac057807a 100644 --- a/src/components/AppNavigation/AppNavigationHeader/AppNavigationHeaderNewEvent.vue +++ b/src/components/AppNavigation/AppNavigationHeader/AppNavigationHeaderNewEvent.vue @@ -3,7 +3,7 @@ - - @author Georg Ehrke - - - @license GNU AGPL version 3 or any later version + - @license AGPL-3.0-or-later - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU Affero General Public License as @@ -21,25 +21,48 @@ --> + + diff --git a/src/components/AppNavigation/AppNavigationHeader/AppNavigationHeaderTodayButton.vue b/src/components/AppNavigation/AppNavigationHeader/AppNavigationHeaderTodayButton.vue index 6a5e34343e..45f1687bcd 100644 --- a/src/components/AppNavigation/AppNavigationHeader/AppNavigationHeaderTodayButton.vue +++ b/src/components/AppNavigation/AppNavigationHeader/AppNavigationHeaderTodayButton.vue @@ -3,7 +3,7 @@ - - @author Georg Ehrke - - - @license GNU AGPL version 3 or any later version + - @license AGPL-3.0-or-later - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU Affero General Public License as @@ -21,26 +21,21 @@ --> diff --git a/src/components/AppNavigation/AppointmentConfigList/AppointmentConfigListItem.vue b/src/components/AppNavigation/AppointmentConfigList/AppointmentConfigListItem.vue new file mode 100644 index 0000000000..d8dcbe8dca --- /dev/null +++ b/src/components/AppNavigation/AppointmentConfigList/AppointmentConfigListItem.vue @@ -0,0 +1,122 @@ + + + + + diff --git a/src/components/AppNavigation/CalendarList.vue b/src/components/AppNavigation/CalendarList.vue index 7f81e25562..f49e403fd6 100644 --- a/src/components/AppNavigation/CalendarList.vue +++ b/src/components/AppNavigation/CalendarList.vue @@ -2,7 +2,7 @@ - @copyright Copyright (c) 2019 Georg Ehrke - @author Georg Ehrke - - - @license GNU AGPL version 3 or any later version + - @license AGPL-3.0-or-later - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU Affero General Public License as @@ -20,28 +20,26 @@ --> diff --git a/src/components/AppNavigation/CalendarList/CalendarListItem.vue b/src/components/AppNavigation/CalendarList/CalendarListItem.vue index bdcc825e59..4b8a0421bb 100644 --- a/src/components/AppNavigation/CalendarList/CalendarListItem.vue +++ b/src/components/AppNavigation/CalendarList/CalendarListItem.vue @@ -1,8 +1,10 @@